From: <fr...@us...> - 2009-01-24 13:22:44
|
Revision: 2566 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=2566&view=rev Author: framug Date: 2009-01-24 12:16:06 +0000 (Sat, 24 Jan 2009) Log Message: ----------- MultiShortcut V 1.2. - Ability to launch up to 3 programs in the same shortcut. - New Config Form design. - More Controls in Config. - Rewrite code for more readability. - Updated doc. Modified Paths: -------------- trunk/plugins/MultiShortcut/DLLFix/DLLFix.csproj trunk/plugins/MultiShortcut/MultiButton.sln trunk/plugins/MultiShortcut/MultiShortcut/Config.Designer.cs trunk/plugins/MultiShortcut/MultiShortcut/Language/strings_de.xml trunk/plugins/MultiShortcut/MultiShortcut/Language/strings_en.xml trunk/plugins/MultiShortcut/MultiShortcut/Language/strings_fr.xml trunk/plugins/MultiShortcut/MultiShortcut/LocalizeStrings.cs trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut readme how to.doc trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.cs trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.csproj trunk/plugins/MultiShortcut/MultiShortcut/Properties/AssemblyInfo.cs trunk/plugins/MultiShortcut/TestServer/TestServer.csproj Modified: trunk/plugins/MultiShortcut/DLLFix/DLLFix.csproj =================================================================== --- trunk/plugins/MultiShortcut/DLLFix/DLLFix.csproj 2009-01-24 09:46:33 UTC (rev 2565) +++ trunk/plugins/MultiShortcut/DLLFix/DLLFix.csproj 2009-01-24 12:16:06 UTC (rev 2566) @@ -1,8 +1,8 @@ -<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> +<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5"> <PropertyGroup> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> - <ProductVersion>8.0.50727</ProductVersion> + <ProductVersion>9.0.21022</ProductVersion> <SchemaVersion>2.0</SchemaVersion> <ProjectGuid>{8EDA7E5D-E56B-486E-BFB3-DB3A47733E39}</ProjectGuid> <OutputType>Exe</OutputType> @@ -10,6 +10,11 @@ <RootNamespace>DLLFix</RootNamespace> <AssemblyName>DLLFix</AssemblyName> <ApplicationIcon>DLLFix.ico</ApplicationIcon> + <FileUpgradeFlags> + </FileUpgradeFlags> + <OldToolsVersion>2.0</OldToolsVersion> + <UpgradeBackupLocation> + </UpgradeBackupLocation> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> <DebugSymbols>true</DebugSymbols> @@ -29,7 +34,7 @@ <WarningLevel>4</WarningLevel> </PropertyGroup> <ItemGroup> - <Reference Include="Core, Version=0.9.3.29272, Culture=neutral, processorArchitecture=MSIL"> + <Reference Include="Core, Version=1.0.0.17220, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> <HintPath>..\..\..\MediaPortal\xbmc\bin\Release\Core.dll</HintPath> <Private>False</Private> Modified: trunk/plugins/MultiShortcut/MultiButton.sln =================================================================== --- trunk/plugins/MultiShortcut/MultiButton.sln 2009-01-24 09:46:33 UTC (rev 2565) +++ trunk/plugins/MultiShortcut/MultiButton.sln 2009-01-24 12:16:06 UTC (rev 2566) @@ -1,6 +1,6 @@ -Microsoft Visual Studio Solution File, Format Version 9.00 -# Visual Studio 2005 +Microsoft Visual Studio Solution File, Format Version 10.00 +# Visual Studio 2008 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestServer", "TestServer\TestServer.csproj", "{D2159E0B-44FA-41D8-B701-081D2C931CC0}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MultiShortcut", "MultiShortcut\MultiShortcut.csproj", "{7CBDA33F-E11F-400B-8B3F-ABB0B54462AC}" Modified: trunk/plugins/MultiShortcut/MultiShortcut/Config.Designer.cs =================================================================== --- trunk/plugins/MultiShortcut/MultiShortcut/Config.Designer.cs 2009-01-24 09:46:33 UTC (rev 2565) +++ trunk/plugins/MultiShortcut/MultiShortcut/Config.Designer.cs 2009-01-24 12:16:06 UTC (rev 2566) @@ -32,6 +32,8 @@ this.propertyGrid1 = new System.Windows.Forms.PropertyGrid(); this.button1 = new System.Windows.Forms.Button(); this.button2 = new System.Windows.Forms.Button(); + this.LibVersion = new System.Windows.Forms.Label(); + this.VarVersion = new System.Windows.Forms.Label(); this.SuspendLayout(); // // propertyGrid1 @@ -39,7 +41,8 @@ this.propertyGrid1.HelpVisible = false; this.propertyGrid1.Location = new System.Drawing.Point(12, 12); this.propertyGrid1.Name = "propertyGrid1"; - this.propertyGrid1.Size = new System.Drawing.Size(270, 383); + this.propertyGrid1.PropertySort = System.Windows.Forms.PropertySort.Categorized; + this.propertyGrid1.Size = new System.Drawing.Size(290, 371); this.propertyGrid1.TabIndex = 0; this.propertyGrid1.ToolbarVisible = false; // @@ -63,23 +66,48 @@ this.button2.Text = "Cancel"; this.button2.UseVisualStyleBackColor = true; // + // LibVersion + // + this.LibVersion.AutoSize = true; + this.LibVersion.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.LibVersion.Location = new System.Drawing.Point(12, 406); + this.LibVersion.Name = "LibVersion"; + this.LibVersion.Size = new System.Drawing.Size(57, 13); + this.LibVersion.TabIndex = 11; + this.LibVersion.Text = "Version :"; + // + // VarVersion + // + this.VarVersion.AutoSize = true; + this.VarVersion.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.VarVersion.Location = new System.Drawing.Point(66, 406); + this.VarVersion.Name = "VarVersion"; + this.VarVersion.Size = new System.Drawing.Size(25, 13); + this.VarVersion.TabIndex = 16; + this.VarVersion.Text = "ver"; + // // Config // this.AcceptButton = this.button1; - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; this.AutoSize = true; this.CancelButton = this.button2; - this.ClientSize = new System.Drawing.Size(295, 434); + this.ClientSize = new System.Drawing.Size(315, 434); this.ControlBox = false; + this.Controls.Add(this.VarVersion); + this.Controls.Add(this.LibVersion); this.Controls.Add(this.button2); this.Controls.Add(this.button1); this.Controls.Add(this.propertyGrid1); - this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D; this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MaximizeBox = false; + this.MinimizeBox = false; this.Name = "Config"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; this.Text = "MultiShortcut Configuration"; this.ResumeLayout(false); + this.PerformLayout(); } @@ -88,5 +116,7 @@ private System.Windows.Forms.PropertyGrid propertyGrid1; public System.Windows.Forms.Button button1; public System.Windows.Forms.Button button2; + private System.Windows.Forms.Label LibVersion; + public System.Windows.Forms.Label VarVersion; } } \ No newline at end of file Modified: trunk/plugins/MultiShortcut/MultiShortcut/Language/strings_de.xml =================================================================== --- trunk/plugins/MultiShortcut/MultiShortcut/Language/strings_de.xml 2009-01-24 09:46:33 UTC (rev 2565) +++ trunk/plugins/MultiShortcut/MultiShortcut/Language/strings_de.xml 2009-01-24 12:16:06 UTC (rev 2566) @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8"?> <Language name="German" characters="255"> <Section name="unmapped"> - <String id="0">Anwendung</String> + <String id="0">Anwendung 2</String> <String id="1">Ausführungsdatei</String> <String id="2">Argumente</String> <String id="3">Verstecke MP während der Ausführung</String> @@ -10,8 +10,8 @@ <String id="6">ButtonBilddatei</String> <String id="7">ButtonBilddateiFokus</String> <String id="8">ButtonBeschriftung</String> - <String id="9">Plugin ID</String> - <String id="10">PluginID</String> + <String id="9">General</String> + <String id="10">Plugin ID</String> <String id="11">MultiShortcut Konfiguration</String> <String id="12">Button in Home-Menü einfügen (dynamische oder statische id !)</String> <String id="13">Speichern</String> @@ -24,5 +24,10 @@ <String id="20">Verzeichnis</String> <String id="21">Verzeichnis existiert nicht : </String> <String id="22">Verwende virtuelles Keyboard</String> + <String id="23">Anwendung 1</String> + <String id="24">Anwendung 3</String> + <String id="25">Ausführungsdatei existiert nicht : </String> + <String id="26">You have to fill at least one ExeFile !</String> + <String id="27">Virtual Directory should not be true if no exefile filled !</String> </Section> </Language> \ No newline at end of file Modified: trunk/plugins/MultiShortcut/MultiShortcut/Language/strings_en.xml =================================================================== --- trunk/plugins/MultiShortcut/MultiShortcut/Language/strings_en.xml 2009-01-24 09:46:33 UTC (rev 2565) +++ trunk/plugins/MultiShortcut/MultiShortcut/Language/strings_en.xml 2009-01-24 12:16:06 UTC (rev 2566) @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8"?> <Language name="English" characters="255"> <Section name="unmapped"> - <String id="0">Program</String> + <String id="0">Program 2</String> <String id="1">Exefile</String> <String id="2">Arguments</String> <String id="3">HideMPWhileExecuting</String> @@ -10,8 +10,8 @@ <String id="6">ButtonImage</String> <String id="7">ButtonImageFocus</String> <String id="8">ButtonCaption</String> - <String id="9">Plugin ID</String> - <String id="10">PluginID</String> + <String id="9">General</String> + <String id="10">Plugin ID</String> <String id="11">MultiShortcut Configuration</String> <String id="12">Adds button to homepage (dynamic id or static id !)</String> <String id="13">Save</String> @@ -24,5 +24,10 @@ <String id="20">Directory</String> <String id="21">Directory doesn't exist : </String> <String id="22">Use Virtual Keyboard</String> + <String id="23">Program 1</String> + <String id="24">Program 3</String> + <String id="25">ExeFile doesn't exist : </String> + <String id="26">You have to fill at least one ExeFile !</String> + <String id="27">Virtual Directory should not be true if no exefile filled !</String> </Section> </Language> \ No newline at end of file Modified: trunk/plugins/MultiShortcut/MultiShortcut/Language/strings_fr.xml =================================================================== --- trunk/plugins/MultiShortcut/MultiShortcut/Language/strings_fr.xml 2009-01-24 09:46:33 UTC (rev 2565) +++ trunk/plugins/MultiShortcut/MultiShortcut/Language/strings_fr.xml 2009-01-24 12:16:06 UTC (rev 2566) @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8"?> <Language name="French" characters="255"> <Section name="unmapped"> - <String id="0">Programme</String> + <String id="0">Programme 2</String> <String id="1">Fichier executable</String> <String id="2">Arguments</String> <String id="3">MediaPortal dans barre de tache</String> @@ -10,8 +10,8 @@ <String id="6">Bouton de l'image</String> <String id="7">Focus du bouton de l'image</String> <String id="8">Légende du bouton</String> - <String id="9">Identifiant du plugin</String> - <String id="10">Numéro du plugin</String> + <String id="9">Général</String> + <String id="10">Identifiant du plugin</String> <String id="11">Configuration de MultiShortcut</String> <String id="12">Ajoute des boutons sur l'écran d'accueil (id dynamiques ou id statiques !)</String> <String id="13">Sauver</String> @@ -24,5 +24,10 @@ <String id="20">Répertoire</String> <String id="21">Le répertoire n'existe pas : </String> <String id="22">Utiliser le clavier virtuel</String> + <String id="23">Programme 1</String> + <String id="24">Programme 3</String> + <String id="25">Le Fichier executable n'existe pas : </String> + <String id="26">Vous devez renseigner au mons un Fichier executable !</String> + <String id="27">Le clavier virtuel ne devrait pas être positionné sans fichier executable renseigné !</String> </Section> </Language> \ No newline at end of file Modified: trunk/plugins/MultiShortcut/MultiShortcut/LocalizeStrings.cs =================================================================== --- trunk/plugins/MultiShortcut/MultiShortcut/LocalizeStrings.cs 2009-01-24 09:46:33 UTC (rev 2565) +++ trunk/plugins/MultiShortcut/MultiShortcut/LocalizeStrings.cs 2009-01-24 12:16:06 UTC (rev 2566) @@ -130,6 +130,18 @@ /// Directory doesn't exist /// </summary> msgbox3 = 21, + /// <summary> + /// ExeFile doesn't exist + /// </summary> + msgbox4 = 25, + /// <summary> + /// You have to fill at least one ExeFile + /// </summary> + msgbox5 = 26, + /// <summary> + /// Virtual Directory should not be true if no exefile filled + /// </summary> + msgbox6 = 27 } Modified: trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut readme how to.doc =================================================================== (Binary files differ) Modified: trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.cs =================================================================== --- trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.cs 2009-01-24 09:46:33 UTC (rev 2565) +++ trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.cs 2009-01-24 12:16:06 UTC (rev 2566) @@ -1,7 +1,7 @@ -#region Copyright (C) 2005-2007 Team MediaPortal +#region Copyright (C) 2005-today Team MediaPortal /* - * Copyright (C) 2005-2007 Team MediaPortal + * Copyright (C) 2005-today Team MediaPortal * http://www.team-mediaportal.com * * This Program is free software; you can redistribute it and/or modify @@ -22,6 +22,8 @@ */ #endregion + +#region using using System; using System.Collections.Generic; using System.Text; @@ -30,40 +32,61 @@ using System.IO; using System.Runtime.InteropServices; using System.Threading; -using System.Windows.Forms; //fmu +using System.Windows.Forms; using System.ComponentModel; using MediaPortal.GUI.Library; using MediaPortal.Dialogs; -//using MediaPortal.Util; +#endregion namespace MediaPortal.MultiShortcut { - public class MultiShortcut: GUIWindow, ISetupForm, IShowPlugin + public class MultiShortcut : GUIWindow, ISetupForm, IShowPlugin { - #region ISetupForm Members + #region Declarations + // General protected internal int m_ID = -1; - protected internal string m_Name = String.Empty; + protected internal bool m_HandleMPWindow = false; + // Homescreen + protected internal string m_Caption = String.Empty; + protected internal string m_ButtonImg = String.Empty; + protected internal string m_ButtonImgF = String.Empty; + protected internal string m_Picture = String.Empty; + + // Pre-Processing + protected internal string m_PreDirectory = String.Empty; + protected internal string m_PreExeFile = String.Empty; + protected internal string m_PreArguments = String.Empty; + protected internal bool m_PreUseVirtualKeyboard = false; + + // Program + protected internal string m_Directory; protected internal string m_ExeFile = String.Empty; - protected internal string m_ProgFile = String.Empty; protected internal string m_Arguments = String.Empty; - - protected internal string m_Picture = String.Empty; - protected internal string m_ButtonImg = String.Empty; - protected internal string m_ButtonImgF = String.Empty; - protected internal string m_Caption = String.Empty; - protected internal bool m_HandleMPWindow = false; - protected internal string m_Directory = String.Empty; protected internal bool m_UseVirtualKeyboard = false; + // Post-Processing + protected internal string m_PostDirectory = String.Empty; + protected internal string m_PostExeFile = String.Empty; + protected internal string m_PostArguments = String.Empty; + protected internal bool m_PostUseVirtualKeyboard = false; + + // Common + protected internal string m_Name = String.Empty; + protected internal string m_ProgFile = String.Empty; + int m_MP_WindowHWND = 0; XmlConfig XmlConfig = new XmlConfig(); string _PluginLangFile = string.Empty; bool _PluginLangFileExist = false; + bool _MPWindowHidden = false; + #endregion + + #region ISetupForm Members public MultiShortcut() { m_Name = System.Reflection.Assembly.GetExecutingAssembly().Location; @@ -76,19 +99,26 @@ m_ID = FindID(ref m_Name); } - //fmu using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings("MultiShortcut.xml")) using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(MediaPortal.Configuration.Config.GetFile(MediaPortal.Configuration.Config.Dir.Config, "MultiShortcut.xml"))) { - m_ExeFile = xmlreader.GetValueAsString(m_Name, "exefile", string.Empty); - m_Arguments = xmlreader.GetValueAsString(m_Name, "arguments", string.Empty); - m_Picture = xmlreader.GetValueAsString(m_Name, "picture", string.Empty); + m_ID = xmlreader.GetValueAsInt(m_Name, "pluginid", -1); + m_HandleMPWindow = xmlreader.GetValueAsInt(m_Name, "handlempwindow", 1) == 0; + m_Caption = xmlreader.GetValueAsString(m_Name, "caption", string.Empty); m_ButtonImg = xmlreader.GetValueAsString(m_Name, "buttonimage", string.Empty); m_ButtonImgF = xmlreader.GetValueAsString(m_Name, "buttonimagefocus", string.Empty); - m_Caption = xmlreader.GetValueAsString(m_Name, "caption", string.Empty); - m_ID = xmlreader.GetValueAsInt(m_Name, "pluginid", -1); - m_HandleMPWindow = xmlreader.GetValueAsInt(m_Name, "handlempwindow", 1) == 0; + m_Picture = xmlreader.GetValueAsString(m_Name, "picture", string.Empty); + m_PreDirectory = xmlreader.GetValueAsString(m_Name, "PreDirectory", string.Empty); + m_PreExeFile = xmlreader.GetValueAsString(m_Name, "PreExefile", string.Empty); + m_PreArguments = xmlreader.GetValueAsString(m_Name, "PreArguments", string.Empty); + m_PreUseVirtualKeyboard = xmlreader.GetValueAsBool(m_Name, "PreUseVirtualKeyboard", false); m_Directory = xmlreader.GetValueAsString(m_Name, "directory", string.Empty); + m_ExeFile = xmlreader.GetValueAsString(m_Name, "exefile", string.Empty); + m_Arguments = xmlreader.GetValueAsString(m_Name, "arguments", string.Empty); m_UseVirtualKeyboard = xmlreader.GetValueAsBool(m_Name, "UseVirtualKeyboard", false); + m_PostDirectory = xmlreader.GetValueAsString(m_Name, "PostDirectory", string.Empty); + m_PostExeFile = xmlreader.GetValueAsString(m_Name, "PostExefile", string.Empty); + m_PostArguments = xmlreader.GetValueAsString(m_Name, "PostArguments", string.Empty); + m_PostUseVirtualKeyboard = xmlreader.GetValueAsBool(m_Name, "PostUseVirtualKeyboard", false); if (m_ExeFile.Length > 0) { @@ -112,11 +142,11 @@ Random rd = new Random((int)DateTime.Now.Ticks); int id = rd.Next(1000, 9000); - while (IsInList(lst, id)) id = rd.Next(1000,9000); + while (IsInList(lst, id)) id = rd.Next(1000, 9000); m_ID = id; -//fmu need to store pluginid here to avoid a new random and grant static ID (saved only when hit OK on MP main Config) + // need to store pluginid here to avoid a new random and grant static ID (saved only when hit OK on MP main Config) using (MediaPortal.Profile.Settings xmlwrite = new MediaPortal.Profile.Settings(MediaPortal.Configuration.Config.GetFile(MediaPortal.Configuration.Config.Dir.Config, "MultiShortcut.xml"))) { xmlwrite.SetValue(m_Name, "pluginid", m_ID); @@ -129,14 +159,14 @@ if (_PluginLangFileExist) { MediaPortal.Profile.Settings s = new MediaPortal.Profile.Settings(MediaPortal.Configuration.Config.GetFile(MediaPortal.Configuration.Config.Dir.Config, "MediaPortal.xml")); - string strLanguage = s.GetValueAsString("skin", "language", "English"); + string strLanguage = s.GetValueAsString("skin", "language", "English"); LocalizeStrings.Load(strLanguage); } } private bool IsInList(List<int> lst, int id) { - foreach(int i in lst) + foreach (int i in lst) if (i == id) return true; return false; @@ -157,7 +187,6 @@ } catch (Exception e) { -//fmu Log.Write(e); Log.Error(e); return -1; } @@ -228,48 +257,67 @@ Config cf = new Config(); cf.SetPropertyGrid(new ConfigWrapper(this)); - //fmu Initialize labels with translated xml values + // Initialize labels with translated xml values cf.Text = LocalizeStrings.Get((int)LocalizedMessages.SetupFormName); cf.button1.Text = LocalizeStrings.Get((int)LocalizedMessages.btn1); cf.button2.Text = LocalizeStrings.Get((int)LocalizedMessages.btn2); + // Display Plugin Version + cf.VarVersion.Text = Assembly.GetExecutingAssembly().GetName().Version.ToString(); + cf.VarVersion.Text = cf.VarVersion.Text.Substring(0, 3); if (cf.ShowDialog() == System.Windows.Forms.DialogResult.OK) { - //fmu add control for Picture Name and Directory - if (ControlPictureName() && ControlDirectory()) + // add control for Picture Name and Directory + if (ControlPictureName() && ControlDirectory() && ControlExefile() && ControlVirtualDirectory()) { -//fmu case when hit Save on MultiShortcut plugin and hit Cancel on MP main config -// Then, I'm sure Config is saved. - XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "exefile", m_ExeFile); - XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "arguments", m_Arguments); - XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "picture", m_Picture); + // case when hit Save on MultiShortcut plugin and hit Cancel on MP main config + // Then, I'm sure Config is saved. + XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "pluginid", m_ID); + XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "handlempwindow", m_HandleMPWindow ? 0 : 1); + XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "caption", m_Caption); XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "buttonimage", m_ButtonImg); XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "buttonimagefocus", m_ButtonImgF); - XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "caption", m_Caption); - XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "pluginid", m_ID); - XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "handlempwindow", m_HandleMPWindow ? 0 : 1); + XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "picture", m_Picture); + XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "PreDirectory", m_PreDirectory); + XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "PreExefile", m_PreExeFile); + XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "PreArguments", m_PreArguments); + XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "PreUseVirtualKeyboard", m_PreUseVirtualKeyboard); XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "directory", m_Directory); + XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "exefile", m_ExeFile); + XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "arguments", m_Arguments); XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "UseVirtualKeyboard", m_UseVirtualKeyboard); - -//fmu case when hit Save on MultiShortcut plugin and hit Save on MP main config. -// In this case, pluginid is stored before (for static ID) with MP xmlwrite. -// MultiShortcut.xml created with XmlConfig is erased by pluginid when hit Save on MP main config -// (at least, the first time Config is saved). -// That's why store with MP xmlwrite is needed for all variables. + XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "PostDirectory", m_PostDirectory); + XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "PostExefile", m_PostExeFile); + XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "PostArguments", m_PostArguments); + XmlConfig.WriteXmlConfig("MultiShortcut", m_Name, "PostUseVirtualKeyboard", m_PostUseVirtualKeyboard); + + // case when hit Save on MultiShortcut plugin and hit Save on MP main config. + // In this case, pluginid is stored before (for static ID) with MP xmlwrite. + // MultiShortcut.xml created with XmlConfig is erased by pluginid when hit Save on MP main config + // (at least, the first time Config is saved). + // That's why store with MP xmlwrite is needed for all variables. using (MediaPortal.Profile.Settings xmlwrite = new MediaPortal.Profile.Settings(MediaPortal.Configuration.Config.GetFile(MediaPortal.Configuration.Config.Dir.Config, "MultiShortcut.xml"))) { - xmlwrite.SetValue(m_Name, "exefile", m_ExeFile); - xmlwrite.SetValue(m_Name, "arguments", m_Arguments); - xmlwrite.SetValue(m_Name, "picture", m_Picture); - xmlwrite.SetValue(m_Name, "buttonimage", m_ButtonImg); - xmlwrite.SetValue(m_Name, "buttonimagefocus", m_ButtonImgF); - xmlwrite.SetValue(m_Name, "caption", m_Caption); - xmlwrite.SetValue(m_Name, "pluginid", m_ID); - xmlwrite.SetValue(m_Name, "handlempwindow", m_HandleMPWindow ? 0 : 1); - xmlwrite.SetValue(m_Name, "directory", m_Directory); - xmlwrite.SetValueAsBool(m_Name, "UseVirtualKeyboard", m_UseVirtualKeyboard); - } - } + xmlwrite.SetValue(m_Name, "pluginid", m_ID); + xmlwrite.SetValue(m_Name, "handlempwindow", m_HandleMPWindow ? 0 : 1); + xmlwrite.SetValue(m_Name, "caption", m_Caption); + xmlwrite.SetValue(m_Name, "buttonimage", m_ButtonImg); + xmlwrite.SetValue(m_Name, "buttonimagefocus", m_ButtonImgF); + xmlwrite.SetValue(m_Name, "picture", m_Picture); + xmlwrite.SetValue(m_Name, "PreDirectory", m_PreDirectory); + xmlwrite.SetValue(m_Name, "PreExefile", m_PreExeFile); + xmlwrite.SetValue(m_Name, "PreArguments", m_PreArguments); + xmlwrite.SetValueAsBool(m_Name, "PreUseVirtualKeyboard", m_PreUseVirtualKeyboard); + xmlwrite.SetValue(m_Name, "directory", m_Directory); + xmlwrite.SetValue(m_Name, "exefile", m_ExeFile); + xmlwrite.SetValue(m_Name, "arguments", m_Arguments); + xmlwrite.SetValueAsBool(m_Name, "UseVirtualKeyboard", m_UseVirtualKeyboard); + xmlwrite.SetValue(m_Name, "PostDirectory", m_PostDirectory); + xmlwrite.SetValue(m_Name, "PostExefile", m_PostExeFile); + xmlwrite.SetValue(m_Name, "PostArguments", m_PostArguments); + xmlwrite.SetValueAsBool(m_Name, "PostUseVirtualKeyboard", m_PostUseVirtualKeyboard); + } + } else { ShowPlugin(); @@ -277,7 +325,7 @@ } } - //fmu Controls for Picture Name + // Controls for Picture Name public bool ControlPictureName() { // If user wrote Picture Name then must begin with "hover_" @@ -286,15 +334,14 @@ int length_picture = m_Picture.Length; if (length_picture < 6 || m_Picture.Substring(0, 6) != "hover_") { -// MessageBox.Show("Picture name must begin with \"hover_\""); + // MessageBox.Show("Picture name must begin with \"hover_\""); MessageBox.Show(LocalizeStrings.Get((int)LocalizedMessages.msgbox1)); return false; } // Need to know what is the used skin -//fmu MediaPortal.Profile.Settings s = new MediaPortal.Profile.Settings("MediaPortal.xml"); MediaPortal.Profile.Settings s = new MediaPortal.Profile.Settings(MediaPortal.Configuration.Config.GetFile(MediaPortal.Configuration.Config.Dir.Config, "MediaPortal.xml")); - string skin_name = s.GetValueAsString("skin", "name", string.Empty); - /* Need to know where is MP installed (running) because we don't have it in MediaPortal.xml */ + string skin_name = s.GetValueAsString("skin", "name", string.Empty); + /* Need to know where is MP installed (running) because we don't have it in MediaPortal.xml */ string picture_path = AppDomain.CurrentDomain.BaseDirectory + @"skin\" + skin_name + @"\Media\" + m_Picture; // if user didn't write .png extension, we add it automatically @@ -306,33 +353,84 @@ // PNG file exist ? if (!System.IO.File.Exists(picture_path)) { -// MessageBox.Show("PNG File not found : " + picture_path); + // MessageBox.Show("PNG File not found : " + picture_path); MessageBox.Show(LocalizeStrings.Get((int)LocalizedMessages.msgbox2) + picture_path); return false; } } - return true; + return true; } - //fmu Controls for Change Directory + // Controls for Directory public bool ControlDirectory() { // If user wrote a Directory then, I control Directory exist - if (m_Directory != String.Empty) + if (m_PreDirectory != String.Empty && !Directory.Exists(m_PreDirectory)) { - if (System.IO.Directory.Exists(m_Directory)) - { - return true; - } - else - { - MessageBox.Show(LocalizeStrings.Get((int)LocalizedMessages.msgbox3) + m_Directory); - return false; - } + MessageBox.Show(LocalizeStrings.Get((int)LocalizedMessages.msgbox3) + m_PreDirectory); + return false; } + + if (m_Directory != String.Empty && !Directory.Exists(m_Directory)) + { + MessageBox.Show(LocalizeStrings.Get((int)LocalizedMessages.msgbox3) + m_Directory); + return false; + } + + if (m_PostDirectory != String.Empty && !Directory.Exists(m_PostDirectory)) + { + MessageBox.Show(LocalizeStrings.Get((int)LocalizedMessages.msgbox3) + m_PostDirectory); + return false; + } + return true; } + // Controls for Exefile + public bool ControlExefile() + { + // user must choose at least one Exefile + if (m_PreExeFile.Length == 0 && m_ExeFile.Length == 0 && m_PostExeFile.Length == 0) + { + MessageBox.Show(LocalizeStrings.Get((int)LocalizedMessages.msgbox5)); + return false; + } + + // If user wrote an Exefile then, I control Exefile exist + if (m_PreExeFile != String.Empty && !File.Exists(m_PreExeFile)) + { + MessageBox.Show(LocalizeStrings.Get((int)LocalizedMessages.msgbox4) + m_PreExeFile); + return false; + } + + if (m_ExeFile != String.Empty && !File.Exists(m_ExeFile)) + { + MessageBox.Show(LocalizeStrings.Get((int)LocalizedMessages.msgbox4) + m_ExeFile); + return false; + } + + if (m_PostExeFile != String.Empty && !File.Exists(m_PostExeFile)) + { + MessageBox.Show(LocalizeStrings.Get((int)LocalizedMessages.msgbox4) + m_PostExeFile); + return false; + } + + return true; + } + + // Controls for Virtual Directory + public bool ControlVirtualDirectory() + { + // Virtual Directory should not be true if no exefile + if ((m_PreExeFile.Length == 0 && m_PreUseVirtualKeyboard) || (m_ExeFile.Length == 0 && m_UseVirtualKeyboard) || (m_PostExeFile.Length == 0 && m_PostUseVirtualKeyboard)) + { + MessageBox.Show(LocalizeStrings.Get((int)LocalizedMessages.msgbox6)); + return false; + } + + return true; + } + #endregion #region GUIWindow @@ -340,7 +438,7 @@ public override int GetID { get { return m_ID; } - set {} + set { } } public override bool Init() @@ -348,79 +446,95 @@ return false; } + // MP start Windows Plugin protected override void OnPageLoad() { - if (m_ExeFile == string.Empty || !File.Exists(m_ExeFile)) - { - GUIDialogOK dlg = (GUIDialogOK)GUIWindowManager.GetWindow((int)GUIWindow.Window.WINDOW_DIALOG_OK); - dlg.SetHeading("Could not start program !"); - dlg.SetLine(1, String.Format("ConfigSection : [{0}]", m_Name)); - if (_PluginLangFileExist) - { - dlg.SetHeading(LocalizeStrings.Get((int)LocalizedMessages.dlg1)); - dlg.SetLine(1, LocalizeStrings.Get((int)LocalizedMessages.dlg2) + String.Format("{0}", m_Name)); - } + // Virtual Keyboard + m_PreArguments = UseVirtualKeyboard(m_PreUseVirtualKeyboard, m_PreArguments); + m_Arguments = UseVirtualKeyboard(m_UseVirtualKeyboard, m_Arguments); + m_PostArguments = UseVirtualKeyboard(m_PostUseVirtualKeyboard, m_PostArguments); - dlg.DoModal(GUIWindowManager.ActiveWindow); - } - else + // Launch process for programs + RunPrograms(); + + // Go to previous Window + GUIWindowManager.ShowPreviousWindow(); + } + + // use virtual keyboard before Run, if configured + private string UseVirtualKeyboard(bool bUseVirtualKeyboard, string sArguments) + { + if (bUseVirtualKeyboard) { - //fmu set directory before Run if configured - if (m_Directory.Length > 0) + VirtualKeyboard keyboard = (VirtualKeyboard)GUIWindowManager.GetWindow((int)GUIWindow.Window.WINDOW_VIRTUAL_KEYBOARD); + if (keyboard != null) { - Directory.SetCurrentDirectory(m_Directory); - } - //fmu use virtual keyboard before Run if configured - if (m_UseVirtualKeyboard) - { - VirtualKeyboard keyboard = (VirtualKeyboard)GUIWindowManager.GetWindow((int)GUIWindow.Window.WINDOW_VIRTUAL_KEYBOARD); - if (keyboard != null) + keyboard.Reset(); + keyboard.Text = ""; + keyboard.DoModal(GetID); + // do it only if necessary + if (keyboard.IsConfirmed && keyboard.Text.Length > 0) { - keyboard.Reset(); - keyboard.Text = ""; - keyboard.DoModal(GetID); - // do it only if necessary - if (keyboard.IsConfirmed && keyboard.Text.Length > 0) - { - m_Arguments = keyboard.Text; - } + sArguments = keyboard.Text; } } - - RunProgram(m_ExeFile, m_Arguments); } - GUIWindowManager.ShowPreviousWindow(); + return sArguments; } - private void RunProgram(string exeName, string argsLine) + // Method for running programs + private void RunPrograms() { - ProcessStartInfo psI = new ProcessStartInfo(exeName, argsLine); + // Define Process Infos + ProcessStartInfo psI = new ProcessStartInfo(PluginName()); Process newProcess = new Process(); + newProcess.StartInfo.UseShellExecute = true; + newProcess.EnableRaisingEvents = true; + // Pre-Processing + RunProgram(m_PreDirectory, m_PreExeFile, m_PreArguments, newProcess); + + // Execute + RunProgram(m_Directory, m_ExeFile, m_Arguments, newProcess); + + // Post-Processing + RunProgram(m_PostDirectory, m_PostExeFile, m_PostArguments, newProcess); + + // Restore MP Window if needed + newProcess.Exited += new EventHandler(newProcess_Exited); + } + + // Run a program + private void RunProgram(String sDirectory, String sExeFile, String sArguments, Process newProcess) + { + if (sExeFile != String.Empty) + { + SetDirectory(sDirectory); + newProcess.StartInfo.FileName = sExeFile; + newProcess.StartInfo.Arguments = sArguments; + StartProcess(newProcess); + } + } + + // set directory before Start + private void SetDirectory(string sDirectory) + { + if (sDirectory.Length > 0) + { + Directory.SetCurrentDirectory(sDirectory); + } + } + + // Start the Process + private void StartProcess(Process newProcess) + { try { - newProcess.StartInfo.FileName = exeName; - newProcess.StartInfo.Arguments = argsLine; - newProcess.StartInfo.UseShellExecute = true; - newProcess.EnableRaisingEvents = true; if (newProcess.Start()) { - if (m_HandleMPWindow) - { - m_MP_WindowHWND = Win32Wrapper.FindWindow(null, "MediaPortal - "); - if (m_MP_WindowHWND > 0) - { - Win32Wrapper.ShowWindow(m_MP_WindowHWND, Win32Wrapper.SW_HIDE); - /* next two lines not yet need. - Thread.Sleep(2000); - Win32Wrapper.SetWindowPos(newProcess.MainWindowHandle, Win32Wrapper.HWND_TOPMOST, 0, 0, 0, 0, Win32Wrapper.SWP_NOSIZE | Win32Wrapper.SWP_NOMOVE); - */ - newProcess.Exited += new EventHandler(newProcess_Exited); - } - } + HideMPWidow(); } - } catch (Exception e) { @@ -428,9 +542,31 @@ } } + // Hide MP Window + private void HideMPWidow() + { + if (m_HandleMPWindow && !_MPWindowHidden) + { + m_MP_WindowHWND = Win32Wrapper.FindWindow(null, "MediaPortal - "); + if (m_MP_WindowHWND > 0) + { + Win32Wrapper.ShowWindow(m_MP_WindowHWND, Win32Wrapper.SW_HIDE); + _MPWindowHidden = true; + /* next two lines not yet need. + Thread.Sleep(2000); + Win32Wrapper.SetWindowPos(newProcess.MainWindowHandle, Win32Wrapper.HWND_TOPMOST, 0, 0, 0, 0, Win32Wrapper.SWP_NOSIZE | Win32Wrapper.SWP_NOMOVE); + */ + } + } + } + + // Restore MP Window void newProcess_Exited(object sender, EventArgs e) { - Win32Wrapper.ShowWindow(m_MP_WindowHWND, Win32Wrapper.SW_SHOWDEFAULT); + if (_MPWindowHidden) + { + Win32Wrapper.ShowWindow(m_MP_WindowHWND, Win32Wrapper.SW_SHOWDEFAULT); + } } #endregion @@ -445,6 +581,8 @@ #endregion } +#region ConfigWrapper + internal class ConfigWrapper { MultiShortcut m_MS = null; @@ -454,31 +592,83 @@ m_MS = ms; } -// [Category("Program")] - [LocalizedCategory("0"), LocalizedDisplayName("1")] - public string Exefile + #region [Category("General")] + [LocalizedCategory("9"), LocalizedDisplayName("10")] + public int PluginID { - get { return m_MS.m_ExeFile; } - set { m_MS.m_ExeFile = value; } + get { return m_MS.m_ID; } + set { m_MS.m_ID = value; } } -// [Category("Program")] - [LocalizedCategory("0"), LocalizedDisplayName("2")] - public string Arguments - { - get { return m_MS.m_Arguments; } - set { m_MS.m_Arguments = value; } - } - -// [Category("Program")] - [LocalizedCategory("0"), LocalizedDisplayName("3")] + [LocalizedCategory("9"), LocalizedDisplayName("3")] public bool HideMPWhileExecuting { get { return m_MS.m_HandleMPWindow; } set { m_MS.m_HandleMPWindow = value; } } + #endregion -// [Category("Program")] + #region [Category("Homescreen")] + [LocalizedCategory("4"), LocalizedDisplayName("8")] + public string ButtonCaption + { + get { return m_MS.m_Caption; } + set { m_MS.m_Caption = value; } + } + + [LocalizedCategory("4"), LocalizedDisplayName("6")] + public string ButtonImage + { + get { return m_MS.m_ButtonImg; } + set { m_MS.m_ButtonImg = value; } + } + + [LocalizedCategory("4"), LocalizedDisplayName("7")] + public string ButtonImageFocus + { + get { return m_MS.m_ButtonImgF; } + set { m_MS.m_ButtonImgF = value; } + } + + [LocalizedCategory("4"), LocalizedDisplayName("5")] + public string Picture + { + get { return m_MS.m_Picture; } + set { m_MS.m_Picture = value; } + } + #endregion + + #region [Category("Pre-Processing")] + [LocalizedCategory("23"), LocalizedDisplayName("20")] + public string PreDirectory + { + get { return m_MS.m_PreDirectory; } + set { m_MS.m_PreDirectory = value; } + } + + [LocalizedCategory("23"), LocalizedDisplayName("1")] + public string PreExefile + { + get { return m_MS.m_PreExeFile; } + set { m_MS.m_PreExeFile = value; } + } + + [LocalizedCategory("23"), LocalizedDisplayName("2")] + public string PreArguments + { + get { return m_MS.m_PreArguments; } + set { m_MS.m_PreArguments = value; } + } + + [LocalizedCategory("23"), LocalizedDisplayName("22")] + public bool PreUseVirtualKeyboard + { + get { return m_MS.m_PreUseVirtualKeyboard; } + set { m_MS.m_PreUseVirtualKeyboard = value; } + } + #endregion + + #region [Category("Program")] [LocalizedCategory("0"), LocalizedDisplayName("20")] public string Directory { @@ -486,55 +676,61 @@ set { m_MS.m_Directory = value; } } - // [Category("Program")] + [LocalizedCategory("0"), LocalizedDisplayName("1")] + public string Exefile + { + get { return m_MS.m_ExeFile; } + set { m_MS.m_ExeFile = value; } + } + + [LocalizedCategory("0"), LocalizedDisplayName("2")] + public string Arguments + { + get { return m_MS.m_Arguments; } + set { m_MS.m_Arguments = value; } + } + [LocalizedCategory("0"), LocalizedDisplayName("22")] public bool UseVirtualKeyboard { get { return m_MS.m_UseVirtualKeyboard; } set { m_MS.m_UseVirtualKeyboard = value; } } + #endregion -// [Category("Homescreen")] - [LocalizedCategory("4"), LocalizedDisplayName("5")] - public string Picture + #region [Category("Post-Processing")] + [LocalizedCategory("24"), LocalizedDisplayName("20")] + public string PostDirectory { - get { return m_MS.m_Picture; } - set { m_MS.m_Picture = value; } + get { return m_MS.m_PostDirectory; } + set { m_MS.m_PostDirectory = value; } } -// [Category("Homescreen")] - [LocalizedCategory("4"), LocalizedDisplayName("6")] - public string ButtonImage + [LocalizedCategory("24"), LocalizedDisplayName("1")] + public string PostExefile { - get { return m_MS.m_ButtonImg; } - set { m_MS.m_ButtonImg = value; } + get { return m_MS.m_PostExeFile; } + set { m_MS.m_PostExeFile = value; } } -// [Category("Homescreen")] - [LocalizedCategory("4"), LocalizedDisplayName("7")] - public string ButtonImageFocus + [LocalizedCategory("24"), LocalizedDisplayName("2")] + public string PostArguments { - get { return m_MS.m_ButtonImgF; } - set { m_MS.m_ButtonImgF = value; } + get { return m_MS.m_PostArguments; } + set { m_MS.m_PostArguments = value; } } -// [Category("Homescreen")] - [LocalizedCategory("4"), LocalizedDisplayName("8")] - public string ButtonCaption + [LocalizedCategory("24"), LocalizedDisplayName("22")] + public bool PostUseVirtualKeyboard { - get { return m_MS.m_Caption; } - set { m_MS.m_Caption = value; } + get { return m_MS.m_PostUseVirtualKeyboard; } + set { m_MS.m_PostUseVirtualKeyboard = value; } } - -// [Category("Plugin ID")] //fmu - [LocalizedCategory("9"), LocalizedDisplayName("10")] - public int PluginID //fmu - { - get { return m_MS.m_ID; } //fmu - set { m_MS.m_ID = value; } //fmu - } + #endregion } +#endregion +#region Win32Wrapper internal class Win32Wrapper { public const int GWL_STYLE = -16; @@ -578,4 +774,6 @@ public static extern bool ShowWindow(int hWnd, int nCmdShow); } +#endregion + } Modified: trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.csproj =================================================================== --- trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.csproj 2009-01-24 09:46:33 UTC (rev 2565) +++ trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.csproj 2009-01-24 12:16:06 UTC (rev 2566) @@ -1,14 +1,19 @@ -<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> +<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5"> <PropertyGroup> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> - <ProductVersion>8.0.50727</ProductVersion> + <ProductVersion>9.0.21022</ProductVersion> <SchemaVersion>2.0</SchemaVersion> <ProjectGuid>{7CBDA33F-E11F-400B-8B3F-ABB0B54462AC}</ProjectGuid> <OutputType>Library</OutputType> <AppDesignerFolder>Properties</AppDesignerFolder> <RootNamespace>MultiShortcut</RootNamespace> <AssemblyName>MultiShortcut00</AssemblyName> + <FileUpgradeFlags> + </FileUpgradeFlags> + <OldToolsVersion>2.0</OldToolsVersion> + <UpgradeBackupLocation> + </UpgradeBackupLocation> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> <DebugSymbols>true</DebugSymbols> @@ -28,17 +33,17 @@ <WarningLevel>4</WarningLevel> </PropertyGroup> <ItemGroup> - <Reference Include="Core, Version=0.9.3.29272, Culture=neutral, processorArchitecture=MSIL"> + <Reference Include="Core, Version=1.0.0.17220, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\MediaPortal\xbmc\bin\Release\Core.dll</HintPath> + <HintPath>..\..\..\MediaPortal\Dialogs\bin\Release\Core.dll</HintPath> <Private>False</Private> </Reference> - <Reference Include="Databases, Version=0.9.3.29273, Culture=neutral, processorArchitecture=MSIL"> + <Reference Include="Databases, Version=1.0.0.17222, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\MediaPortal\xbmc\bin\Release\Databases.dll</HintPath> + <HintPath>..\..\..\MediaPortal\Dialogs\bin\Release\Databases.dll</HintPath> <Private>False</Private> </Reference> - <Reference Include="Dialogs, Version=0.9.3.29274, Culture=neutral, processorArchitecture=MSIL"> + <Reference Include="Dialogs, Version=1.0.0.17223, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> <HintPath>..\..\..\MediaPortal\Dialogs\bin\Release\Dialogs.dll</HintPath> <Private>False</Private> @@ -48,9 +53,9 @@ <Reference Include="System.Drawing" /> <Reference Include="System.Windows.Forms" /> <Reference Include="System.Xml" /> - <Reference Include="Utils, Version=2.2.6.29271, Culture=neutral, processorArchitecture=MSIL"> + <Reference Include="Utils, Version=2.2.6.17217, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\MediaPortal\xbmc\bin\Release\Utils.dll</HintPath> + <HintPath>..\..\..\MediaPortal\Dialogs\bin\Release\Utils.dll</HintPath> <Private>False</Private> </Reference> </ItemGroup> @@ -88,4 +93,7 @@ <Target Name="AfterBuild"> </Target> --> + <PropertyGroup> + <PostBuildEvent>copy $(TargetName).dll "D:\SVN\MediaPortal\xbmc\bin\Release\plugins\Windows"</PostBuildEvent> + </PropertyGroup> </Project> \ No newline at end of file Modified: trunk/plugins/MultiShortcut/MultiShortcut/Properties/AssemblyInfo.cs =================================================================== --- trunk/plugins/MultiShortcut/MultiShortcut/Properties/AssemblyInfo.cs 2009-01-24 09:46:33 UTC (rev 2565) +++ trunk/plugins/MultiShortcut/MultiShortcut/Properties/AssemblyInfo.cs 2009-01-24 12:16:06 UTC (rev 2566) @@ -31,5 +31,5 @@ // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.1.0.0")] -[assembly: AssemblyFileVersion("1.1.0.0")] +[assembly: AssemblyVersion("1.2.0.0")] +[assembly: AssemblyFileVersion("1.2.0.0")] Modified: trunk/plugins/MultiShortcut/TestServer/TestServer.csproj =================================================================== --- trunk/plugins/MultiShortcut/TestServer/TestServer.csproj 2009-01-24 09:46:33 UTC (rev 2565) +++ trunk/plugins/MultiShortcut/TestServer/TestServer.csproj 2009-01-24 12:16:06 UTC (rev 2566) @@ -1,14 +1,19 @@ -<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> +<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5"> <PropertyGroup> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> - <ProductVersion>8.0.50727</ProductVersion> + <ProductVersion>9.0.21022</ProductVersion> <SchemaVersion>2.0</SchemaVersion> <ProjectGuid>{D2159E0B-44FA-41D8-B701-081D2C931CC0}</ProjectGuid> <OutputType>Exe</OutputType> <AppDesignerFolder>Properties</AppDesignerFolder> <RootNamespace>TestServer</RootNamespace> <AssemblyName>TestServer</AssemblyName> + <FileUpgradeFlags> + </FileUpgradeFlags> + <OldToolsVersion>2.0</OldToolsVersion> + <UpgradeBackupLocation> + </UpgradeBackupLocation> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> <DebugSymbols>true</DebugSymbols> @@ -28,7 +33,7 @@ <WarningLevel>4</WarningLevel> </PropertyGroup> <ItemGroup> - <Reference Include="Core, Version=0.9.3.29272, Culture=neutral, processorArchitecture=MSIL"> + <Reference Include="Core, Version=1.0.0.17220, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> <HintPath>..\..\..\MediaPortal\xbmc\bin\Release\Core.dll</HintPath> <Private>False</Private> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |