You can subscribe to this list here.
2007 |
Jan
(36) |
Feb
(79) |
Mar
(123) |
Apr
(95) |
May
(119) |
Jun
(172) |
Jul
(124) |
Aug
(100) |
Sep
(83) |
Oct
(52) |
Nov
(97) |
Dec
(87) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(131) |
Feb
(80) |
Mar
(163) |
Apr
(178) |
May
(73) |
Jun
(54) |
Jul
(106) |
Aug
(118) |
Sep
(50) |
Oct
(125) |
Nov
(100) |
Dec
(99) |
2009 |
Jan
(104) |
Feb
(99) |
Mar
(68) |
Apr
(81) |
May
(52) |
Jun
(87) |
Jul
(67) |
Aug
(33) |
Sep
(27) |
Oct
(37) |
Nov
(60) |
Dec
(116) |
2010 |
Jan
(82) |
Feb
(79) |
Mar
(38) |
Apr
(50) |
May
(45) |
Jun
(53) |
Jul
(23) |
Aug
(86) |
Sep
(22) |
Oct
(96) |
Nov
(97) |
Dec
(73) |
2011 |
Jan
(24) |
Feb
(45) |
Mar
(28) |
Apr
(31) |
May
(42) |
Jun
(25) |
Jul
|
Aug
(12) |
Sep
(28) |
Oct
(13) |
Nov
(43) |
Dec
(13) |
2012 |
Jan
(62) |
Feb
(28) |
Mar
(6) |
Apr
(16) |
May
(7) |
Jun
|
Jul
(16) |
Aug
(2) |
Sep
(1) |
Oct
(4) |
Nov
(1) |
Dec
(3) |
2013 |
Jan
(5) |
Feb
|
Mar
(34) |
Apr
(9) |
May
(6) |
Jun
(10) |
Jul
(32) |
Aug
(8) |
Sep
(11) |
Oct
(35) |
Nov
(24) |
Dec
(22) |
2014 |
Jan
(44) |
Feb
(9) |
Mar
(9) |
Apr
(15) |
May
(25) |
Jun
(34) |
Jul
(16) |
Aug
(11) |
Sep
(7) |
Oct
(6) |
Nov
(1) |
Dec
(12) |
2015 |
Jan
(33) |
Feb
(19) |
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2019 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
(5) |
From: <che...@us...> - 2007-04-08 17:34:46
|
Revision: 297 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=297&view=rev Author: chef_koch Date: 2007-04-08 10:34:44 -0700 (Sun, 08 Apr 2007) Log Message: ----------- import phonebook from FRITZ!Box Monitor is now possible Modified Paths: -------------- trunk/plugins/FritzBox/Caller.cs trunk/plugins/FritzBox/FritzBox.cs trunk/plugins/FritzBox/FritzBoxSetupFrom.cs trunk/plugins/FritzBox/FritzBoxSetupFrom.resx Modified: trunk/plugins/FritzBox/Caller.cs =================================================================== --- trunk/plugins/FritzBox/Caller.cs 2007-04-08 11:07:48 UTC (rev 296) +++ trunk/plugins/FritzBox/Caller.cs 2007-04-08 17:34:44 UTC (rev 297) @@ -31,17 +31,59 @@ { public class Caller { + string _id; + string _name; + bool _show; - public readonly string callerId; - public readonly string name; - public readonly bool show; - - public Caller(string CallerId, string Name, bool Show) + public Caller() { - this.callerId = CallerId; - this.name = Name; - this.show = Show; + this._id = ""; + this._name = ""; + this._show = false; } + public Caller(string id, string name, bool show) + { + this._id = id; + this._name = name; + this._show = show; + } + + public string ID + { + get + { + return _id; + } + set + { + _id = value; + } + } + + public string Name + { + get + { + return _name; + } + set + { + _name = value; + } + } + + public bool Show + { + get + { + return _show; + } + set + { + _show = value; + } + } + } } Modified: trunk/plugins/FritzBox/FritzBox.cs =================================================================== --- trunk/plugins/FritzBox/FritzBox.cs 2007-04-08 11:07:48 UTC (rev 296) +++ trunk/plugins/FritzBox/FritzBox.cs 2007-04-08 17:34:44 UTC (rev 297) @@ -56,8 +56,6 @@ private bool _fritzBoxDisabled = false; - public List<Caller> phonebook = new List<Caller>(); - // notify settings private int _timeout = -1; // autoclose the dialog after the timeout expired private bool _closeOnTimeout = false; @@ -84,6 +82,8 @@ public static bool _showUnknownCaller = true; public static bool _saveUnknownCaller = true; + public static List<Caller> phonebook = new List<Caller>(); + #endregion FritzBoxWatch FritzBoxWatch; @@ -155,38 +155,74 @@ Log.Info("FRITZ!Box: saveUnknownCaller = {0}", _saveUnknownCaller.ToString()); } } + + LoadPhonebook(); + } + private void SaveSettings() + { + if (_extensiveLogging) + Log.Info("FRITZ!Box: SaveSettings"); + + using (MediaPortal.Profile.Settings xmlwriter = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "MediaPortal.xml"))) + { + xmlwriter.SetValue("fritzbox", "lastVersion", _version.Replace(".", string.Empty)); + } + + SavePhonebook(); + } + #endregion + + #region Phonebook + public static void LoadPhonebook() + { if ((_lastVersion < 0220) && (!File.Exists(Config.GetFile(Config.Dir.Config, "fritzbox.xml")))) + { UpdateTo0220(); - else - using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "fritzbox.xml"))) + return; + } + + using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "fritzbox.xml"))) + { + int countCaller = xmlreader.GetValueAsInt("phonebook", "count", 0); + + for (int i = 0; i < countCaller; i++) { - int countCaller = xmlreader.GetValueAsInt("phonebook", "count", 0); + Caller caller = new Caller(); - for (int i = 0; i < countCaller; i++) - { - string strCallerId = xmlreader.GetValueAsString("phonebook", string.Format("callerID{0}", i.ToString()), ""); - string strName = xmlreader.GetValueAsString("phonebook", string.Format("name{0}", i.ToString()), ""); - bool bShow = xmlreader.GetValueAsBool("phonebook", string.Format("show{0}", i.ToString()), false); + caller.ID = xmlreader.GetValueAsString("phonebook", string.Format("callerID{0}", i.ToString()), ""); + caller.Name = xmlreader.GetValueAsString("phonebook", string.Format("name{0}", i.ToString()), ""); + caller.Show = xmlreader.GetValueAsBool("phonebook", string.Format("show{0}", i.ToString()), false); - if (strCallerId == "") continue; - if (strCallerId == null) continue; - if (strName == "") continue; - if (strName == null) continue; + phonebook.Add(caller); - Caller caller = new Caller(strCallerId, strName, bShow); - phonebook.Add(caller); - - if (_extensiveLogging) - Log.Debug("FRITZ!Box: caller loaded: {0} {1} {2}", caller.callerId, caller.name, caller.show); - } + if (_extensiveLogging) + Log.Debug("FRITZ!Box: caller loaded: {0} {1} {2}", caller.ID, caller.Name, caller.Show); } + } if (_extensiveLogging) Log.Debug("FRITZ!Box: imported {0} callers", phonebook.Count.ToString()); } - private void UpdateTo0220() + public static void SavePhonebook() { + using (MediaPortal.Profile.Settings xmlwriter = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "fritzbox.xml"))) + { + xmlwriter.SetValue("phonebook", "count", phonebook.Count); + + for (int i = 0; i < phonebook.Count; i++) + { + Caller caller = phonebook[i]; + + xmlwriter.SetValue("phonebook", string.Format("callerID{0}", i.ToString()), caller.ID); + xmlwriter.SetValue("phonebook", string.Format("name{0}", i.ToString()), caller.Name); + xmlwriter.SetValueAsBool("phonebook", string.Format("show{0}", i.ToString()), caller.Show); + } + } + } + + public static void UpdateTo0220() + { char[] charSeparators = new char[] { ';' }; using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "MediaPortal.xml"))) @@ -194,46 +230,62 @@ string[] strLCallerId = xmlreader.GetValueAsString("fritzbox", "phonebookCallerId", "").Split(charSeparators, StringSplitOptions.RemoveEmptyEntries); string[] strLName = xmlreader.GetValueAsString("fritzbox", "phonebookName", "").Split(charSeparators, StringSplitOptions.RemoveEmptyEntries); string[] strLShow = xmlreader.GetValueAsString("fritzbox", "phonebookShow", "").Split(charSeparators, StringSplitOptions.RemoveEmptyEntries); - + for (int i = 0; i <= strLCallerId.GetUpperBound(0); i++) { Caller caller = new Caller(strLCallerId[i], strLName[i], bool.Parse(strLShow[i])); phonebook.Add(caller); if (_extensiveLogging) - Log.Debug("FRITZ!Box: caller loaded: {0} {1} {2}", caller.callerId, caller.name, caller.show); + Log.Debug("FRITZ!Box: caller loaded: {0} {1} {2}", caller.ID, caller.Name, caller.Show); } } } - private void SaveSettings() + public static void ImportFritzBoxMonitor(string filepath) { - if (_extensiveLogging) - Log.Info("FRITZ!Box: SaveSettings"); - - using (MediaPortal.Profile.Settings xmlwriter = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "MediaPortal.xml"))) + try { - xmlwriter.SetValue("fritzbox", "lastVersion", _version.Replace(".", string.Empty)); - } + // Create an instance of StreamReader to read from a file. + // The using statement also closes the StreamReader. + using (StreamReader sr = new StreamReader(filepath)) + { + string line; + // Read and display lines from the file until the end of + // the file is reached. + while ((line = sr.ReadLine()) != null) + { + string[] ar = line.Split(char.Parse(";")); - using (MediaPortal.Profile.Settings xmlwriter = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "fritzbox.xml"))) - { - xmlwriter.SetValue("phonebook", "count", phonebook.Count); + Caller caller = new Caller(); - for (int i = 0; i < phonebook.Count; i++) - { - Caller caller = phonebook[i]; + caller.ID = ar[2]; + caller.Name = String.Format("{0} {1}", ar[0], ar[1]); + caller.Show = true; - xmlwriter.SetValue("phonebook", string.Format("callerID{0}", i.ToString()), caller.callerId); - xmlwriter.SetValue("phonebook", string.Format("name{0}", i.ToString()), caller.name); - xmlwriter.SetValueAsBool("phonebook", string.Format("show{0}", i.ToString()), caller.show); + if (!CallerExists(caller)) + phonebook.Add(caller); + } } } + catch (Exception e) + { + // Let the user know what went wrong. + Log.Error("The file could not be read: {0}", e.Message); + } } + + public static bool CallerExists(Caller caller) + { + for (int i = 0; i < phonebook.Count; i++) + { + if (phonebook[i].ID == caller.ID) + return true; + } + return false; + } #endregion - - public bool IsFritzBoxConnected(string fritzBoxAddress, string fritzBoxPort) { TcpClient TcpClient; @@ -334,16 +386,16 @@ { Caller caller = phonebook[i]; - if (caller.callerId.Equals(callerId)) + if (caller.ID.Equals(callerId)) { - Log.Info("Caller is identified by phonebook as {0}.", caller.name); + Log.Info("Caller is identified by phonebook as {0}.", caller.Name); foundCaller = true; - if (caller.show) + if (caller.Show) { Log.Info("Caller is accepted by phonebook and dialog will be shown."); - DialogOnIncomingCall(caller.name, msn); + DialogOnIncomingCall(caller.Name, msn); } else { Modified: trunk/plugins/FritzBox/FritzBoxSetupFrom.cs =================================================================== --- trunk/plugins/FritzBox/FritzBoxSetupFrom.cs 2007-04-08 11:07:48 UTC (rev 296) +++ trunk/plugins/FritzBox/FritzBoxSetupFrom.cs 2007-04-08 17:34:44 UTC (rev 297) @@ -86,6 +86,8 @@ private MediaPortal.UserInterface.Controls.MPComboBox comboBoxMSNs; private MediaPortal.UserInterface.Controls.MPCheckBox checkBoxShowMsnOnHeading; private PictureBox pictureBox1; + private MediaPortal.UserInterface.Controls.MPButton mpImportFBMonitor; + private OpenFileDialog openFileDialog; /// <summary> /// Erforderliche Designervariable. @@ -133,6 +135,7 @@ this.tabGeneral = new System.Windows.Forms.TabPage(); this.checkBoxExtensiveLogging = new MediaPortal.UserInterface.Controls.MPCheckBox(); this.mpGroupBox1 = new MediaPortal.UserInterface.Controls.MPGroupBox(); + this.pictureBox1 = new System.Windows.Forms.PictureBox(); this.buttonTest = new MediaPortal.UserInterface.Controls.MPButton(); this.textBoxPort = new MediaPortal.UserInterface.Controls.MPTextBox(); this.textBoxAddress = new MediaPortal.UserInterface.Controls.MPTextBox(); @@ -171,10 +174,12 @@ this.buttonCancel = new MediaPortal.UserInterface.Controls.MPButton(); this.buttonSave = new MediaPortal.UserInterface.Controls.MPButton(); this.labelVersion = new MediaPortal.UserInterface.Controls.MPLabel(); - this.pictureBox1 = new System.Windows.Forms.PictureBox(); + this.mpImportFBMonitor = new MediaPortal.UserInterface.Controls.MPButton(); + this.openFileDialog = new System.Windows.Forms.OpenFileDialog(); this.tabControlFritzBoxSettings.SuspendLayout(); this.tabGeneral.SuspendLayout(); this.mpGroupBox1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); this.tabIncoming.SuspendLayout(); this.groupBoxPhonebook.SuspendLayout(); this.groupBoxNotify.SuspendLayout(); @@ -183,7 +188,6 @@ this.tabPhonebook.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.pictureBoxCaller)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.dataGridView)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); this.SuspendLayout(); // // tabControlFritzBoxSettings @@ -242,6 +246,16 @@ this.mpGroupBox1.TabStop = false; this.mpGroupBox1.Text = "connection"; // + // pictureBox1 + // + this.pictureBox1.Image = global::FritzBox.Properties.Resources.FritzBoxIconTransparent; + this.pictureBox1.Location = new System.Drawing.Point(6, 20); + this.pictureBox1.Name = "pictureBox1"; + this.pictureBox1.Size = new System.Drawing.Size(97, 99); + this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; + this.pictureBox1.TabIndex = 2; + this.pictureBox1.TabStop = false; + // // buttonTest // this.buttonTest.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); @@ -318,6 +332,7 @@ // this.groupBoxPhonebook.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); + this.groupBoxPhonebook.Controls.Add(this.mpImportFBMonitor); this.groupBoxPhonebook.Controls.Add(this.checkBoxSaveUnknownCaller); this.groupBoxPhonebook.Controls.Add(this.checkBoxShowUnknownCaller); this.groupBoxPhonebook.Controls.Add(this.checkBoxUsePhonebook); @@ -685,15 +700,16 @@ this.labelVersion.TabIndex = 13; this.labelVersion.TextAlign = System.Drawing.ContentAlignment.MiddleRight; // - // pictureBox1 + // mpImportFBMonitor // - this.pictureBox1.Image = global::FritzBox.Properties.Resources.FritzBoxIconTransparent; - this.pictureBox1.Location = new System.Drawing.Point(6, 20); - this.pictureBox1.Name = "pictureBox1"; - this.pictureBox1.Size = new System.Drawing.Size(97, 99); - this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; - this.pictureBox1.TabIndex = 2; - this.pictureBox1.TabStop = false; + this.mpImportFBMonitor.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.mpImportFBMonitor.Location = new System.Drawing.Point(355, 20); + this.mpImportFBMonitor.Name = "mpImportFBMonitor"; + this.mpImportFBMonitor.Size = new System.Drawing.Size(150, 23); + this.mpImportFBMonitor.TabIndex = 3; + this.mpImportFBMonitor.Text = "Import FRITZ!Box Monitor"; + this.mpImportFBMonitor.UseVisualStyleBackColor = true; + this.mpImportFBMonitor.Click += new System.EventHandler(this.mpImportFBMonitor_Click); // // FritzBoxSetupForm // @@ -715,6 +731,7 @@ this.tabGeneral.PerformLayout(); this.mpGroupBox1.ResumeLayout(false); this.mpGroupBox1.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit(); this.tabIncoming.ResumeLayout(false); this.groupBoxPhonebook.ResumeLayout(false); this.groupBoxPhonebook.PerformLayout(); @@ -727,7 +744,6 @@ this.tabPhonebook.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.pictureBoxCaller)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.dataGridView)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit(); this.ResumeLayout(false); } @@ -778,50 +794,11 @@ checkBoxShowUnknownCaller.Enabled = checkBoxUsePhonebook.Checked; checkBoxSaveUnknownCaller.Enabled = checkBoxUsePhonebook.Checked; } - - if ((FritzBox._lastVersion < 0220) && (!File.Exists(Config.GetFile(Config.Dir.Config, "fritzbox.xml")))) - UpdateTo0220(); - else - using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "fritzbox.xml"))) - { - int countCaller = xmlreader.GetValueAsInt("phonebook", "count", 0); - - for (int i = 0; i < countCaller; i++) - { - string strCallerId = xmlreader.GetValueAsString("phonebook", string.Format("callerID{0}", i.ToString()), ""); - string strName = xmlreader.GetValueAsString("phonebook", string.Format("name{0}", i.ToString()), ""); - bool bShow = xmlreader.GetValueAsBool("phonebook", string.Format("show{0}", i.ToString()), false); - - if (strCallerId == "") continue; - if (strCallerId == null) continue; - if (strName == "") continue; - if (strName == null) continue; - - dataGridView.Rows.Add(strCallerId, strName, bShow); - } - } + + FritzBox.LoadPhonebook(); + RefreshDataGridView(); } - private void UpdateTo0220() - { - using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "MediaPortal.xml"))) - { - string strCallerId = xmlreader.GetValueAsString("fritzbox", "phonebookCallerId", ""); - string strName = xmlreader.GetValueAsString("fritzbox", "phonebookName", ""); - string strShow = xmlreader.GetValueAsString("fritzbox", "phonebookShow", ""); - - if (strCallerId != "") - { - string[] strListCallerId = strCallerId.Split(';'); - string[] strListName = strName.Split(';'); - string[] strListShow = strShow.Split(';'); - - for (int i = 0; i < strListCallerId.GetUpperBound(0); i++) - dataGridView.Rows.Add(strListCallerId[i], strListName[i], bool.Parse(strListShow[i])); - } - } - } - private void SaveSettings() { Log.Info("FRITZ!Box: SaveSettings"); @@ -858,21 +835,8 @@ xmlwriter.SetValueAsBool("fritzbox", "saveUnknownCaller", checkBoxSaveUnknownCaller.Checked); } - using (MediaPortal.Profile.Settings xmlwriter = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "fritzbox.xml"))) - { - xmlwriter.SetValue("phonebook", "count", dataGridView.RowCount - 1); - - for (int i = 0; i < dataGridView.RowCount - 1; i++) - { - string strCallerId = dataGridView.Rows[i].Cells[0].Value.ToString(); - string strName = dataGridView.Rows[i].Cells[1].Value.ToString(); - bool strShow = bool.Parse(dataGridView.Rows[i].Cells[2].Value.ToString()); - - xmlwriter.SetValue("phonebook", string.Format("callerID{0}", i.ToString()), strCallerId); - xmlwriter.SetValue("phonebook", string.Format("name{0}", i.ToString()), strName); - xmlwriter.SetValueAsBool("phonebook", string.Format("show{0}", i.ToString()), strShow); - } - } + SaveDataGridView(); + FritzBox.SavePhonebook(); } private void buttonSave_Click(object sender, EventArgs e) @@ -1020,13 +984,6 @@ MessageBox.Show("CallerID is empty. Please type in the correct CallerID."); return false; } - - if (textBoxCallerId.Text.Contains(";")) - { - textBoxCallerId.Focus(); - MessageBox.Show("CallerID: A ';' ist not allowed."); - return false; - } if (dataGridView.Rows[dataGridView.NewRowIndex].Selected) for (int i = 0; i < dataGridView.Rows.Count - 1; i++) @@ -1049,13 +1006,6 @@ return false; } - if (textBoxCallerName.Text.Contains(";")) - { - textBoxCallerName.Focus(); - MessageBox.Show("Name: A ';' ist not allowed."); - return false; - } - return true; } @@ -1086,5 +1036,40 @@ pictureBoxCaller.ImageLocation = MediaPortal.Util.Utils.GetCoverArt(Thumbs.Yac, textBoxCallerName.Text); } } + + private void mpImportFBMonitor_Click(object sender, EventArgs e) + { + if (openFileDialog.ShowDialog() == DialogResult.OK) + { + FritzBox.ImportFritzBoxMonitor(openFileDialog.FileName); + RefreshDataGridView(); + } + } + + private void RefreshDataGridView() + { + dataGridView.Rows.Clear(); + + for (int i = 0; i < FritzBox.phonebook.Count; i++) + { + dataGridView.Rows.Add(FritzBox.phonebook[i].ID, FritzBox.phonebook[i].Name, FritzBox.phonebook[i].Show); + } + } + + private void SaveDataGridView() + { + FritzBox.phonebook.Clear(); + + for (int i = 0; i < dataGridView.RowCount - 1; i++) + { + Caller caller = new Caller(); + + caller.ID = dataGridView.Rows[i].Cells[0].Value.ToString(); + caller.Name = dataGridView.Rows[i].Cells[1].Value.ToString(); + caller.Show = bool.Parse(dataGridView.Rows[i].Cells[2].Value.ToString()); + + FritzBox.phonebook.Add(caller); + } + } } } \ No newline at end of file Modified: trunk/plugins/FritzBox/FritzBoxSetupFrom.resx =================================================================== --- trunk/plugins/FritzBox/FritzBoxSetupFrom.resx 2007-04-08 11:07:48 UTC (rev 296) +++ trunk/plugins/FritzBox/FritzBoxSetupFrom.resx 2007-04-08 17:34:44 UTC (rev 297) @@ -126,6 +126,9 @@ <metadata name="colShow.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <value>True</value> </metadata> + <metadata name="openFileDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>17, 17</value> + </metadata> <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> <value> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <che...@us...> - 2007-04-08 11:08:00
|
Revision: 296 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=296&view=rev Author: chef_koch Date: 2007-04-08 04:07:48 -0700 (Sun, 08 Apr 2007) Log Message: ----------- phonebook entries are now saved in own fritzbox.xml Modified Paths: -------------- trunk/plugins/FritzBox/FritzBox.cs trunk/plugins/FritzBox/FritzBoxSetupFrom.cs Modified: trunk/plugins/FritzBox/FritzBox.cs =================================================================== --- trunk/plugins/FritzBox/FritzBox.cs 2007-04-07 14:39:22 UTC (rev 295) +++ trunk/plugins/FritzBox/FritzBox.cs 2007-04-08 11:07:48 UTC (rev 296) @@ -74,8 +74,9 @@ #endregion #region public Variables - - public const string _version = "0.2f"; + + public const string _version = "0.2.2.0"; + public static int _lastVersion = 0; public static bool _extensiveLogging = false; // phonebook settings @@ -108,6 +109,8 @@ using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "MediaPortal.xml"))) { + _lastVersion = xmlreader.GetValueAsInt("fritzbox", "lastVersion", 0); + _extensiveLogging = xmlreader.GetValueAsBool("fritzbox", "extensiveLogging", false); FritzBoxWatch.fritzBoxAddress = xmlreader.GetValueAsString("fritzbox", "address", "fritz.box"); @@ -117,7 +120,7 @@ _closeOnTimeout = xmlreader.GetValueAsBool("fritzbox", "closeOnTimeout", false); _timeout = xmlreader.GetValueAsInt("fritzbox", "timeout", 10); - if ( (!_closeOnTimeout) || (_timeout == 0) ) + if ((!_closeOnTimeout) || (_timeout == 0)) _timeout = -1; _filterMSNs = xmlreader.GetValueAsBool("fritzbox", "filterMSNs", false); @@ -132,12 +135,12 @@ // media settings _stopMedia = xmlreader.GetValueAsBool("fritzbox", "stopMedia", true); _resumeMedia = xmlreader.GetValueAsBool("fritzbox", "resumeMedia", true); - + // phonebook settings _usePhonebook = xmlreader.GetValueAsBool("fritzbox", "usePhonebook", true); _showUnknownCaller = xmlreader.GetValueAsBool("fritzbox", "showUnknownCaller", true); _saveUnknownCaller = xmlreader.GetValueAsBool("fritzbox", "saveUnknownCaller", true); - + if (_extensiveLogging) { Log.Info("FRITZ!Box: closeOnTimeout = {0}", _closeOnTimeout.ToString()); @@ -151,26 +154,55 @@ Log.Info("FRITZ!Box: showUnknownCaller = {0}", _showUnknownCaller.ToString()); Log.Info("FRITZ!Box: saveUnknownCaller = {0}", _saveUnknownCaller.ToString()); } + } - if (_usePhonebook) + if ((_lastVersion < 0220) && (!File.Exists(Config.GetFile(Config.Dir.Config, "fritzbox.xml")))) + UpdateTo0220(); + else + using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "fritzbox.xml"))) { - string[] strLCallerId = xmlreader.GetValueAsString("fritzbox", "phonebookCallerId", "").Split(charSeparators, StringSplitOptions.RemoveEmptyEntries); - string[] strLName = xmlreader.GetValueAsString("fritzbox", "phonebookName", "").Split(charSeparators, StringSplitOptions.RemoveEmptyEntries); - string[] strLShow = xmlreader.GetValueAsString("fritzbox", "phonebookShow", "").Split(charSeparators, StringSplitOptions.RemoveEmptyEntries); + int countCaller = xmlreader.GetValueAsInt("phonebook", "count", 0); - for (int i = 0; i <= strLCallerId.GetUpperBound(0); i++) + for (int i = 0; i < countCaller; i++) { - Caller caller = new Caller(strLCallerId[i], strLName[i], bool.Parse(strLShow[i])); + string strCallerId = xmlreader.GetValueAsString("phonebook", string.Format("callerID{0}", i.ToString()), ""); + string strName = xmlreader.GetValueAsString("phonebook", string.Format("name{0}", i.ToString()), ""); + bool bShow = xmlreader.GetValueAsBool("phonebook", string.Format("show{0}", i.ToString()), false); + + if (strCallerId == "") continue; + if (strCallerId == null) continue; + if (strName == "") continue; + if (strName == null) continue; + + Caller caller = new Caller(strCallerId, strName, bShow); phonebook.Add(caller); if (_extensiveLogging) Log.Debug("FRITZ!Box: caller loaded: {0} {1} {2}", caller.callerId, caller.name, caller.show); } } + if (_extensiveLogging) + Log.Debug("FRITZ!Box: imported {0} callers", phonebook.Count.ToString()); + } - if (_extensiveLogging) - Log.Debug("FRITZ!Box: imported {0} callers", phonebook.Count.ToString()); + private void UpdateTo0220() + { + char[] charSeparators = new char[] { ';' }; + + using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "MediaPortal.xml"))) + { + string[] strLCallerId = xmlreader.GetValueAsString("fritzbox", "phonebookCallerId", "").Split(charSeparators, StringSplitOptions.RemoveEmptyEntries); + string[] strLName = xmlreader.GetValueAsString("fritzbox", "phonebookName", "").Split(charSeparators, StringSplitOptions.RemoveEmptyEntries); + string[] strLShow = xmlreader.GetValueAsString("fritzbox", "phonebookShow", "").Split(charSeparators, StringSplitOptions.RemoveEmptyEntries); + for (int i = 0; i <= strLCallerId.GetUpperBound(0); i++) + { + Caller caller = new Caller(strLCallerId[i], strLName[i], bool.Parse(strLShow[i])); + phonebook.Add(caller); + + if (_extensiveLogging) + Log.Debug("FRITZ!Box: caller loaded: {0} {1} {2}", caller.callerId, caller.name, caller.show); + } } } @@ -178,27 +210,23 @@ { if (_extensiveLogging) Log.Info("FRITZ!Box: SaveSettings"); - + using (MediaPortal.Profile.Settings xmlwriter = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "MediaPortal.xml"))) { - if (_usePhonebook) + xmlwriter.SetValue("fritzbox", "lastVersion", _version.Replace(".", string.Empty)); + } + + using (MediaPortal.Profile.Settings xmlwriter = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "fritzbox.xml"))) + { + xmlwriter.SetValue("phonebook", "count", phonebook.Count); + + for (int i = 0; i < phonebook.Count; i++) { - string strCallerId = ""; - string strName = ""; - string strShow = ""; - - for (int i = 0; i < phonebook.Count; i++) - { - Caller caller = phonebook[i]; + Caller caller = phonebook[i]; - strCallerId += caller.callerId + ";"; - strName += caller.name + ";"; - strShow += caller.show + ";"; - } - - xmlwriter.SetValue("fritzbox", "phonebookCallerId", strCallerId); - xmlwriter.SetValue("fritzbox", "phonebookName", strName); - xmlwriter.SetValue("fritzbox", "phonebookShow", strShow); + xmlwriter.SetValue("phonebook", string.Format("callerID{0}", i.ToString()), caller.callerId); + xmlwriter.SetValue("phonebook", string.Format("name{0}", i.ToString()), caller.name); + xmlwriter.SetValueAsBool("phonebook", string.Format("show{0}", i.ToString()), caller.show); } } } Modified: trunk/plugins/FritzBox/FritzBoxSetupFrom.cs =================================================================== --- trunk/plugins/FritzBox/FritzBoxSetupFrom.cs 2007-04-07 14:39:22 UTC (rev 295) +++ trunk/plugins/FritzBox/FritzBoxSetupFrom.cs 2007-04-08 11:07:48 UTC (rev 296) @@ -738,66 +738,97 @@ { Log.Info("FRITZ!Box: LoadSettings"); - labelVersion.Text = "v" + FritzBox._version; + labelVersion.Text = "v" + FritzBox._version; - using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "MediaPortal.xml"))) - { - checkBoxExtensiveLogging.Checked = xmlreader.GetValueAsBool("fritzbox", "extensiveLogging", false); + using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "MediaPortal.xml"))) + { + FritzBox._lastVersion = xmlreader.GetValueAsInt("fritzbox", "lastVersion", 0); - textBoxAddress.Text = xmlreader.GetValueAsString("fritzbox", "address", "fritz.box"); - textBoxPort.Text = xmlreader.GetValueAsString("fritzbox", "port", "1012"); + checkBoxExtensiveLogging.Checked = xmlreader.GetValueAsBool("fritzbox", "extensiveLogging", false); - // notify settings - checkBoxCloseOnTimout.Checked = xmlreader.GetValueAsBool("fritzbox", "closeOnTimeout", false); - numericUpDownTimeout.Value = xmlreader.GetValueAsInt("fritzbox", "timeout", 10); + textBoxAddress.Text = xmlreader.GetValueAsString("fritzbox", "address", "fritz.box"); + textBoxPort.Text = xmlreader.GetValueAsString("fritzbox", "port", "1012"); - numericUpDownTimeout.Enabled = checkBoxCloseOnTimout.Checked; + // notify settings + checkBoxCloseOnTimout.Checked = xmlreader.GetValueAsBool("fritzbox", "closeOnTimeout", false); + numericUpDownTimeout.Value = xmlreader.GetValueAsInt("fritzbox", "timeout", 10); - checkBoxFilterMSNs.Checked = xmlreader.GetValueAsBool("fritzbox", "filterMSNs", false); - comboBoxMSNs.Enabled = checkBoxFilterMSNs.Checked; - buttonMSNsAdd.Enabled = checkBoxFilterMSNs.Checked; - buttonMSNsRemove.Enabled = checkBoxFilterMSNs.Checked; - string strMSN = xmlreader.GetValueAsString("fritzbox", "MSN", ""); - char[] charSeparators = new char[] { ';' }; - if (strMSN != "") - comboBoxMSNs.Items.AddRange(strMSN.Split(charSeparators, StringSplitOptions.RemoveEmptyEntries)); + numericUpDownTimeout.Enabled = checkBoxCloseOnTimout.Checked; - checkBoxShowMsnOnHeading.Checked = xmlreader.GetValueAsBool("fritzbox", "showMsnOnHeading", false); + checkBoxFilterMSNs.Checked = xmlreader.GetValueAsBool("fritzbox", "filterMSNs", false); + comboBoxMSNs.Enabled = checkBoxFilterMSNs.Checked; + buttonMSNsAdd.Enabled = checkBoxFilterMSNs.Checked; + buttonMSNsRemove.Enabled = checkBoxFilterMSNs.Checked; + string strMSN = xmlreader.GetValueAsString("fritzbox", "MSN", ""); + char[] charSeparators = new char[] { ';' }; + if (strMSN != "") + comboBoxMSNs.Items.AddRange(strMSN.Split(charSeparators, StringSplitOptions.RemoveEmptyEntries)); - // media settings - checkBoxStopMedia.Checked = xmlreader.GetValueAsBool("fritzbox", "stopMedia", true); - checkBoxResumeMedia.Checked = xmlreader.GetValueAsBool("fritzbox", "resumeMedia", true); + checkBoxShowMsnOnHeading.Checked = xmlreader.GetValueAsBool("fritzbox", "showMsnOnHeading", false); - // phonebook settings - checkBoxUsePhonebook.Checked = xmlreader.GetValueAsBool("fritzbox", "usePhonebook", true); - checkBoxShowUnknownCaller.Checked = xmlreader.GetValueAsBool("fritzbox", "showUnknownCaller", true); - checkBoxSaveUnknownCaller.Checked = xmlreader.GetValueAsBool("fritzbox", "saveUnknownCaller", true); + // media settings + checkBoxStopMedia.Checked = xmlreader.GetValueAsBool("fritzbox", "stopMedia", true); + checkBoxResumeMedia.Checked = xmlreader.GetValueAsBool("fritzbox", "resumeMedia", true); - checkBoxShowUnknownCaller.Enabled = checkBoxUsePhonebook.Checked; - checkBoxSaveUnknownCaller.Enabled = checkBoxUsePhonebook.Checked; + // phonebook settings + checkBoxUsePhonebook.Checked = xmlreader.GetValueAsBool("fritzbox", "usePhonebook", true); + checkBoxShowUnknownCaller.Checked = xmlreader.GetValueAsBool("fritzbox", "showUnknownCaller", true); + checkBoxSaveUnknownCaller.Checked = xmlreader.GetValueAsBool("fritzbox", "saveUnknownCaller", true); + checkBoxShowUnknownCaller.Enabled = checkBoxUsePhonebook.Checked; + checkBoxSaveUnknownCaller.Enabled = checkBoxUsePhonebook.Checked; + } - string strCallerId = xmlreader.GetValueAsString("fritzbox", "phonebookCallerId", ""); - string strName = xmlreader.GetValueAsString("fritzbox", "phonebookName", ""); - string strShow = xmlreader.GetValueAsString("fritzbox", "phonebookShow", ""); + if ((FritzBox._lastVersion < 0220) && (!File.Exists(Config.GetFile(Config.Dir.Config, "fritzbox.xml")))) + UpdateTo0220(); + else + using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "fritzbox.xml"))) + { + int countCaller = xmlreader.GetValueAsInt("phonebook", "count", 0); - if (strCallerId != "") + for (int i = 0; i < countCaller; i++) { - string[] strListCallerId = strCallerId.Split(';'); - string[] strListName = strName.Split(';'); - string[] strListShow = strShow.Split(';'); + string strCallerId = xmlreader.GetValueAsString("phonebook", string.Format("callerID{0}", i.ToString()), ""); + string strName = xmlreader.GetValueAsString("phonebook", string.Format("name{0}", i.ToString()), ""); + bool bShow = xmlreader.GetValueAsBool("phonebook", string.Format("show{0}", i.ToString()), false); - for (int i = 0; i < strListCallerId.GetUpperBound(0); i++) - dataGridView.Rows.Add(strListCallerId[i], strListName[i], bool.Parse(strListShow[i])); + if (strCallerId == "") continue; + if (strCallerId == null) continue; + if (strName == "") continue; + if (strName == null) continue; + + dataGridView.Rows.Add(strCallerId, strName, bShow); } } } + private void UpdateTo0220() + { + using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "MediaPortal.xml"))) + { + string strCallerId = xmlreader.GetValueAsString("fritzbox", "phonebookCallerId", ""); + string strName = xmlreader.GetValueAsString("fritzbox", "phonebookName", ""); + string strShow = xmlreader.GetValueAsString("fritzbox", "phonebookShow", ""); + + if (strCallerId != "") + { + string[] strListCallerId = strCallerId.Split(';'); + string[] strListName = strName.Split(';'); + string[] strListShow = strShow.Split(';'); + + for (int i = 0; i < strListCallerId.GetUpperBound(0); i++) + dataGridView.Rows.Add(strListCallerId[i], strListName[i], bool.Parse(strListShow[i])); + } + } + } + private void SaveSettings() { Log.Info("FRITZ!Box: SaveSettings"); using (MediaPortal.Profile.Settings xmlwriter = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "MediaPortal.xml"))) { + xmlwriter.SetValue("fritzbox", "lastVersion", FritzBox._version.Replace(".", string.Empty)); + xmlwriter.SetValueAsBool("fritzbox", "extensiveLogging", checkBoxExtensiveLogging.Checked); xmlwriter.SetValue("fritzbox", "address", textBoxAddress.Text); @@ -825,22 +856,22 @@ xmlwriter.SetValueAsBool("fritzbox", "usePhonebook", checkBoxUsePhonebook.Checked); xmlwriter.SetValueAsBool("fritzbox", "showUnknownCaller", checkBoxShowUnknownCaller.Checked); xmlwriter.SetValueAsBool("fritzbox", "saveUnknownCaller", checkBoxSaveUnknownCaller.Checked); + } + using (MediaPortal.Profile.Settings xmlwriter = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "fritzbox.xml"))) + { + xmlwriter.SetValue("phonebook", "count", dataGridView.RowCount - 1); - string strCallerId = ""; - string strName = ""; - string strShow = ""; - for (int i = 0; i < dataGridView.RowCount - 1; i++) { - strCallerId += dataGridView.Rows[i].Cells[0].Value.ToString() + ";"; - strName += dataGridView.Rows[i].Cells[1].Value.ToString() + ";"; - strShow += dataGridView.Rows[i].Cells[2].Value.ToString() + ";"; + string strCallerId = dataGridView.Rows[i].Cells[0].Value.ToString(); + string strName = dataGridView.Rows[i].Cells[1].Value.ToString(); + bool strShow = bool.Parse(dataGridView.Rows[i].Cells[2].Value.ToString()); + + xmlwriter.SetValue("phonebook", string.Format("callerID{0}", i.ToString()), strCallerId); + xmlwriter.SetValue("phonebook", string.Format("name{0}", i.ToString()), strName); + xmlwriter.SetValueAsBool("phonebook", string.Format("show{0}", i.ToString()), strShow); } - - xmlwriter.SetValue("fritzbox", "phonebookCallerId", strCallerId); - xmlwriter.SetValue("fritzbox", "phonebookName", strName); - xmlwriter.SetValue("fritzbox", "phonebookShow", strShow); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <an...@us...> - 2007-04-07 14:39:24
|
Revision: 295 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=295&view=rev Author: and-81 Date: 2007-04-07 07:39:22 -0700 (Sat, 07 Apr 2007) Log Message: ----------- Modified Paths: -------------- trunk/plugins/MCEReplacement/AssemblyInfo.cs trunk/plugins/MCEReplacement/MCEReplacement.cs trunk/plugins/MCEReplacement/Win32.cs Modified: trunk/plugins/MCEReplacement/AssemblyInfo.cs =================================================================== --- trunk/plugins/MCEReplacement/AssemblyInfo.cs 2007-04-07 09:44:22 UTC (rev 294) +++ trunk/plugins/MCEReplacement/AssemblyInfo.cs 2007-04-07 14:39:22 UTC (rev 295) @@ -34,8 +34,8 @@ // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.0.3.0")] -[assembly: AssemblyFileVersionAttribute("1.0.3.0")] +[assembly: AssemblyVersion("1.0.3.1")] +[assembly: AssemblyFileVersionAttribute("1.0.3.1")] // // In order to sign your assembly you must specify a key to use. Refer to the Modified: trunk/plugins/MCEReplacement/MCEReplacement.cs =================================================================== --- trunk/plugins/MCEReplacement/MCEReplacement.cs 2007-04-07 09:44:22 UTC (rev 294) +++ trunk/plugins/MCEReplacement/MCEReplacement.cs 2007-04-07 14:39:22 UTC (rev 295) @@ -27,7 +27,7 @@ #region Constants - public const string PluginVersion = "MCE Replacement Plugin 1.0.3.0 for MediaPortal 0.2.2.0 + SVN"; + public const string PluginVersion = "MCE Replacement Plugin 1.0.3.1 for MediaPortal 0.2.2.0 + SVN"; public const int MessageModeCommand = 0x0018; @@ -2218,12 +2218,23 @@ try { if (proc.MainModule.FileName == commands[0]) + { windowHandle = proc.MainWindowHandle; + break; + } } catch { } } + + // if it wasn't an application, try a class + if (windowHandle == IntPtr.Zero) + windowHandle = Win32.FindWindow(commands[0], null); + + // if still not found, try window title + if (windowHandle == IntPtr.Zero) + windowHandle = Win32.FindWindow(null, commands[0]); } if (windowHandle == IntPtr.Zero) Modified: trunk/plugins/MCEReplacement/Win32.cs =================================================================== --- trunk/plugins/MCEReplacement/Win32.cs 2007-04-07 09:44:22 UTC (rev 294) +++ trunk/plugins/MCEReplacement/Win32.cs 2007-04-07 14:39:22 UTC (rev 295) @@ -35,11 +35,14 @@ #region Interop [DllImport("user32")] - public static extern IntPtr GetForegroundWindow(); + internal static extern IntPtr GetForegroundWindow(); [DllImport("user32", SetLastError = false)] - public static extern IntPtr SendMessage(IntPtr windowHandle, int msg, IntPtr wordParam, IntPtr longParam); + internal static extern IntPtr SendMessage(IntPtr windowHandle, int msg, IntPtr wordParam, IntPtr longParam); + [DllImport("user32", SetLastError = true)] + internal static extern IntPtr FindWindow(string lpClassName, string lpWindowName); + #endregion Interop } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <du...@us...> - 2007-04-07 09:44:23
|
Revision: 294 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=294&view=rev Author: dukus Date: 2007-04-07 02:44:22 -0700 (Sat, 07 Apr 2007) Log Message: ----------- Modified Paths: -------------- trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj trunk/plugins/mpinstaler/MPInstaler/MPinstalerStruct.cs trunk/plugins/mpinstaler/MPInstaler/wizard/wizard_1.cs Added Paths: ----------- trunk/plugins/mpinstaler/MPInstaler/MPIutils.cs Modified: trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj 2007-04-07 08:26:43 UTC (rev 293) +++ trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj 2007-04-07 09:44:22 UTC (rev 294) @@ -189,6 +189,7 @@ <Compile Include="wizard\controlp.Designer.cs"> <DependentUpon>controlp.cs</DependentUpon> </Compile> + <Compile Include="MPIutils.cs" /> <Compile Include="wizard\wizard_1.cs"> <SubType>Form</SubType> </Compile> Added: trunk/plugins/mpinstaler/MPInstaler/MPIutils.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/MPIutils.cs (rev 0) +++ trunk/plugins/mpinstaler/MPInstaler/MPIutils.cs 2007-04-07 09:44:22 UTC (rev 294) @@ -0,0 +1,22 @@ +using System; +using System.Diagnostics; +using System.Collections.Generic; +using System.Text; + +namespace MPInstaler +{ + public class MPIutils + { + public MPIutils() + { + } + + static public void StartApp(string file) + { + Process app = new Process(); + app.StartInfo.FileName = file; + app.StartInfo.Arguments = ""; + app.Start(); + } + } +} Modified: trunk/plugins/mpinstaler/MPInstaler/MPinstalerStruct.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/MPinstalerStruct.cs 2007-04-07 08:26:43 UTC (rev 293) +++ trunk/plugins/mpinstaler/MPInstaler/MPinstalerStruct.cs 2007-04-07 09:44:22 UTC (rev 294) @@ -707,6 +707,23 @@ else return false; } + public void ExecuteAction() + { + switch (Place) + { + case "POSTSETUP": + switch (Id) + { + case 0: + MPIutils.StartApp(Config.GetFile(Config.Dir.Base,Command)); + break; + case 1: + break; + } + break; + } + } + override public string ToString() { string x_ret = string.Empty; Modified: trunk/plugins/mpinstaler/MPInstaler/wizard/wizard_1.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/wizard/wizard_1.cs 2007-04-07 08:26:43 UTC (rev 293) +++ trunk/plugins/mpinstaler/MPInstaler/wizard/wizard_1.cs 2007-04-07 09:44:22 UTC (rev 294) @@ -14,6 +14,7 @@ public int step = 0; public MPpackageStruct package; MPInstallHelper inst = new MPInstallHelper(); + List<ActionInfo> actions = new List<ActionInfo>(); public wizard_1() { package = new MPpackageStruct(); @@ -188,6 +189,7 @@ ActionInfo ac = package._intalerStruct.FindAction("POSTSETUP"); if (ac != null) { + actions.Add(ac); listBox1.Visible = false; skinlister.Items.Clear(); skinlister.Visible = true; @@ -244,7 +246,19 @@ private void button_cancel_Click(object sender, EventArgs e) { - this.Close(); + if (step == 7) + { + foreach (ActionInfo ac in actions) + { + int i=skinlister.Items.IndexOf(ac.ToString()); + if (skinlister.GetSelected(i)) + ac.ExecuteAction(); + } + } + else + { + this.Close(); + } } private void button_back_Click(object sender, EventArgs e) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <du...@us...> - 2007-04-07 08:26:45
|
Revision: 293 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=293&view=rev Author: dukus Date: 2007-04-07 01:26:43 -0700 (Sat, 07 Apr 2007) Log Message: ----------- post_setup added Added Paths: ----------- trunk/plugins/mpinstaler/MPInstaler/post_setup.Designer.cs trunk/plugins/mpinstaler/MPInstaler/post_setup.cs trunk/plugins/mpinstaler/MPInstaler/post_setup.resx Added: trunk/plugins/mpinstaler/MPInstaler/post_setup.Designer.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/post_setup.Designer.cs (rev 0) +++ trunk/plugins/mpinstaler/MPInstaler/post_setup.Designer.cs 2007-04-07 08:26:43 UTC (rev 293) @@ -0,0 +1,141 @@ +namespace MPInstaler +{ + partial class post_setup + { + /// <summary> + /// Required designer variable. + /// </summary> + private System.ComponentModel.IContainer components = null; + + /// <summary> + /// Clean up any resources being used. + /// </summary> + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() + { + this.groupBox1 = new System.Windows.Forms.GroupBox(); + this.comboBox1 = new System.Windows.Forms.ComboBox(); + this.comboBox2 = new System.Windows.Forms.ComboBox(); + this.label1 = new System.Windows.Forms.Label(); + this.label2 = new System.Windows.Forms.Label(); + this.button1 = new System.Windows.Forms.Button(); + this.button2 = new System.Windows.Forms.Button(); + this.groupBox1.SuspendLayout(); + this.SuspendLayout(); + // + // groupBox1 + // + this.groupBox1.Controls.Add(this.label2); + this.groupBox1.Controls.Add(this.label1); + this.groupBox1.Controls.Add(this.comboBox2); + this.groupBox1.Controls.Add(this.comboBox1); + this.groupBox1.Location = new System.Drawing.Point(1, 5); + this.groupBox1.Name = "groupBox1"; + this.groupBox1.Size = new System.Drawing.Size(308, 94); + this.groupBox1.TabIndex = 0; + this.groupBox1.TabStop = false; + this.groupBox1.Text = "After setup"; + // + // comboBox1 + // + this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.comboBox1.FormattingEnabled = true; + this.comboBox1.Items.AddRange(new object[] { + "Run program", + "Configure plugin"}); + this.comboBox1.Location = new System.Drawing.Point(8, 28); + this.comboBox1.Name = "comboBox1"; + this.comboBox1.Size = new System.Drawing.Size(294, 21); + this.comboBox1.TabIndex = 0; + this.comboBox1.SelectedIndexChanged += new System.EventHandler(this.comboBox1_SelectedIndexChanged); + // + // comboBox2 + // + this.comboBox2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.comboBox2.FormattingEnabled = true; + this.comboBox2.Location = new System.Drawing.Point(6, 67); + this.comboBox2.Name = "comboBox2"; + this.comboBox2.Size = new System.Drawing.Size(296, 21); + this.comboBox2.TabIndex = 1; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Location = new System.Drawing.Point(6, 12); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(37, 13); + this.label1.TabIndex = 2; + this.label1.Text = "Action"; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Location = new System.Drawing.Point(6, 52); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(38, 13); + this.label2.TabIndex = 3; + this.label2.Text = "Option"; + // + // button1 + // + this.button1.Location = new System.Drawing.Point(12, 272); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(75, 23); + this.button1.TabIndex = 1; + this.button1.Text = "Ok"; + this.button1.UseVisualStyleBackColor = true; + this.button1.Click += new System.EventHandler(this.button1_Click); + // + // button2 + // + this.button2.Location = new System.Drawing.Point(226, 272); + this.button2.Name = "button2"; + this.button2.Size = new System.Drawing.Size(75, 23); + this.button2.TabIndex = 2; + this.button2.Text = "Cancel"; + this.button2.UseVisualStyleBackColor = true; + this.button2.Click += new System.EventHandler(this.button2_Click); + // + // post_setup + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(313, 307); + this.Controls.Add(this.button2); + this.Controls.Add(this.button1); + this.Controls.Add(this.groupBox1); + this.Name = "post_setup"; + this.Text = "Setup"; + this.Load += new System.EventHandler(this.post_setup_Load); + this.groupBox1.ResumeLayout(false); + this.groupBox1.PerformLayout(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.GroupBox groupBox1; + private System.Windows.Forms.ComboBox comboBox1; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.ComboBox comboBox2; + private System.Windows.Forms.Button button1; + private System.Windows.Forms.Button button2; + } +} \ No newline at end of file Added: trunk/plugins/mpinstaler/MPInstaler/post_setup.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/post_setup.cs (rev 0) +++ trunk/plugins/mpinstaler/MPInstaler/post_setup.cs 2007-04-07 08:26:43 UTC (rev 293) @@ -0,0 +1,60 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Windows.Forms; + +namespace MPInstaler +{ + public partial class post_setup : Form + { + public MPinstalerStruct _struct; + public post_setup() + { + InitializeComponent(); + } + + private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) + { + switch (comboBox1.SelectedIndex) + { + case 0: + comboBox2.Items.Clear(); + comboBox2.Items.Add("MediaPortal.exe"); + comboBox2.Items.Add("Configuration.exe"); + break; + case 1: + comboBox2.Items.Clear(); + foreach (MPIFileList fl in _struct.FileList) + { + if (fl.Type == MPinstalerStruct.PLUGIN_TYPE) + comboBox2.Items.Add(fl.FileNameShort); + } + break; + } + } + + private void button1_Click(object sender, EventArgs e) + { + _struct.AddAction(new ActionInfo("POSTSETUP",comboBox1.SelectedIndex,comboBox2.Text)); + this.Close(); + } + + private void button2_Click(object sender, EventArgs e) + { + this.Close(); + } + + private void post_setup_Load(object sender, EventArgs e) + { + ActionInfo a = _struct.FindAction("POSTSETUP"); + if (a != null) + { + comboBox1.SelectedIndex = a.Id; + comboBox2.Text = a.Command; + } + } + } +} \ No newline at end of file Added: trunk/plugins/mpinstaler/MPInstaler/post_setup.resx =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/post_setup.resx (rev 0) +++ trunk/plugins/mpinstaler/MPInstaler/post_setup.resx 2007-04-07 08:26:43 UTC (rev 293) @@ -0,0 +1,120 @@ +<?xml version="1.0" encoding="utf-8"?> +<root> + <!-- + Microsoft ResX Schema + + Version 2.0 + + The primary goals of this format is to allow a simple XML format + that is mostly human readable. The generation and parsing of the + various data types are done through the TypeConverter classes + associated with the data types. + + Example: + + ... ado.net/XML headers & schema ... + <resheader name="resmimetype">text/microsoft-resx</resheader> + <resheader name="version">2.0</resheader> + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> + <value>[base64 mime encoded serialized .NET Framework object]</value> + </data> + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> + <comment>This is a comment</comment> + </data> + + There are any number of "resheader" rows that contain simple + name/value pairs. + + Each data row contains a name, and value. The row also contains a + type or mimetype. Type corresponds to a .NET class that support + text/value conversion through the TypeConverter architecture. + Classes that don't support this are serialized and stored with the + mimetype set. + + The mimetype is used for serialized objects, and tells the + ResXResourceReader how to depersist the object. This is currently not + extensible. For a given mimetype the value must be set accordingly: + + Note - application/x-microsoft.net.object.binary.base64 is the format + that the ResXResourceWriter will generate, however the reader can + read any of the formats listed below. + + mimetype: application/x-microsoft.net.object.binary.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.soap.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> + <xsd:element name="root" msdata:IsDataSet="true"> + <xsd:complexType> + <xsd:choice maxOccurs="unbounded"> + <xsd:element name="metadata"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" /> + </xsd:sequence> + <xsd:attribute name="name" use="required" type="xsd:string" /> + <xsd:attribute name="type" type="xsd:string" /> + <xsd:attribute name="mimetype" type="xsd:string" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="assembly"> + <xsd:complexType> + <xsd:attribute name="alias" type="xsd:string" /> + <xsd:attribute name="name" type="xsd:string" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="data"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="resheader"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" /> + </xsd:complexType> + </xsd:element> + </xsd:choice> + </xsd:complexType> + </xsd:element> + </xsd:schema> + <resheader name="resmimetype"> + <value>text/microsoft-resx</value> + </resheader> + <resheader name="version"> + <value>2.0</value> + </resheader> + <resheader name="reader"> + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <resheader name="writer"> + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> +</root> \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <du...@us...> - 2007-04-06 20:59:31
|
Revision: 292 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=292&view=rev Author: dukus Date: 2007-04-06 13:57:41 -0700 (Fri, 06 Apr 2007) Log Message: ----------- Basic action possibilities added Modified Paths: -------------- trunk/plugins/mpinstaler/MPInstaler/Form1.Designer.cs trunk/plugins/mpinstaler/MPInstaler/Form1.cs trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj trunk/plugins/mpinstaler/MPInstaler/MPinstalerStruct.cs trunk/plugins/mpinstaler/MPInstaler/wizard/wizard_1.cs Modified: trunk/plugins/mpinstaler/MPInstaler/Form1.Designer.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Form1.Designer.cs 2007-04-05 21:28:16 UTC (rev 291) +++ trunk/plugins/mpinstaler/MPInstaler/Form1.Designer.cs 2007-04-06 20:57:41 UTC (rev 292) @@ -104,6 +104,8 @@ this.openToolStripButton = new System.Windows.Forms.ToolStripButton(); this.saveToolStripButton = new System.Windows.Forms.ToolStripButton(); this.toolStripContainer1 = new System.Windows.Forms.ToolStripContainer(); + this.customizationToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.postSetupToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.menuStrip1.SuspendLayout(); this.contextMenuStrip1.SuspendLayout(); this.tabPage_Skin.SuspendLayout(); @@ -122,7 +124,8 @@ // this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.fileToolStripMenuItem, - this.addToolStripMenuItem}); + this.addToolStripMenuItem, + this.customizationToolStripMenuItem}); this.menuStrip1.Location = new System.Drawing.Point(0, 0); this.menuStrip1.Name = "menuStrip1"; this.menuStrip1.Size = new System.Drawing.Size(675, 24); @@ -797,6 +800,21 @@ this.toolStripContainer1.TabIndex = 5; this.toolStripContainer1.Text = "toolStripContainer1"; // + // customizationToolStripMenuItem + // + this.customizationToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.postSetupToolStripMenuItem}); + this.customizationToolStripMenuItem.Name = "customizationToolStripMenuItem"; + this.customizationToolStripMenuItem.Size = new System.Drawing.Size(47, 20); + this.customizationToolStripMenuItem.Text = "Setup"; + // + // postSetupToolStripMenuItem + // + this.postSetupToolStripMenuItem.Name = "postSetupToolStripMenuItem"; + this.postSetupToolStripMenuItem.Size = new System.Drawing.Size(152, 22); + this.postSetupToolStripMenuItem.Text = "Post Setup"; + this.postSetupToolStripMenuItem.Click += new System.EventHandler(this.postSetupToolStripMenuItem_Click); + // // Form1 // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); @@ -916,6 +934,8 @@ private System.Windows.Forms.ToolStripButton openToolStripButton; private System.Windows.Forms.ToolStripButton saveToolStripButton; private System.Windows.Forms.ToolStripContainer toolStripContainer1; + private System.Windows.Forms.ToolStripMenuItem customizationToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem postSetupToolStripMenuItem; } } Modified: trunk/plugins/mpinstaler/MPInstaler/Form1.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Form1.cs 2007-04-05 21:28:16 UTC (rev 291) +++ trunk/plugins/mpinstaler/MPInstaler/Form1.cs 2007-04-06 20:57:41 UTC (rev 292) @@ -529,5 +529,12 @@ { _struct.Logo = pictureBox1.Image; } + + private void postSetupToolStripMenuItem_Click(object sender, EventArgs e) + { + post_setup dlg = new post_setup(); + dlg._struct = this._struct; + dlg.ShowDialog(); + } } } \ No newline at end of file Modified: trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj 2007-04-05 21:28:16 UTC (rev 291) +++ trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj 2007-04-06 20:57:41 UTC (rev 292) @@ -101,6 +101,12 @@ <Compile Include="OptionForm.Designer.cs"> <DependentUpon>OptionForm.cs</DependentUpon> </Compile> + <Compile Include="post_setup.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="post_setup.Designer.cs"> + <DependentUpon>post_setup.cs</DependentUpon> + </Compile> <Compile Include="Program.cs" /> <Compile Include="Properties\AssemblyInfo.cs" /> <EmbeddedResource Include="Build dialog.resx"> @@ -123,6 +129,10 @@ <SubType>Designer</SubType> <DependentUpon>OptionForm.cs</DependentUpon> </EmbeddedResource> + <EmbeddedResource Include="post_setup.resx"> + <SubType>Designer</SubType> + <DependentUpon>post_setup.cs</DependentUpon> + </EmbeddedResource> <EmbeddedResource Include="Properties\Resources.resx"> <Generator>ResXFileCodeGenerator</Generator> <LastGenOutput>Resources.Designer.cs</LastGenOutput> Modified: trunk/plugins/mpinstaler/MPInstaler/MPinstalerStruct.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/MPinstalerStruct.cs 2007-04-05 21:28:16 UTC (rev 291) +++ trunk/plugins/mpinstaler/MPInstaler/MPinstalerStruct.cs 2007-04-06 20:57:41 UTC (rev 292) @@ -46,10 +46,12 @@ public ArrayList Uninstall = new ArrayList(); public ArrayList FileList = new ArrayList(); public List<LanguageString> Language; + public List<ActionInfo> Actions; public MPinstalerStruct() { Language = new List<LanguageString>(); + Actions = new List<ActionInfo>(); } public string UpdateURL { @@ -115,9 +117,50 @@ FileList.Add(new MPIFileList(lst.Items[i].SubItems[3].Text, lst.Items[i].SubItems[1].Text, lst.Items[i].SubItems[2].Text, lst.Items[i].SubItems[4].Text)); } } + public ActionInfo FindAction(string p) + { + int idx = -1; + for (int i = 0; i < Actions.Count; i++) + { + if (Actions[i].Place==p) + { + idx = i; + break; + } + } + if (idx > -1) + return Actions[idx]; + else return null; + } + + public void AddAction(ActionInfo a) + { + int idx = -1; + for (int i = 0; i < Actions.Count; i++) + { + if (Actions[i].Equals(a)) + { + idx = i; + break; + } + } + if (idx > -1) + { + Actions[idx].Place = a.Place; + Actions[idx].Id = a.Id; + Actions[idx].Command = a.Command; + } + else + { + Actions.Add(a); + } + } + public void Clear() { FileList.Clear(); + Language.Clear(); + Actions.Clear(); BuildFileName = string.Empty; ProiectdFileName = string.Empty; Author = string.Empty; @@ -174,6 +217,16 @@ writer.WriteEndElement(); } writer.WriteEndElement(); + writer.WriteStartElement("Actions"); + foreach (ActionInfo ai in Actions) + { + writer.WriteStartElement("Action"); + writer.WriteAttributeString("Place", ai.Place); + writer.WriteAttributeString("Id", ai.Id.ToString()); + writer.WriteAttributeString("Command", ai.Command); + writer.WriteEndElement(); + } + writer.WriteEndElement(); writer.WriteStartElement("Option"); writer.WriteElementString("BuildFileName", this.BuildFileName); writer.WriteElementString("ProiectFileName", Path.GetFullPath(this.ProiectdFileName)); @@ -291,6 +344,13 @@ langnode.SelectSingleNode("id").InnerText, langnode.SelectSingleNode("value").InnerText)); } + XmlNodeList actionList = ver.SelectNodes("Actions/Action"); + foreach (XmlNode actionnode in actionList) + { + Actions.Add(new ActionInfo(actionnode.Attributes["Place"].Value, + Convert.ToInt32(actionnode.Attributes["Id"].Value), + actionnode.Attributes["Command"].Value)); + } XmlNode nodeoption = ver.SelectSingleNode("Option"); this.BuildFileName = nodeoption.SelectSingleNode("BuildFileName").InnerText; this.Name = nodeoption.SelectSingleNode("ProiectName").InnerText; @@ -489,6 +549,11 @@ set { _FileName = value; } } + public string FileNameShort + { + get { return Path.GetFileName(_FileName); } + } + public string Type { get { return _Type; } @@ -623,4 +688,43 @@ } } } + + public class ActionInfo : IEquatable<ActionInfo> + { + public String Place; + public int Id; + public String Command; + public ActionInfo(string p,int i, string c) + { + Place = p; + Id = i; + Command = c; + } + public bool Equals(ActionInfo ac) + { + if (Place == ac.Place && Id == ac.Id) + return true; + else return false; + } + + override public string ToString() + { + string x_ret = string.Empty; + switch (Place) + { + case "POSTSETUP": + switch (Id) + { + case 0: + x_ret = "Run " + Command; + break; + case 1: + x_ret = "Configure plugin "; + break; + } + break; + } + return x_ret; + } + } } Modified: trunk/plugins/mpinstaler/MPInstaler/wizard/wizard_1.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/wizard/wizard_1.cs 2007-04-05 21:28:16 UTC (rev 291) +++ trunk/plugins/mpinstaler/MPInstaler/wizard/wizard_1.cs 2007-04-06 20:57:41 UTC (rev 292) @@ -185,6 +185,16 @@ inst.Add(package); inst.SaveToFile(); label2.Text = "Done ..."; + ActionInfo ac = package._intalerStruct.FindAction("POSTSETUP"); + if (ac != null) + { + listBox1.Visible = false; + skinlister.Items.Clear(); + skinlister.Visible = true; + progressBar1.Visible = false; + progressBar2.Visible = false; + skinlister.Items.Add(ac.ToString()); + } button_cancel.Text = "Finish"; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mis...@us...> - 2007-04-05 21:28:20
|
Revision: 291 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=291&view=rev Author: misterd_sf Date: 2007-04-05 14:28:16 -0700 (Thu, 05 Apr 2007) Log Message: ----------- MPlayer: Added possibility to play TVServer streams, by typing the url Modified Paths: -------------- trunk/plugins/My MPlayer/MPlayer_ExtPlayer/ConfigurationManager.cs Modified: trunk/plugins/My MPlayer/MPlayer_ExtPlayer/ConfigurationManager.cs =================================================================== --- trunk/plugins/My MPlayer/MPlayer_ExtPlayer/ConfigurationManager.cs 2007-04-05 19:39:17 UTC (rev 290) +++ trunk/plugins/My MPlayer/MPlayer_ExtPlayer/ConfigurationManager.cs 2007-04-05 21:28:16 UTC (rev 291) @@ -704,12 +704,16 @@ Log.Info("MPlayer: StreamProtocol: " + protocol); Log.Info("MPlayer: StremFilename: " + file); arguments.Append(extensionSettings[protocol].Arguments); - arguments.Append(extensionSettings[System.IO.Path.GetExtension(fileName)]); + if (extensionSettings.ContainsKey(System.IO.Path.GetExtension(fileName))) { + arguments.Append(extensionSettings[System.IO.Path.GetExtension(fileName)]); + isVideo = extensionSettings[System.IO.Path.GetExtension(fileName)].PlayMode == PlayMode.Video; + } else { + isVideo = true; + } arguments.Append(" \""); arguments.Append(protocol); arguments.Append(file); arguments.Append("\""); - isVideo = extensionSettings[System.IO.Path.GetExtension(fileName)].PlayMode == PlayMode.Video; } else if (fileName.EndsWith(".cda")) { String drive = System.IO.Path.GetDirectoryName(fileName); if (drive.EndsWith("\\")) { @@ -754,7 +758,8 @@ ext = ext.ToLower(); if (ext.Equals(".mplayer")) { if (filename.StartsWith("dvd://") || filename.StartsWith("vcd://") || filename.StartsWith("svcd://") - || filename.StartsWith("cue://")) { + || filename.StartsWith("cue://") + || filename.StartsWith("ZZZZ://")) { return true; } filename = filename.Remove(filename.LastIndexOf(".mplayer")); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <du...@us...> - 2007-04-05 19:39:19
|
Revision: 290 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=290&view=rev Author: dukus Date: 2007-04-05 12:39:17 -0700 (Thu, 05 Apr 2007) Log Message: ----------- Online tab bug fixed (new version checking) Modified Paths: -------------- trunk/plugins/mpinstaler/MPInstaler/MPpackageStruct.cs Modified: trunk/plugins/mpinstaler/MPInstaler/MPpackageStruct.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/MPpackageStruct.cs 2007-04-04 21:32:09 UTC (rev 289) +++ trunk/plugins/mpinstaler/MPInstaler/MPpackageStruct.cs 2007-04-05 19:39:17 UTC (rev 290) @@ -275,8 +275,7 @@ ((MPpackageStruct)this.lst[idx]).isUpdated = true; ((MPpackageStruct)this.lst[idx]).isNew = false; - }else - ((MPpackageStruct)this.lst[idx]).isNew = true; + } } } @@ -741,7 +740,7 @@ } catch (Exception ex) { - MessageBox.Show("Language reader error : " + ex.Message); + MessageBox.Show(strFileName+"\nLanguage reader error : " + ex.Message+ ex.Source+ex.StackTrace); return false; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ze...@us...> - 2007-04-04 21:32:35
|
Revision: 289 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=289&view=rev Author: zebons Date: 2007-04-04 14:32:09 -0700 (Wed, 04 Apr 2007) Log Message: ----------- Corrected bug on filter dialog for plugin files Modified Paths: -------------- trunk/plugins/mpinstaler/MPInstaler/Form1.cs Modified: trunk/plugins/mpinstaler/MPInstaler/Form1.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Form1.cs 2007-04-04 20:17:41 UTC (rev 288) +++ trunk/plugins/mpinstaler/MPInstaler/Form1.cs 2007-04-04 21:32:09 UTC (rev 289) @@ -45,7 +45,7 @@ proiectt_textBox1.Focus(); return; } - saveFileDialog1.Filter = "Proiect files (*.xmp)|*.xmp|All files |*.*"; + saveFileDialog1.Filter = "Proiect files (*.xmp)|*.xmp|All files (*.*)|*.*"; saveFileDialog1.DefaultExt = "*.xmp"; if (Path.GetFileName(proiect_file_name) == "Untitled"||String.IsNullOrEmpty(proiect_file_name.Trim())) { @@ -74,7 +74,7 @@ 5 - external player */ string fil; - openFileDialog1.Filter = "Dll files|*.dll|*.exe|All files|*.*"; + openFileDialog1.Filter = "dll files (*.dll)|*.dll|exe files (*.exe)|*.exe|All files (*.*)|*.*"; openFileDialog1.FileName = ""; openFileDialog1.DefaultExt = "*.dll"; if (openFileDialog1.ShowDialog(this) == DialogResult.OK) @@ -104,7 +104,7 @@ } private void addtext() { - openFileDialog1.Filter = "txt files|*.txt|All files|*.*"; + openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"; openFileDialog1.FileName = ""; openFileDialog1.DefaultExt = "*.txt"; openFileDialog1.Multiselect = true; @@ -124,10 +124,10 @@ openFileDialog1.Multiselect = true; switch (type) { - case 1: openFileDialog1.Filter = "xml files|*.xml|png files|*.png|bmp files|*.bmp|All files|*.*"; + case 1: openFileDialog1.Filter = "xml files (*.xml)|*.xml|png files (*.png)|*.png|bmp files (*.bmp)|*.bmp|All files (*.*)|*.*"; openFileDialog1.DefaultExt = "*.xml"; break; - case 2: openFileDialog1.Filter = "png files|*.png|bmp files|*.bmp|xml files|*.xml|All files|*.*"; + case 2: openFileDialog1.Filter = "png files (*.png)|*.png|bmp files (*.bmp)|*.bmp|xml files (*.xml)|*.xml|All files (*.*)|*.*"; openFileDialog1.DefaultExt = "*.png"; break; } @@ -159,7 +159,7 @@ private void addother(string ty, string sty) { // string fil; - openFileDialog1.Filter = "All files|*.*|xml files|*.xml|png files|*.png|bmp files|*.bmp|jpeg files|*.jpg"; + openFileDialog1.Filter = "All files (*.*)|*.*|xml files (*.xml)|*.xml|png files (*.png)|*.png|bmp files (*.bmp)|*.bmp|jpeg files (*.jpg)|*.jpg"; openFileDialog1.FileName = ""; openFileDialog1.DefaultExt = "*.*"; openFileDialog1.Multiselect = true; @@ -226,7 +226,7 @@ private void openProiectToolStripMenuItem_Click(object sender, EventArgs e) { string fil; - openFileDialog1.Filter = "Proiect files (*.xmp)|*.xmp|All files |*.*"; + openFileDialog1.Filter = "Proiect files (*.xmp)|*.xmp|All files (*.*)|*.*"; openFileDialog1.FileName = ""; openFileDialog1.DefaultExt = "*.xmp"; if (openFileDialog1.ShowDialog(this) == DialogResult.OK) @@ -320,7 +320,7 @@ proiectt_textBox1.Focus(); return; } - saveFileDialog1.Filter = "Proiect files (*.xmp)|*.xmp|All files |*.*"; + saveFileDialog1.Filter = "Proiect files (*.xmp)|*.xmp|All files (*.*)|*.*"; saveFileDialog1.DefaultExt = "*.xmp"; if (saveFileDialog1.ShowDialog(this) == DialogResult.OK) { @@ -514,7 +514,7 @@ private void button_browse_Click(object sender, EventArgs e) { - openFileDialog1.Filter = "All files|*.*|png files|*.png|bmp files|*.bmp|jpeg files|*.jpg"; + openFileDialog1.Filter = "All files (*.*)|*.*|png files (*.png)|*.png|bmp files (*.bmp)|*.bmp|jpeg files (*.jpg)|*.jpg"; openFileDialog1.FileName = ""; openFileDialog1.DefaultExt = "*.*"; openFileDialog1.Multiselect = false; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ze...@us...> - 2007-04-04 20:17:56
|
Revision: 288 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=288&view=rev Author: zebons Date: 2007-04-04 13:17:41 -0700 (Wed, 04 Apr 2007) Log Message: ----------- Add sort function by Header Column clic Modified Paths: -------------- trunk/plugins/mpinstaler/MPInstaler/Form1.Designer.cs trunk/plugins/mpinstaler/MPInstaler/Form1.cs trunk/plugins/mpinstaler/MPInstaler/Language dialog.Designer.cs trunk/plugins/mpinstaler/MPInstaler/Language dialog.cs Modified: trunk/plugins/mpinstaler/MPInstaler/Form1.Designer.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Form1.Designer.cs 2007-04-04 18:01:46 UTC (rev 287) +++ trunk/plugins/mpinstaler/MPInstaler/Form1.Designer.cs 2007-04-04 20:17:41 UTC (rev 288) @@ -352,10 +352,12 @@ this.bossview.Location = new System.Drawing.Point(12, 52); this.bossview.Name = "bossview"; this.bossview.Size = new System.Drawing.Size(651, 215); + this.bossview.Sorting = System.Windows.Forms.SortOrder.Ascending; this.bossview.TabIndex = 2; this.bossview.UseCompatibleStateImageBehavior = false; this.bossview.View = System.Windows.Forms.View.Details; this.bossview.SelectedIndexChanged += new System.EventHandler(this.bossview_SelectedIndexChanged); + this.bossview.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.bossview_ColumnClick); // // columnHeader1 // Modified: trunk/plugins/mpinstaler/MPInstaler/Form1.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Form1.cs 2007-04-04 18:01:46 UTC (rev 287) +++ trunk/plugins/mpinstaler/MPInstaler/Form1.cs 2007-04-04 20:17:41 UTC (rev 288) @@ -17,6 +17,8 @@ private MPinstalerStruct _struct = new MPinstalerStruct(); private string proiect_file_name = "Untitled"; private bool _loading = false; + public int sortColumn; + public Form1() { InitializeComponent(); @@ -419,7 +421,32 @@ } } + private void bossview_ColumnClick(object sender, ColumnClickEventArgs e) + { + // Determine whether the column is the same as the last column clicked. + if (e.Column != sortColumn) + { + // Set the sort column to the new column. + sortColumn = e.Column; + // Set the sort order to ascending by default. + bossview.Sorting = SortOrder.Ascending; + } + else + { + // Determine what the last sort order was and change it. + if (bossview.Sorting == SortOrder.Ascending) + bossview.Sorting = SortOrder.Descending; + else + bossview.Sorting = SortOrder.Ascending; + } + // Call the sort method to manually sort. + bossview.Sort(); + // Set the ListViewItemSorter property to a new ListViewItemComparer + // object. + this.bossview.ListViewItemSorter = new ListViewItemComparer(e.Column, bossview.Sorting, true); + } + private void textToolStripMenuItem1_Click(object sender, EventArgs e) { addother(MPinstalerStruct.THUMBS_TYPE,thumbst_comboBox1.Text); Modified: trunk/plugins/mpinstaler/MPInstaler/Language dialog.Designer.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Language dialog.Designer.cs 2007-04-04 18:01:46 UTC (rev 287) +++ trunk/plugins/mpinstaler/MPInstaler/Language dialog.Designer.cs 2007-04-04 20:17:41 UTC (rev 288) @@ -78,13 +78,14 @@ // this.languageComboBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); this.languageComboBox.FormattingEnabled = true; - this.languageComboBox.Location = new System.Drawing.Point(216, 252); + this.languageComboBox.Location = new System.Drawing.Point(83, 253); this.languageComboBox.Name = "languageComboBox"; - this.languageComboBox.Size = new System.Drawing.Size(168, 21); + this.languageComboBox.Size = new System.Drawing.Size(154, 21); this.languageComboBox.TabIndex = 2; // // listView1 // + this.listView1.AllowColumnReorder = true; this.listView1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); @@ -94,15 +95,18 @@ this.columnHeader3}); this.listView1.FullRowSelect = true; this.listView1.GridLines = true; - this.listView1.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable; - this.listView1.Location = new System.Drawing.Point(12, 12); + this.listView1.LabelEdit = true; + this.listView1.Location = new System.Drawing.Point(12, 11); this.listView1.Name = "listView1"; + this.listView1.ShowItemToolTips = true; this.listView1.Size = new System.Drawing.Size(372, 235); + this.listView1.Sorting = System.Windows.Forms.SortOrder.Ascending; this.listView1.TabIndex = 3; this.listView1.UseCompatibleStateImageBehavior = false; this.listView1.View = System.Windows.Forms.View.Details; this.listView1.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.listView1_MouseDoubleClick); this.listView1.MouseClick += new System.Windows.Forms.MouseEventHandler(this.listView1_MouseDoubleClick); + this.listView1.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listView1_ColumnClick); // // columnHeader1 // @@ -111,11 +115,13 @@ // // columnHeader2 // + this.columnHeader2.DisplayIndex = 2; this.columnHeader2.Text = "Value"; this.columnHeader2.Width = 137; // // columnHeader3 // + this.columnHeader3.DisplayIndex = 1; this.columnHeader3.Text = "Language"; this.columnHeader3.Width = 155; // @@ -130,7 +136,7 @@ // textBox2 // this.textBox2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); - this.textBox2.Location = new System.Drawing.Point(80, 253); + this.textBox2.Location = new System.Drawing.Point(243, 253); this.textBox2.Name = "textBox2"; this.textBox2.Size = new System.Drawing.Size(130, 20); this.textBox2.TabIndex = 5; @@ -149,6 +155,7 @@ // // listView2 // + this.listView2.AllowColumnReorder = true; this.listView2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Right))); this.listView2.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { @@ -163,6 +170,7 @@ this.listView2.UseCompatibleStateImageBehavior = false; this.listView2.View = System.Windows.Forms.View.Details; this.listView2.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.listView2_MouseDoubleClick); + this.listView2.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listView2_ColumnClick); // // columnHeader4 // Modified: trunk/plugins/mpinstaler/MPInstaler/Language dialog.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Language dialog.cs 2007-04-04 18:01:46 UTC (rev 287) +++ trunk/plugins/mpinstaler/MPInstaler/Language dialog.cs 2007-04-04 20:17:41 UTC (rev 288) @@ -1,4 +1,5 @@ using System; +using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.Data; @@ -16,6 +17,7 @@ public partial class Form2 : Form { public string baseDir; + public int sortColumn; public List<LanguageString> Language; public MPLanguageHelper deflang = new MPLanguageHelper(); public MPLanguageHelper lang = new MPLanguageHelper(); @@ -105,7 +107,7 @@ return; } update_listview1(textBox1.Text, textBox2.Text, languageComboBox.Text); - } + } private void button2_Click(object sender, EventArgs e) { @@ -146,7 +148,7 @@ private void button3_Click(object sender, EventArgs e) { Language.Clear(); - for(int i=0;i<listView1.Items.Count;i++) + for (int i = 0; i < listView1.Items.Count; i++) { Language.Add(new LanguageString(listView1.Items[i].SubItems[2].Text, listView1.Items[i].Text, listView1.Items[i].SubItems[1].Text)); } @@ -212,7 +214,7 @@ result = MessageBox.Show(message, caption, buttons); - if(result == DialogResult.No) + if (result == DialogResult.No) return; MPLanguageHelper mplh = new MPLanguageHelper(); foreach (string lg in languageComboBox.Items) @@ -242,7 +244,7 @@ textBox1.Text = listView1.SelectedItems[0].SubItems[0].Text; textBox2.Text = listView1.SelectedItems[0].SubItems[1].Text; languageComboBox.Text = listView1.SelectedItems[0].SubItems[2].Text; -// listView1.Items.Remove(listView1.SelectedItems[0]); + // listView1.Items.Remove(listView1.SelectedItems[0]); } } private void listView1_MouseClick(object sender, MouseEventArgs e) @@ -269,18 +271,120 @@ break; } } - // if (!modify) - // { - ListViewItem item1 = new ListViewItem(wid, 0); - item1.SubItems.Add(wval); - item1.SubItems.Add(wlang); - listView1.Items.AddRange(new ListViewItem[] { item1 }); - // } + // if (!modify) + // { + ListViewItem item1 = new ListViewItem(wid, 0); + item1.SubItems.Add(wval); + item1.SubItems.Add(wlang); + listView1.Items.AddRange(new ListViewItem[] { item1 }); + listView1.Sort(); + // } } - private void listView2_MouseDoubleClick(object sender, MouseEventArgs e) { add_reference_value(); } - } -} \ No newline at end of file + + private void listView1_ColumnClick(object sender, ColumnClickEventArgs e) + { + // Determine whether the column is the same as the last column clicked. + if (e.Column != sortColumn) + { + // Set the sort column to the new column. + sortColumn = e.Column; + // Set the sort order to ascending by default. + listView1.Sorting = SortOrder.Ascending; + } + else + { + // Determine what the last sort order was and change it. + if (listView1.Sorting == SortOrder.Ascending) + listView1.Sorting = SortOrder.Descending; + else + listView1.Sorting = SortOrder.Ascending; + } + + // Call the sort method to manually sort. + listView1.Sort(); + // Set the ListViewItemSorter property to a new ListViewItemComparer + // object. + this.listView1.ListViewItemSorter = new ListViewItemComparer(e.Column, listView1.Sorting, true); + } + + private void listView2_ColumnClick(object sender, ColumnClickEventArgs e) + { + // Determine whether the column is the same as the last column clicked. + if (e.Column != sortColumn) + { + // Set the sort column to the new column. + sortColumn = e.Column; + // Set the sort order to ascending by default. + listView2.Sorting = SortOrder.Ascending; + } + else + { + // Determine what the last sort order was and change it. + if (listView2.Sorting == SortOrder.Ascending) + listView2.Sorting = SortOrder.Descending; + else + listView2.Sorting = SortOrder.Ascending; + } + + // Call the sort method to manually sort. + listView2.Sort(); + // Set the ListViewItemSorter property to a new ListViewItemComparer + // object. + if (e.Column == 0) + this.listView2.ListViewItemSorter = new ListViewItemComparer(e.Column, listView2.Sorting, false); + else + this.listView2.ListViewItemSorter = new ListViewItemComparer(e.Column, listView2.Sorting, true); + } + } + + // Implements the manual sorting of items by columns. + class ListViewItemComparer : IComparer + { + private int col; + private SortOrder order; + public ListViewItemComparer() + { + col = 0; + order = SortOrder.Ascending; + } + // Is the sort alphabetic or number? + public readonly bool Alphabetic; + + public ListViewItemComparer(int column, SortOrder order, bool alphabetic) + { + this.col = column; + this.order = order; + this.Alphabetic = alphabetic; + + } + public int Compare(object x, object y) + { + // Convert the items that must be compared into ListViewItem objects. + string listX = ((ListViewItem)x).SubItems[this.col].Text; + string listY = ((ListViewItem)y).SubItems[this.col].Text; + int val; + // Sort using the specified column and specified sorting type. + if (Alphabetic) + val = listX.CompareTo(listY); + else + { + if (int.Parse(listX) > int.Parse(listY)) + val = 1; + else if (int.Parse(listX) == int.Parse(listY)) + val = 0; + else + val = -1; + } + if (this.order == SortOrder.Ascending) + return val; + else + return val * -1; + } + } + } + + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <an...@us...> - 2007-04-04 18:01:54
|
Revision: 287 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=287&view=rev Author: and-81 Date: 2007-04-04 11:01:46 -0700 (Wed, 04 Apr 2007) Log Message: ----------- Modified Paths: -------------- trunk/plugins/MCEReplacement/Forms/MacroEditor.Designer.cs trunk/plugins/MCEReplacement/Forms/MacroEditor.cs trunk/plugins/MCEReplacement/MCEReplacement.cs trunk/plugins/MCEReplacement/MCEReplacement.csproj Modified: trunk/plugins/MCEReplacement/Forms/MacroEditor.Designer.cs =================================================================== --- trunk/plugins/MCEReplacement/Forms/MacroEditor.Designer.cs 2007-04-04 16:37:30 UTC (rev 286) +++ trunk/plugins/MCEReplacement/Forms/MacroEditor.Designer.cs 2007-04-04 18:01:46 UTC (rev 287) @@ -196,10 +196,8 @@ // // MacroEditor // - this.AcceptButton = this.buttonOK; this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.CancelButton = this.buttonCancel; this.ClientSize = new System.Drawing.Size(312, 329); this.Controls.Add(this.buttonOK); this.Controls.Add(this.buttonTest); Modified: trunk/plugins/MCEReplacement/Forms/MacroEditor.cs =================================================================== --- trunk/plugins/MCEReplacement/Forms/MacroEditor.cs 2007-04-04 16:37:30 UTC (rev 286) +++ trunk/plugins/MCEReplacement/Forms/MacroEditor.cs 2007-04-04 18:01:46 UTC (rev 287) @@ -34,6 +34,11 @@ public const string ToggleInputLayerText = "Toggle Input Handler Layer"; public const string ChangeWindowStateText = "Change Window State"; public const string GetFocusText = "Get Focus"; + public const string ExitCommandText = "Exit MediaPortal"; + public const string StandByCommandText = "Standby"; + public const string HibernateCommandText = "Hibernate"; + public const string RebootCommandText = "Reboot"; + public const string ShutdownCommandText = "Shutdown"; #endregion Constants @@ -80,6 +85,11 @@ comboBoxCommands.Items.Add(ToggleInputLayerText); comboBoxCommands.Items.Add(ChangeWindowStateText); comboBoxCommands.Items.Add(GetFocusText); + comboBoxCommands.Items.Add(ExitCommandText); + comboBoxCommands.Items.Add(StandByCommandText); + comboBoxCommands.Items.Add(HibernateCommandText); + comboBoxCommands.Items.Add(RebootCommandText); + comboBoxCommands.Items.Add(ShutdownCommandText); comboBoxCommands.Items.AddRange(MCEReplacement.GetIRList()); } @@ -105,79 +115,104 @@ if (item.StartsWith(MCEReplacement.BlastCommandPrefix)) { - writer.WriteAttributeString("command", "BLAST"); + writer.WriteAttributeString("command", MCEReplacement.BlastMacroText); writer.WriteAttributeString("cmdproperty", item.Substring(MCEReplacement.BlastCommandPrefix.Length)); } else if (item.StartsWith(MCEReplacement.PauseCommandPrefix)) { - writer.WriteAttributeString("command", "PAUSE"); + writer.WriteAttributeString("command", MCEReplacement.PauseMacroText); writer.WriteAttributeString("cmdproperty", item.Substring(MCEReplacement.PauseCommandPrefix.Length)); } else if (item.StartsWith(MCEReplacement.RunCommandPrefix)) { - writer.WriteAttributeString("command", "RUN"); + writer.WriteAttributeString("command", MCEReplacement.RunMacroText); writer.WriteAttributeString("cmdproperty", item.Substring(MCEReplacement.RunCommandPrefix.Length)); } else if (item.StartsWith(MCEReplacement.GoToCommandPrefix)) { - writer.WriteAttributeString("command", "GOTO"); + writer.WriteAttributeString("command", MCEReplacement.GotoMacroText); writer.WriteAttributeString("cmdproperty", item.Substring(MCEReplacement.GoToCommandPrefix.Length)); } else if (item.StartsWith(MCEReplacement.SerialCommandPrefix)) { - writer.WriteAttributeString("command", "SERIAL"); + writer.WriteAttributeString("command", MCEReplacement.SerialMacroText); writer.WriteAttributeString("cmdproperty", item.Substring(MCEReplacement.SerialCommandPrefix.Length)); } else if (item.StartsWith(MCEReplacement.MessageCommandPrefix)) { - writer.WriteAttributeString("command", "MESSAGE"); + writer.WriteAttributeString("command", MCEReplacement.MessageMacroText); writer.WriteAttributeString("cmdproperty", item.Substring(MCEReplacement.MessageCommandPrefix.Length)); } else if (item.StartsWith(MCEReplacement.KeyCommandPrefix)) { - writer.WriteAttributeString("command", "KEYS"); + writer.WriteAttributeString("command", MCEReplacement.KeysMacroText); writer.WriteAttributeString("cmdproperty", item.Substring(MCEReplacement.KeyCommandPrefix.Length)); } else if (item.StartsWith(MCEReplacement.PopupCommandPrefix)) { - writer.WriteAttributeString("command", "POPUP"); + writer.WriteAttributeString("command", MCEReplacement.PopupMacroText); writer.WriteAttributeString("cmdproperty", item.Substring(MCEReplacement.PopupCommandPrefix.Length)); } else if (item.StartsWith(MCEReplacement.PortCommandPrefix)) { - writer.WriteAttributeString("command", "PORT"); + writer.WriteAttributeString("command", MCEReplacement.PortMacroText); writer.WriteAttributeString("cmdproperty", item.Substring(MCEReplacement.PortCommandPrefix.Length)); } else if (item.StartsWith(MCEReplacement.SpeedCommandPrefix)) { - writer.WriteAttributeString("command", "SPEED"); + writer.WriteAttributeString("command", MCEReplacement.SpeedMacroText); writer.WriteAttributeString("cmdproperty", item.Substring(MCEReplacement.SpeedCommandPrefix.Length)); } else if (item.StartsWith(MCEReplacement.SetMapCommandPrefix)) { - writer.WriteAttributeString("command", "MULTI_MAPPING"); + writer.WriteAttributeString("command", MCEReplacement.MapMacroText); writer.WriteAttributeString("cmdproperty", item.Substring(MCEReplacement.SetMapCommandPrefix.Length)); } else if (item.StartsWith(MCEReplacement.SetMouseCommandPrefix)) { - writer.WriteAttributeString("command", "MOUSE_MODE"); + writer.WriteAttributeString("command", MCEReplacement.MouseMacroText); writer.WriteAttributeString("cmdproperty", item.Substring(MCEReplacement.SetMouseCommandPrefix.Length)); } else if (item.StartsWith(MCEReplacement.InputLayerCommand)) { - writer.WriteAttributeString("command", "INPUT_LAYER"); + writer.WriteAttributeString("command", MCEReplacement.InputLayerMacroText); writer.WriteAttributeString("cmdproperty", "TOGGLE"); } else if (item.StartsWith(MCEReplacement.WindowStateCommand)) { - writer.WriteAttributeString("command", "WINDOW_STATE"); + writer.WriteAttributeString("command", MCEReplacement.WindowStateMacroText); writer.WriteAttributeString("cmdproperty", "TOGGLE"); } else if (item.StartsWith(MCEReplacement.GetFocusCommand)) { - writer.WriteAttributeString("command", "GET_FOCUS"); + writer.WriteAttributeString("command", MCEReplacement.GetFocusMacroText); writer.WriteAttributeString("cmdproperty", ""); - } + } + else if (item.StartsWith(MCEReplacement.ExitCommand)) + { + writer.WriteAttributeString("command", MCEReplacement.ExitMacroText); + writer.WriteAttributeString("cmdproperty", ""); + } + else if (item.StartsWith(MCEReplacement.StandByCommand)) + { + writer.WriteAttributeString("command", MCEReplacement.StandbyMacroText); + writer.WriteAttributeString("cmdproperty", ""); + } + else if (item.StartsWith(MCEReplacement.HibernateCommand)) + { + writer.WriteAttributeString("command", MCEReplacement.HibernateMacroText); + writer.WriteAttributeString("cmdproperty", ""); + } + else if (item.StartsWith(MCEReplacement.RebootCommand)) + { + writer.WriteAttributeString("command", MCEReplacement.RebootMacroText); + writer.WriteAttributeString("cmdproperty", ""); + } + else if (item.StartsWith(MCEReplacement.ShutdownCommand)) + { + writer.WriteAttributeString("command", MCEReplacement.ShutdownMacroText); + writer.WriteAttributeString("cmdproperty", ""); + } writer.WriteEndElement(); } @@ -214,65 +249,85 @@ switch (item.Attributes["command"].Value) { - case "BLAST": + case MCEReplacement.BlastMacroText: listBoxMacro.Items.Add(MCEReplacement.BlastCommandPrefix + commandProperty); break; - case "PAUSE": + case MCEReplacement.PauseMacroText: listBoxMacro.Items.Add(MCEReplacement.PauseCommandPrefix + commandProperty); break; - case "RUN": + case MCEReplacement.RunMacroText: listBoxMacro.Items.Add(MCEReplacement.RunCommandPrefix + commandProperty); break; - case "SERIAL": + case MCEReplacement.SerialMacroText: listBoxMacro.Items.Add(MCEReplacement.SerialCommandPrefix + commandProperty); break; - case "MESSAGE": + case MCEReplacement.MessageMacroText: listBoxMacro.Items.Add(MCEReplacement.MessageCommandPrefix + commandProperty); break; - case "KEYS": + case MCEReplacement.KeysMacroText: listBoxMacro.Items.Add(MCEReplacement.KeyCommandPrefix + commandProperty); break; - case "GOTO": + case MCEReplacement.GotoMacroText: listBoxMacro.Items.Add(MCEReplacement.GoToCommandPrefix + commandProperty); break; - case "POPUP": + case MCEReplacement.PopupMacroText: listBoxMacro.Items.Add(MCEReplacement.PopupCommandPrefix + commandProperty); break; - case "PORT": + case MCEReplacement.PortMacroText: listBoxMacro.Items.Add(MCEReplacement.PortCommandPrefix + commandProperty); break; - case "SPEED": + case MCEReplacement.SpeedMacroText: listBoxMacro.Items.Add(MCEReplacement.SpeedCommandPrefix + commandProperty); break; - case "MULTI_MAPPING": + case MCEReplacement.MapMacroText: listBoxMacro.Items.Add(MCEReplacement.SetMapCommandPrefix + commandProperty); break; - case "MOUSE_MODE": + case MCEReplacement.MouseMacroText: listBoxMacro.Items.Add(MCEReplacement.SetMouseCommandPrefix + commandProperty); break; - case "INPUT_LAYER": + case MCEReplacement.InputLayerMacroText: listBoxMacro.Items.Add(MCEReplacement.InputLayerCommand); break; - case "WINDOW_STATE": + case MCEReplacement.WindowStateMacroText: listBoxMacro.Items.Add(MCEReplacement.WindowStateCommand); break; - case "GET_FOCUS": + case MCEReplacement.GetFocusMacroText: listBoxMacro.Items.Add(MCEReplacement.GetFocusCommand); break; + + case MCEReplacement.ExitMacroText: + listBoxMacro.Items.Add(MCEReplacement.ExitCommand); + break; + + case MCEReplacement.StandbyMacroText: + listBoxMacro.Items.Add(MCEReplacement.StandByCommand); + break; + + case MCEReplacement.HibernateMacroText: + listBoxMacro.Items.Add(MCEReplacement.HibernateCommand); + break; + + case MCEReplacement.RebootMacroText: + listBoxMacro.Items.Add(MCEReplacement.RebootCommand); + break; + + case MCEReplacement.ShutdownMacroText: + listBoxMacro.Items.Add(MCEReplacement.ShutdownCommand); + break; } } } @@ -399,6 +454,26 @@ { listBoxMacro.Items.Add(MCEReplacement.GetFocusCommand); } + else if (selected == ExitCommandText) + { + listBoxMacro.Items.Add(MCEReplacement.ExitCommand); + } + else if (selected == StandByCommandText) + { + listBoxMacro.Items.Add(MCEReplacement.StandByCommand); + } + else if (selected == HibernateCommandText) + { + listBoxMacro.Items.Add(MCEReplacement.HibernateCommand); + } + else if (selected == RebootCommandText) + { + listBoxMacro.Items.Add(MCEReplacement.RebootCommand); + } + else if (selected == ShutdownCommandText) + { + listBoxMacro.Items.Add(MCEReplacement.ShutdownCommand); + } else { listBoxMacro.Items.Add(MCEReplacement.BlastCommandPrefix + selected); @@ -616,6 +691,8 @@ listBoxMacro.Items.Insert(index, MCEReplacement.SpeedCommandPrefix + selectBlasterSpeed.CommandString); listBoxMacro.SelectedIndex = index; } + + // TODO: Add new command types? } } Modified: trunk/plugins/MCEReplacement/MCEReplacement.cs =================================================================== --- trunk/plugins/MCEReplacement/MCEReplacement.cs 2007-04-04 16:37:30 UTC (rev 286) +++ trunk/plugins/MCEReplacement/MCEReplacement.cs 2007-04-04 18:01:46 UTC (rev 287) @@ -11,11 +11,12 @@ using System.Windows.Forms; using System.Xml; +using MediaPortal.Configuration; using MediaPortal.Devices; using MediaPortal.Dialogs; using MediaPortal.GUI.Library; using MediaPortal.Hardware; -using MediaPortal.Configuration; +using MediaPortal.Player; using MediaPortal.Util; namespace MediaPortal.Plugins @@ -26,7 +27,7 @@ #region Constants - public const string PluginVersion = "MCE Replacement Plugin 1.0.3.0 for MediaPortal 0.2.1.0"; + public const string PluginVersion = "MCE Replacement Plugin 1.0.3.0 for MediaPortal 0.2.2.0 + SVN"; public const int MessageModeCommand = 0x0018; @@ -37,7 +38,7 @@ public const string IRExtension = ".IR"; public const string MacroExtension = ".MACRO"; - // Macro Commands + // Plugin Commands public const string RunCommandPrefix = "Run: "; public const string BlastCommandPrefix = "Blast: "; public const string PauseCommandPrefix = "Pause: "; @@ -53,7 +54,34 @@ public const string InputLayerCommand = "Toggle Input Layer"; public const string WindowStateCommand = "Toggle Window State"; public const string GetFocusCommand = "Get Focus"; + public const string ExitCommand = "Exit MediaPortal"; + public const string StandByCommand = "Standby"; + public const string HibernateCommand = "Hibernate"; + public const string RebootCommand = "Reboot"; + public const string ShutdownCommand = "Shutdown"; + // Macro File Commands + public const string BlastMacroText = "BLAST"; + public const string PauseMacroText = "PAUSE"; + public const string RunMacroText = "RUN"; + public const string SerialMacroText = "SERIAL"; + public const string KeysMacroText = "KEYS"; + public const string MessageMacroText = "MESSAGE"; + public const string GotoMacroText = "GOTO"; + public const string PopupMacroText = "POPUP"; + public const string PortMacroText = "PORT"; + public const string SpeedMacroText = "SPEED"; + public const string MapMacroText = "MULTI_MAPPING"; + public const string MouseMacroText = "MOUSE_MODE"; + public const string InputLayerMacroText = "INPUT_LAYER"; + public const string WindowStateMacroText = "WINDOW_STATE"; + public const string GetFocusMacroText = "GET_FOCUS"; + public const string ExitMacroText = "EXIT"; + public const string StandbyMacroText = "STANDBY"; + public const string HibernateMacroText = "HIBERNATE"; + public const string RebootMacroText = "REBOOT"; + public const string ShutdownMacroText = "SHUTDOWN"; + public static readonly string AppDataFolder = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) + "\\MediaPortal MCE Replacement Plugin\\"; @@ -1440,7 +1468,7 @@ switch (item.Attributes["command"].Value) { - case "BLAST": + case BlastMacroText: if (!BlastIR(AppDataFolder + commandProperty + IRExtension, macroPort, macroSpeed)) { file.Close(); @@ -1449,7 +1477,7 @@ } break; - case "PAUSE": + case PauseMacroText: { if (LogVerbose) Log.Debug("MCEReplacement: Pause {0}", commandProperty); @@ -1459,7 +1487,7 @@ break; } - case "RUN": + case RunMacroText: { string[] commands = SplitRunCommand(commandProperty); @@ -1479,7 +1507,7 @@ break; } - case "SERIAL": + case SerialMacroText: { string[] commands = SplitSerialCommand(commandProperty); @@ -1499,7 +1527,7 @@ break; } - case "GOTO": + case GotoMacroText: { if (InConfiguration) MessageBox.Show(commandProperty, "Go To Window", MessageBoxButtons.OK, MessageBoxIcon.Information); @@ -1508,7 +1536,7 @@ break; } - case "POPUP": + case PopupMacroText: { string[] commands = SplitPopupCommand(commandProperty); @@ -1530,15 +1558,15 @@ break; } - case "PORT": + case PortMacroText: macroPort = (MceIrApi.BlasterPort)Enum.Parse(typeof(MceIrApi.BlasterPort), commandProperty); break; - case "SPEED": + case SpeedMacroText: macroSpeed = (MceIrApi.BlasterSpeed)Enum.Parse(typeof(MceIrApi.BlasterSpeed), commandProperty); break; - case "MESSAGE": + case MessageMacroText: { string[] commands = SplitMessageCommand(commandProperty); @@ -1556,7 +1584,7 @@ break; } - case "KEYS": + case KeysMacroText: { if (InConfiguration) { @@ -1572,7 +1600,7 @@ break; } - case "MULTI_MAPPING": + case MapMacroText: { if (InConfiguration) MessageBox.Show(commandProperty, "Change Multi-Mapping Command", MessageBoxButtons.OK, MessageBoxIcon.Information); @@ -1582,7 +1610,7 @@ break; } - case "MOUSE_MODE": + case MouseMacroText: { if (InConfiguration) { @@ -1647,7 +1675,7 @@ break; } - case "INPUT_LAYER": + case InputLayerMacroText: { if (InConfiguration) { @@ -1670,7 +1698,7 @@ break; } - case "WINDOW_STATE": + case WindowStateMacroText: { if (InConfiguration) { @@ -1687,7 +1715,7 @@ break; } - case "GET_FOCUS": + case GetFocusMacroText: { if (InConfiguration) { @@ -1700,6 +1728,85 @@ GUIWindowManager.SendThreadMessage(msg); break; } + + case ExitMacroText: + { + if (!InConfiguration) + { + Log.Info("MCEReplacement: MediaPortal Exit"); + GUIGraphicsContext.OnAction(new Action(Action.ActionType.ACTION_EXIT, 0, 0)); + } + break; + } + + case StandbyMacroText: + { + if (!InConfiguration) + { + Log.Info("MCEReplacement: Request Standby"); + GUIGraphicsContext.ResetLastActivity(); + // Stop all media before suspending or hibernating + g_Player.Stop(); + + GUIMessage msg; + + if (_mpBasicHome) + msg = new GUIMessage(GUIMessage.MessageType.GUI_MSG_GOTO_WINDOW, 0, 0, 0, (int)GUIWindow.Window.WINDOW_SECOND_HOME, 0, null); + else + msg = new GUIMessage(GUIMessage.MessageType.GUI_MSG_GOTO_WINDOW, 0, 0, 0, (int)GUIWindow.Window.WINDOW_HOME, 0, null); + + GUIWindowManager.SendThreadMessage(msg); + + MCEReplacement.OnSuspend(); + WindowsController.ExitWindows(RestartOptions.Suspend, true); + } + break; + } + + case HibernateMacroText: + { + if (!InConfiguration) + { + Log.Info("MCEReplacement: Request Hibernate"); + GUIGraphicsContext.ResetLastActivity(); + // Stop all media before suspending or hibernating + g_Player.Stop(); + + GUIMessage msg; + + if (_mpBasicHome) + msg = new GUIMessage(GUIMessage.MessageType.GUI_MSG_GOTO_WINDOW, 0, 0, 0, (int)GUIWindow.Window.WINDOW_SECOND_HOME, 0, null); + else + msg = new GUIMessage(GUIMessage.MessageType.GUI_MSG_GOTO_WINDOW, 0, 0, 0, (int)GUIWindow.Window.WINDOW_HOME, 0, null); + + GUIWindowManager.SendThreadMessage(msg); + + MCEReplacement.OnSuspend(); + WindowsController.ExitWindows(RestartOptions.Hibernate, true); + } + break; + } + + case RebootMacroText: + { + if (!InConfiguration) + { + Log.Info("MCEReplacement: Reboot"); + GUIGraphicsContext.OnAction(new Action(Action.ActionType.ACTION_REBOOT, 0, 0)); + } + break; + } + + case ShutdownMacroText: + { + if (!InConfiguration) + { + Log.Info("MCEReplacement: Shutdown"); + GUIGraphicsContext.OnAction(new Action(Action.ActionType.ACTION_SHUTDOWN, 0, 0)); + } + break; + } + } } } @@ -1927,7 +2034,7 @@ { if (String.IsNullOrEmpty(command)) { - Log.Error("MCEReplacement: Invalid command"); + Log.Error("MCEReplacement: Invalid (empty) command"); return false; } @@ -2032,6 +2139,27 @@ return ProcessGoTo(command.Substring(GoToCommandPrefix.Length)); } + + + + + /* + public const string SetMapCommandPrefix = "Multi-Mapping: "; + public const string SetMouseCommandPrefix = "Mouse Mode: "; + public const string InputLayerCommand = "Toggle Input Layer"; + public const string WindowStateCommand = "Toggle Window State"; + public const string GetFocusCommand = "Get Focus"; + + public const string ExitCommand = "Exit MediaPortal"; +public const string StandByCommand = "Standby"; +public const string HibernateCommand = "Hibernate"; +public const string RebootCommand = "Reboot"; +public const string ShutdownCommand = "Shutdown"; + */ + + + + Log.Error("MCEReplacement: Unprocessed command \"{0}\"", command); return false; } Modified: trunk/plugins/MCEReplacement/MCEReplacement.csproj =================================================================== --- trunk/plugins/MCEReplacement/MCEReplacement.csproj 2007-04-04 16:37:30 UTC (rev 286) +++ trunk/plugins/MCEReplacement/MCEReplacement.csproj 2007-04-04 18:01:46 UTC (rev 287) @@ -152,28 +152,29 @@ <Compile Include="Win32.cs" /> </ItemGroup> <ItemGroup> - <Reference Include="Core, Version=1.0.2485.22312, Culture=neutral, processorArchitecture=x86"> + <Reference Include="Core, Version=1.0.2581.1884, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\MediaPortal 0.2.1.0\Core.DLL</HintPath> + <HintPath>..\..\MediaPortal\Core\bin\Release\Core.dll</HintPath> <Private>False</Private> </Reference> - <Reference Include="Databases, Version=1.0.2485.22313, Culture=neutral, processorArchitecture=x86"> + <Reference Include="Databases, Version=1.0.2581.1890, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\MediaPortal 0.2.1.0\Databases.DLL</HintPath> + <HintPath>..\..\MediaPortal\Databases\bin\Release\Databases.dll</HintPath> <Private>False</Private> </Reference> - <Reference Include="Dialogs, Version=0.0.0.0, Culture=neutral, processorArchitecture=x86"> + <Reference Include="Dialogs, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\MediaPortal 0.2.1.0\Dialogs.DLL</HintPath> + <HintPath>..\..\MediaPortal\Dialogs\bin\Release\Dialogs.dll</HintPath> <Private>False</Private> </Reference> <Reference Include="Microsoft.DirectX.Direct3D, Version=1.0.2902.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\MediaPortal 0.2.1.0\Microsoft.DirectX.Direct3D.dll</HintPath> + <HintPath>..\..\MediaPortal\xbmc\bin\Release\Microsoft.DirectX.Direct3D.dll</HintPath> + <Private>False</Private> </Reference> - <Reference Include="RemotePlugins, Version=1.0.2485.22315, Culture=neutral, processorArchitecture=x86"> + <Reference Include="RemotePlugins, Version=1.0.2581.1913, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\MediaPortal 0.2.1.0\RemotePlugins.DLL</HintPath> + <HintPath>..\..\MediaPortal\RemotePlugins\bin\Release\RemotePlugins.dll</HintPath> <Private>False</Private> </Reference> <Reference Include="System" /> @@ -181,11 +182,16 @@ <Reference Include="System.Drawing" /> <Reference Include="System.Windows.Forms" /> <Reference Include="System.Xml" /> - <Reference Include="TVCapture, Version=1.0.2485.22314, Culture=neutral, processorArchitecture=x86"> + <Reference Include="TVCapture, Version=1.0.2581.1894, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\MediaPortal 0.2.1.0\TVCapture.DLL</HintPath> + <HintPath>..\..\MediaPortal\TVCapture\bin\Release\TVCapture.dll</HintPath> <Private>False</Private> </Reference> + <Reference Include="Utils, Version=1.0.2581.1867, Culture=neutral, processorArchitecture=MSIL"> + <SpecificVersion>False</SpecificVersion> + <HintPath>..\..\MediaPortal\Utils\bin\Release\Utils.dll</HintPath> + <Private>False</Private> + </Reference> </ItemGroup> <ItemGroup> <EmbeddedResource Include="Forms\ExternalChannels.resx"> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <du...@us...> - 2007-04-04 16:37:32
|
Revision: 286 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=286&view=rev Author: dukus Date: 2007-04-04 09:37:30 -0700 (Wed, 04 Apr 2007) Log Message: ----------- Toolbar added in editor Modified Paths: -------------- trunk/plugins/mpinstaler/MPInstaler/Form1.Designer.cs trunk/plugins/mpinstaler/MPInstaler/Form1.resx Modified: trunk/plugins/mpinstaler/MPInstaler/Form1.Designer.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Form1.Designer.cs 2007-04-04 13:25:09 UTC (rev 285) +++ trunk/plugins/mpinstaler/MPInstaler/Form1.Designer.cs 2007-04-04 16:37:30 UTC (rev 286) @@ -99,6 +99,11 @@ this.tabPage_Other = new System.Windows.Forms.TabPage(); this.othert_comboBox1 = new System.Windows.Forms.ComboBox(); this.label8 = new System.Windows.Forms.Label(); + this.toolStrip1 = new System.Windows.Forms.ToolStrip(); + this.newToolStripButton = new System.Windows.Forms.ToolStripButton(); + this.openToolStripButton = new System.Windows.Forms.ToolStripButton(); + this.saveToolStripButton = new System.Windows.Forms.ToolStripButton(); + this.toolStripContainer1 = new System.Windows.Forms.ToolStripContainer(); this.menuStrip1.SuspendLayout(); this.contextMenuStrip1.SuspendLayout(); this.tabPage_Skin.SuspendLayout(); @@ -109,6 +114,8 @@ this.tabPage_Proiect.SuspendLayout(); this.tabPage_Thumbs.SuspendLayout(); this.tabPage_Other.SuspendLayout(); + this.toolStrip1.SuspendLayout(); + this.toolStripContainer1.SuspendLayout(); this.SuspendLayout(); // // menuStrip1 @@ -342,9 +349,9 @@ this.bossview.FullRowSelect = true; this.bossview.GridLines = true; this.bossview.HideSelection = false; - this.bossview.Location = new System.Drawing.Point(12, 40); + this.bossview.Location = new System.Drawing.Point(12, 52); this.bossview.Name = "bossview"; - this.bossview.Size = new System.Drawing.Size(651, 227); + this.bossview.Size = new System.Drawing.Size(651, 215); this.bossview.TabIndex = 2; this.bossview.UseCompatibleStateImageBehavior = false; this.bossview.View = System.Windows.Forms.View.Details; @@ -732,13 +739,71 @@ this.label8.TabIndex = 0; this.label8.Text = "Directory (relative) :"; // + // toolStrip1 + // + this.toolStrip1.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.newToolStripButton, + this.openToolStripButton, + this.saveToolStripButton}); + this.toolStrip1.Location = new System.Drawing.Point(0, 24); + this.toolStrip1.Name = "toolStrip1"; + this.toolStrip1.RenderMode = System.Windows.Forms.ToolStripRenderMode.System; + this.toolStrip1.Size = new System.Drawing.Size(675, 25); + this.toolStrip1.TabIndex = 4; + this.toolStrip1.Text = "toolStrip1"; + // + // newToolStripButton + // + this.newToolStripButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; + this.newToolStripButton.Image = ((System.Drawing.Image)(resources.GetObject("newToolStripButton.Image"))); + this.newToolStripButton.ImageTransparentColor = System.Drawing.Color.Magenta; + this.newToolStripButton.Name = "newToolStripButton"; + this.newToolStripButton.Size = new System.Drawing.Size(23, 22); + this.newToolStripButton.Text = "&New"; + this.newToolStripButton.Click += new System.EventHandler(this.newToolStripMenuItem_Click); + // + // openToolStripButton + // + this.openToolStripButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; + this.openToolStripButton.Image = ((System.Drawing.Image)(resources.GetObject("openToolStripButton.Image"))); + this.openToolStripButton.ImageTransparentColor = System.Drawing.Color.Magenta; + this.openToolStripButton.Name = "openToolStripButton"; + this.openToolStripButton.Size = new System.Drawing.Size(23, 22); + this.openToolStripButton.Text = "&Open"; + this.openToolStripButton.Click += new System.EventHandler(this.openProiectToolStripMenuItem_Click); + // + // saveToolStripButton + // + this.saveToolStripButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; + this.saveToolStripButton.Image = ((System.Drawing.Image)(resources.GetObject("saveToolStripButton.Image"))); + this.saveToolStripButton.ImageTransparentColor = System.Drawing.Color.Magenta; + this.saveToolStripButton.Name = "saveToolStripButton"; + this.saveToolStripButton.Size = new System.Drawing.Size(23, 22); + this.saveToolStripButton.Text = "&Save"; + this.saveToolStripButton.Click += new System.EventHandler(this.sToolStripMenuItem_Click); + // + // toolStripContainer1 + // + // + // toolStripContainer1.ContentPanel + // + this.toolStripContainer1.ContentPanel.Size = new System.Drawing.Size(675, 150); + this.toolStripContainer1.Location = new System.Drawing.Point(0, 24); + this.toolStripContainer1.Name = "toolStripContainer1"; + this.toolStripContainer1.Size = new System.Drawing.Size(675, 175); + this.toolStripContainer1.TabIndex = 5; + this.toolStripContainer1.Text = "toolStripContainer1"; + // // Form1 // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(675, 431); + this.Controls.Add(this.toolStrip1); this.Controls.Add(this.bossview); this.Controls.Add(this.tabControl1); + this.Controls.Add(this.toolStripContainer1); this.Controls.Add(this.menuStrip1); this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); this.MainMenuStrip = this.menuStrip1; @@ -764,6 +829,10 @@ this.tabPage_Thumbs.PerformLayout(); this.tabPage_Other.ResumeLayout(false); this.tabPage_Other.PerformLayout(); + this.toolStrip1.ResumeLayout(false); + this.toolStrip1.PerformLayout(); + this.toolStripContainer1.ResumeLayout(false); + this.toolStripContainer1.PerformLayout(); this.ResumeLayout(false); this.PerformLayout(); @@ -840,6 +909,11 @@ private System.Windows.Forms.PictureBox pictureBox1; private System.Windows.Forms.Button button_browse; private System.Windows.Forms.Label label11; + private System.Windows.Forms.ToolStrip toolStrip1; + private System.Windows.Forms.ToolStripButton newToolStripButton; + private System.Windows.Forms.ToolStripButton openToolStripButton; + private System.Windows.Forms.ToolStripButton saveToolStripButton; + private System.Windows.Forms.ToolStripContainer toolStripContainer1; } } Modified: trunk/plugins/mpinstaler/MPInstaler/Form1.resx =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Form1.resx 2007-04-04 13:25:09 UTC (rev 285) +++ trunk/plugins/mpinstaler/MPInstaler/Form1.resx 2007-04-04 16:37:30 UTC (rev 286) @@ -129,7 +129,54 @@ <metadata name="saveFileDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>397, 17</value> </metadata> + <metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>525, 17</value> + </metadata> <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> + <data name="newToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAQ9JREFUOE+t09lq + wkAUBmBfyr5DfY32jaReSOmFCyKCgkKLFrVUBZeKiEbshqRuaNw1xiXmLxMJBJ0Zc+GBw9zMfDPnHMZm + u1ZE35s4zXCqjmC8Al+sgHLjD9y7yGFWPIbecOO45yORtMAEHnxxJHL1IyKI9JeEXqtMwOl50Q8bSS0l + 8PzBBPbqAQQxICrgjeapgKZpkJUdBmNZB+y3d/QSnsIZKrDdqZjMFYj9OR9wB1NngHrQsJC36EkrfIkT + PuDyJ84AZbOHNF2j1Z2h9i3xAVKfOUjjZssN2oMFmq0xSkLfOmBu3E97iurnENlKxzpgbpzwO0Kh1kOy + KFoDjHmzVuYYjRmTDZfyWh9Yd/4B2Mz2w1z7EGUAAAAASUVORK5CYII= +</value> + </data> + <data name="openToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAlpJREFUOE+tk21I + k1EYhif0oyA0sqIQCix/+GcQFFH9CCmiUBTLLEjShJofVBgL2fxoU9Pp5ubUlS5rU9f8rCyjsA+pUCRC + TR1ppmVFUSlmhq78unrnQF1KGHTg/nEOz30993PO+7qJFrmUeiv2n+Mij+XLRLLYULdF2pxlEVIDcw0p + AsyxD5fmI/rQ94pqi26eOlsfuZj+7BgSm01QdA4ih7m73Yx9qGpavwatjPebqCzOprPt8YKQgzFagqL0 + BEjyEFWVaBkdLHMxT34uYNwWR9nVTEoL0zHlp2DMSeaSRk6eKt4VWm5WM/rVPNN5SjDTLQebZEHNA1wr + UvHjk3E6tsNcV62e1r3KLGqtKm6WplNpSsVqVFJsOM8VfSKFWjkGtcyZptSYzvC7XByx3zQoqCnTMvlG + CX1prnornPUmQJcUXsbSVhGK5bIOkcmQyveeTHiv4VZ5Nk33Nc6iuSO8CIfmECYa/bE/8ON1iRipJNh5 + F0V6Bd86lfQ1JlFj1TDVq4COKCegLVIwHmGiKRB7/V6G7+5koHozymgfYRy5E1CgTWKgXcZ1i5qWp0KS + rjgBcAJawph6FszYk/2M1O1isGYLX8p9ab6wgqP+3rMvYciS01GfzA1LFvQkQ6sQ9/khxhoCGHnox1Dt + NvorxXw0b8Km8UQh2cip6GOzgNyMeKqKM7HdjqFZJ5pRk2YJ9aql3EnxoCJxNaZ4Ly6e3UDY3O6OEXRp + 59ApTpIhiyDh9GHORAZyPHQPB/ZtZ/cOMVvFPvh6e7F+3SrWrHRnraf7Xz/xf/rJ/kvxb84I3U1y+9/W + AAAAAElFTkSuQmCC +</value> + </data> + <data name="saveToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAixJREFUOE+tk91L + k3EUx/cvdN9N0EW3NTWGa7EaPOUcyqphWBG9PZEv5dJlmqhYmUYtXyBb4dJJy+kknFT4BqZIjaFMJUsz + V7TEoabYRDD49ju/6Pm1Mi+iH5zLz+c855zvo1L9j/fsaRRUvvZltHmX8Ni9gMaGCO47ZlBb8wn22yHc + KJ9CackECgteIy93FBfOB6H0JrC3B6ipXsVGb2V1Dca0XhxOe8JLEXhbF7mgsuLLX3mCIwsr2G1+DrVa + huWQRwjcj+a5oLTk87qCn/D78CLiTD4UXJ7GAXOTEDjrZ7ngku3dH4Jf4ZHJCLZJXlhzxpGa4hSCurth + LsjOGo0R/A4PBsPYrHdDlgMwmRxCUF31kQvkMwFFsB7c4/+ATYkNOHL0BZKSaoXgZuU0urvATgkcP/kK + lmMDfNu0MJqZPps6/4D7cNDSCUmyC8HVskl0+MAyADS5vrG7f0X59Tm+VFoYzZyZEVTg5NR2GAwVQnCl + cByeZuChc40FJwpjek5MmU/YkH6uiHdOTmHwfg/0+jIhsOWNMRiouhPlnUnAQoI4rYSht7MYm5qDnHsN + e41tHNbucUGnKxICiqXjHpTPJgHBZ/Nv4U1oHqGZJVwstiNe72JwI+J3PYA2MV8IMjOG2dzLfOatBg+2 + 7JDQ0tEPX9cguvv8GHg5hH0mC9S6eiQweLumDhqNVQgo06dP9fN4UsIoJHRnOhVtmxZGM1NXKoJ3JmTH + Cv71r/4OTrQ4xWMwWlcAAAAASUVORK5CYII= +</value> + </data> <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> <value> AAABAAEAICAEAAAAAADoAgAAFgAAACgAAAAgAAAAQAAAAAEABAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAA This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <du...@us...> - 2007-04-04 13:25:10
|
Revision: 285 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=285&view=rev Author: dukus Date: 2007-04-04 06:25:09 -0700 (Wed, 04 Apr 2007) Log Message: ----------- language helper compatibilities fix for older format Modified Paths: -------------- trunk/plugins/mpinstaler/MPInstaler/Language dialog.cs trunk/plugins/mpinstaler/MPInstaler/MPpackageStruct.cs Modified: trunk/plugins/mpinstaler/MPInstaler/Language dialog.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Language dialog.cs 2007-04-03 19:29:55 UTC (rev 284) +++ trunk/plugins/mpinstaler/MPInstaler/Language dialog.cs 2007-04-04 13:25:09 UTC (rev 285) @@ -29,25 +29,70 @@ private void LoadLanguages() { + if (File.Exists(LanguageDirectory + @"\strings_en.xml")) + { + //_availableLanguages = new Dictionary<string, CultureInfo>(); - //_availableLanguages = new Dictionary<string, CultureInfo>(); + DirectoryInfo dir = new DirectoryInfo(LanguageDirectory); + foreach (FileInfo file in dir.GetFiles("strings_*.xml")) + { + int pos = file.Name.IndexOf('_') + 1; + string cultName = file.Name.Substring(pos, file.Name.Length - file.Extension.Length - pos); - DirectoryInfo dir = new DirectoryInfo(LanguageDirectory); - foreach (FileInfo file in dir.GetFiles("strings_*.xml")) + try + { + CultureInfo cultInfo = new CultureInfo(cultName); + languageComboBox.Items.Add(cultInfo.EnglishName); + languageComboBox2.Items.Add(cultInfo.EnglishName); + } + catch (ArgumentException) + { + } + + } + } + else { - int pos = file.Name.IndexOf('_') + 1; - string cultName = file.Name.Substring(pos, file.Name.Length - file.Extension.Length - pos); + // Get system language + string strLongLanguage = CultureInfo.CurrentCulture.EnglishName; + int iTrimIndex = strLongLanguage.IndexOf(" ", 0, strLongLanguage.Length); + string strShortLanguage = strLongLanguage.Substring(0, iTrimIndex); - try + bool bExactLanguageFound = false; + if (Directory.Exists(LanguageDirectory)) { - CultureInfo cultInfo = new CultureInfo(cultName); - languageComboBox.Items.Add(cultInfo.EnglishName); - languageComboBox2.Items.Add(cultInfo.EnglishName); + string[] folders = Directory.GetDirectories(LanguageDirectory, "*.*"); + + + foreach (string folder in folders) + { + string fileName = folder.Substring(folder.LastIndexOf(@"\") + 1); + + // + // Exclude cvs folder + // + if (fileName.ToLower() != "cvs") + { + if (fileName.Length > 0) + { + fileName = fileName.Substring(0, 1).ToUpper() + fileName.Substring(1); + languageComboBox.Items.Add(fileName); + languageComboBox2.Items.Add(fileName); + + // Check language file to user region language + if (fileName.ToLower() == strLongLanguage.ToLower()) + { + languageComboBox2.Text = fileName; + bExactLanguageFound = true; + } + else if (!bExactLanguageFound && (fileName.ToLower() == strShortLanguage.ToLower())) + { + languageComboBox2.Text = fileName; + } + } + } + } } - catch (ArgumentException) - { - } - } } Modified: trunk/plugins/mpinstaler/MPInstaler/MPpackageStruct.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/MPpackageStruct.cs 2007-04-03 19:29:55 UTC (rev 284) +++ trunk/plugins/mpinstaler/MPInstaler/MPpackageStruct.cs 2007-04-04 13:25:09 UTC (rev 285) @@ -468,12 +468,20 @@ public string iName; public string fileName=string.Empty; public bool isLoaded=false; + public bool oldFormat = false; private Dictionary<String, String> _availableLanguages; Encoding docencoding = null ; public MPLanguageHelper() { Language = new List<LanguageString>(); - Load_Names(); + if (File.Exists(Config.GetFolder(Config.Dir.Language) + @"\strings_en.xml")) + { + Load_Names(); + } + else + { + oldFormat = true; + } } public void Load_Names() @@ -521,18 +529,74 @@ } public void Load(string lg) { - if (_availableLanguages.ContainsKey(lg)) + if (oldFormat) { - isLoaded = LoadMap(Config.GetFile(Config.Dir.Language, "strings_" + _availableLanguages[lg] + ".xml")); - fileName = Config.GetFile(Config.Dir.Language, "strings_" + _availableLanguages[lg] + ".xml"); + isLoaded = LoadMap_old(Config.GetFile(Config.Dir.Language, lg + @"\strings.xml")); + fileName = Config.GetFile(Config.Dir.Language, lg + @"\strings.xml"); } + else + { + if (_availableLanguages.ContainsKey(lg)) + { + isLoaded = LoadMap(Config.GetFile(Config.Dir.Language, "strings_" + _availableLanguages[lg] + ".xml")); + fileName = Config.GetFile(Config.Dir.Language, "strings_" + _availableLanguages[lg] + ".xml"); + } + } } public void Save() { if (isLoaded) - SaveMap(fileName); + if (oldFormat) + SaveMap_old(fileName); + else + SaveMap(fileName); } - + + public bool SaveMap_old(string strFileName) + { + if (strFileName == null) return false; + if (strFileName == String.Empty) return false; + try + { + this.Language.Sort(new LanguageStringComparer()); + XmlTextWriter writer = null; + writer = new XmlTextWriter(strFileName, docencoding); + writer.Formatting = Formatting.Indented; + + writer.WriteStartDocument(); + writer.WriteStartElement("strings"); + + + if (!String.IsNullOrEmpty(this.iChars)) + writer.WriteElementString("characters", this.iChars.Trim()); + + + foreach (LanguageString ls in this.Language) + { + writer.WriteStartElement("string"); + + if (!String.IsNullOrEmpty(ls.prefix)) + writer.WriteAttributeString("Prefix", ls.prefix); + if (!String.IsNullOrEmpty(ls.sufix)) + writer.WriteAttributeString("Suffix", ls.sufix); + writer.WriteElementString("id", ls.dwCode); + writer.WriteElementString("value", ls.mapSting); + writer.WriteEndElement(); + + } + writer.WriteEndElement(); + + writer.WriteEndDocument(); + writer.Close(); + } + catch (Exception ex) + { + MessageBox.Show("Language writer error : " + ex.Message); + return false; + } + return true; + } + public bool SaveMap(string strFileName) { if (strFileName == null) return false; @@ -576,6 +640,62 @@ } return true; } + + public bool LoadMap_old(string strFileName) + { + { + // bool isPrefixEnabled = true; + this.iChars = string.Empty; + this.Language.Clear(); + if (strFileName == null) return false; + if (strFileName == String.Empty) return false; + try + { + XmlDocument doc = new XmlDocument(); + XmlTextReader reader = new XmlTextReader(strFileName); + docencoding = reader.Encoding; + doc.Load(reader); + if (doc.DocumentElement == null) return false; + string strRoot = doc.DocumentElement.Name; + if (strRoot != "strings") return false; + XmlNode nodeChars = doc.DocumentElement.SelectSingleNode("/strings/characters"); + + if (nodeChars != null) + { + iChars = nodeChars.InnerText; + + } + XmlNodeList list = doc.DocumentElement.SelectNodes("/strings/string"); + foreach (XmlNode node in list) + { + //StringBuilder builder = new StringBuilder(); + LanguageString ls = new LanguageString(); + ls.dwCode = node.SelectSingleNode("id").InnerText; + + XmlAttribute prefix = node.Attributes["Prefix"]; + if (prefix != null) + ls.prefix = prefix.Value; + else ls.prefix = String.Empty; + ls.mapSting = node.SelectSingleNode("value").InnerText; + XmlAttribute suffix = node.Attributes["Suffix"]; + if (suffix != null) + ls.sufix = suffix.Value; + else + ls.sufix = String.Empty; + this.Language.Add(ls); + } + reader.Close(); + return true; + } + catch (Exception ex) + { + MessageBox.Show("Language reader error : " + ex.Message); + return false; + } + } + + } + public bool LoadMap(string strFileName) { // bool isPrefixEnabled = true; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <du...@us...> - 2007-04-03 19:29:58
|
Revision: 284 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=284&view=rev Author: dukus Date: 2007-04-03 12:29:55 -0700 (Tue, 03 Apr 2007) Log Message: ----------- Last changes in control panel reverted Modified Paths: -------------- trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.Designer.cs trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.cs trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.resx Removed Paths: ------------- trunk/plugins/mpinstaler/MPInstaler/control/ Modified: trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj 2007-04-02 21:54:43 UTC (rev 283) +++ trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj 2007-04-03 19:29:55 UTC (rev 284) @@ -75,12 +75,6 @@ <Compile Include="Build dialog.Designer.cs"> <DependentUpon>Build dialog.cs</DependentUpon> </Compile> - <Compile Include="control\ControlListView.cs"> - <SubType>UserControl</SubType> - </Compile> - <Compile Include="control\TileListItem.cs"> - <SubType>UserControl</SubType> - </Compile> <Compile Include="download_form.cs"> <SubType>Form</SubType> </Compile> @@ -113,14 +107,6 @@ <SubType>Designer</SubType> <DependentUpon>Build dialog.cs</DependentUpon> </EmbeddedResource> - <EmbeddedResource Include="control\ControlListView.resx"> - <DependentUpon>ControlListView.cs</DependentUpon> - <SubType>Designer</SubType> - </EmbeddedResource> - <EmbeddedResource Include="control\TileListItem.resx"> - <DependentUpon>TileListItem.cs</DependentUpon> - <SubType>Designer</SubType> - </EmbeddedResource> <EmbeddedResource Include="download_form.resx"> <SubType>Designer</SubType> <DependentUpon>download_form.cs</DependentUpon> Modified: trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.Designer.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.Designer.cs 2007-04-02 21:54:43 UTC (rev 283) +++ trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.Designer.cs 2007-04-03 19:29:55 UTC (rev 284) @@ -43,7 +43,6 @@ this.button4 = new System.Windows.Forms.Button(); this.tabControl1 = new System.Windows.Forms.TabControl(); this.tabPage1 = new System.Windows.Forms.TabPage(); - this.controlListView1 = new ControlListView.ControlListView(); this.button6 = new System.Windows.Forms.Button(); this.label2 = new System.Windows.Forms.Label(); this.comboBox2 = new System.Windows.Forms.ComboBox(); @@ -86,12 +85,11 @@ this.listView1.MultiSelect = false; this.listView1.Name = "listView1"; this.listView1.ShowItemToolTips = true; - this.listView1.Size = new System.Drawing.Size(117, 308); + this.listView1.Size = new System.Drawing.Size(685, 277); this.listView1.SmallImageList = this.imageList1; this.listView1.TabIndex = 0; this.listView1.UseCompatibleStateImageBehavior = false; this.listView1.View = System.Windows.Forms.View.Details; - this.listView1.Visible = false; this.listView1.SelectedIndexChanged += new System.EventHandler(this.listView1_SelectedIndexChanged); this.listView1.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listView1_ColumnClick); // @@ -129,7 +127,7 @@ // this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.button1.Enabled = false; - this.button1.Location = new System.Drawing.Point(6, 325); + this.button1.Location = new System.Drawing.Point(6, 294); this.button1.Name = "button1"; this.button1.Size = new System.Drawing.Size(75, 23); this.button1.TabIndex = 1; @@ -140,7 +138,7 @@ // button2 // this.button2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); - this.button2.Location = new System.Drawing.Point(709, 325); + this.button2.Location = new System.Drawing.Point(604, 294); this.button2.Name = "button2"; this.button2.Size = new System.Drawing.Size(75, 23); this.button2.TabIndex = 2; @@ -152,7 +150,7 @@ // this.button3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.button3.Enabled = false; - this.button3.Location = new System.Drawing.Point(88, 325); + this.button3.Location = new System.Drawing.Point(88, 294); this.button3.Name = "button3"; this.button3.Size = new System.Drawing.Size(75, 23); this.button3.TabIndex = 3; @@ -164,7 +162,7 @@ // this.button4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.button4.Enabled = false; - this.button4.Location = new System.Drawing.Point(169, 325); + this.button4.Location = new System.Drawing.Point(169, 294); this.button4.Name = "button4"; this.button4.Size = new System.Drawing.Size(75, 23); this.button4.TabIndex = 4; @@ -182,12 +180,11 @@ this.tabControl1.Location = new System.Drawing.Point(1, 1); this.tabControl1.Name = "tabControl1"; this.tabControl1.SelectedIndex = 0; - this.tabControl1.Size = new System.Drawing.Size(801, 395); + this.tabControl1.Size = new System.Drawing.Size(696, 364); this.tabControl1.TabIndex = 5; // // tabPage1 // - this.tabPage1.Controls.Add(this.controlListView1); this.tabPage1.Controls.Add(this.button6); this.tabPage1.Controls.Add(this.label2); this.tabPage1.Controls.Add(this.comboBox2); @@ -200,38 +197,15 @@ this.tabPage1.Location = new System.Drawing.Point(4, 22); this.tabPage1.Name = "tabPage1"; this.tabPage1.Padding = new System.Windows.Forms.Padding(3); - this.tabPage1.Size = new System.Drawing.Size(793, 369); + this.tabPage1.Size = new System.Drawing.Size(688, 338); this.tabPage1.TabIndex = 0; this.tabPage1.Text = "Local"; this.tabPage1.UseVisualStyleBackColor = true; this.tabPage1.Enter += new System.EventHandler(this.tabPage1_Enter); // - // controlListView1 - // - this.controlListView1.AutoAdjustHeight = false; - this.controlListView1.AutoResize = false; - this.controlListView1.AutoScroll = true; - this.controlListView1.BackColor = System.Drawing.Color.White; - this.controlListView1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.controlListView1.HorizontalSpacing = 5; - this.controlListView1.ItemHeight = 100; - this.controlListView1.ItemHorverColor = System.Drawing.Color.FromArgb(((int)(((byte)(222)))), ((int)(((byte)(222)))), ((int)(((byte)(221))))); - this.controlListView1.ItemNormalColor = System.Drawing.Color.FromArgb(((int)(((byte)(222)))), ((int)(((byte)(222)))), ((int)(((byte)(221))))); - this.controlListView1.ItemSelectionColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(102)))), ((int)(((byte)(153))))); - this.controlListView1.ItemWidth = 250; - this.controlListView1.Location = new System.Drawing.Point(0, 0); - this.controlListView1.Name = "controlListView1"; - this.controlListView1.NormalColor = System.Drawing.Color.White; - this.controlListView1.Selected = false; - this.controlListView1.SelectedColor = System.Drawing.Color.White; - this.controlListView1.Size = new System.Drawing.Size(793, 319); - this.controlListView1.TabIndex = 9; - this.controlListView1.VerticleSpacing = 5; - this.controlListView1.SelectedIndexChanged += new ControlListView.SelectedIndexChangedEventHandler(this.controlListView1_SelectedIndexChanged); - // // button6 // - this.button6.Location = new System.Drawing.Point(250, 325); + this.button6.Location = new System.Drawing.Point(250, 294); this.button6.Name = "button6"; this.button6.Size = new System.Drawing.Size(105, 23); this.button6.TabIndex = 8; @@ -242,7 +216,7 @@ // label2 // this.label2.AutoSize = true; - this.label2.Location = new System.Drawing.Point(361, 311); + this.label2.Location = new System.Drawing.Point(361, 280); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(36, 13); this.label2.TabIndex = 7; @@ -255,7 +229,7 @@ this.comboBox2.Items.AddRange(new object[] { "List", "Icons"}); - this.comboBox2.Location = new System.Drawing.Point(361, 327); + this.comboBox2.Location = new System.Drawing.Point(361, 296); this.comboBox2.Name = "comboBox2"; this.comboBox2.Size = new System.Drawing.Size(82, 21); this.comboBox2.TabIndex = 6; @@ -265,7 +239,7 @@ // this.linkLabel1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.linkLabel1.AutoSize = true; - this.linkLabel1.Location = new System.Drawing.Point(7, 352); + this.linkLabel1.Location = new System.Drawing.Point(7, 321); this.linkLabel1.Name = "linkLabel1"; this.linkLabel1.Size = new System.Drawing.Size(113, 13); this.linkLabel1.TabIndex = 5; @@ -282,7 +256,7 @@ this.tabPage2.Location = new System.Drawing.Point(4, 22); this.tabPage2.Name = "tabPage2"; this.tabPage2.Padding = new System.Windows.Forms.Padding(3); - this.tabPage2.Size = new System.Drawing.Size(793, 338); + this.tabPage2.Size = new System.Drawing.Size(688, 338); this.tabPage2.TabIndex = 1; this.tabPage2.Text = "Online"; this.tabPage2.UseVisualStyleBackColor = true; @@ -383,7 +357,7 @@ // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(801, 397); + this.ClientSize = new System.Drawing.Size(696, 366); this.Controls.Add(this.tabControl1); this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); this.Name = "controlp"; @@ -431,6 +405,5 @@ private System.Windows.Forms.Button button6; private System.Windows.Forms.PictureBox pictureBox1; private System.Windows.Forms.ContextMenuStrip contextMenuStrip1; - private ControlListView.ControlListView controlListView1; } } \ No newline at end of file Modified: trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.cs 2007-04-02 21:54:43 UTC (rev 283) +++ trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.cs 2007-04-03 19:29:55 UTC (rev 284) @@ -10,7 +10,7 @@ using System.Windows.Forms; using MediaPortal.GUI.Library; using MediaPortal.Configuration; -using ControlListView; + namespace MPInstaler { public partial class controlp : Form @@ -24,7 +24,7 @@ public controlp() { InitializeComponent(); - controlListView1.ItemIconImageList = imageList1; + //pictureBox1.Load("http://webmaster.extra.hu/banner/extra134x77.gif"); } private void button2_Click(object sender, EventArgs e) @@ -42,7 +42,6 @@ public void LoadToListview() { LoadToListview(lst, listView1); - LoadToListview(lst, controlListView1); } public void LoadToListview(MPInstallHelper mpih, ListView lv) @@ -70,34 +69,6 @@ SetGroups(0, lv); } - public void LoadToListview(MPInstallHelper mpih, ControlListView.ControlListView lv) - { - lv.controlList.Clear(); - for (int i = 0; i < mpih.lst.Count; i++) - { - MPpackageStruct pk = (MPpackageStruct)mpih.lst[i]; - TileListItem item = new TileListItem(); - - if (pk._intalerStruct.Logo != null) - { - imageList1.Images.Add(pk._intalerStruct.Logo); - item.ImageIndex = imageList1.Images.Count - 1; - } - if (pk.isNew) item.ForeColor = Color.Red; - if (pk.isUpdated) item.ForeColor = Color.BlueViolet; - item.Title = pk._intalerStruct.Name; - item.Description = pk._intalerStruct.Description; - item.Version = pk._intalerStruct.Version; - //item1.ToolTipText = - //item1.SubItems.Add(pk._intalerStruct.Author); - //item1.SubItems.Add(pk._intalerStruct.Version); - //item1.SubItems.Add(Path.GetFileName(pk.FileName)); - //item1.SubItems.Add(pk._intalerStruct.Group); - //lv.Items.AddRange(new ListViewItem[] { item1 }); - this.controlListView1.Add(item); - } - } - private void InitGroups( ListView myListView) { groupTables = new Hashtable[myListView.Columns.Count]; @@ -477,22 +448,6 @@ MessageBox.Show("Exception in plugin loading :{0}", unknownException.Message); } } - - private void controlListView1_SelectedIndexChanged(object sender, TileListItem item) - { - if (controlListView1.Selected) - { - button1.Enabled = true; - button3.Enabled = true; - button4.Enabled = true; - } - else - { - button1.Enabled = false; - button3.Enabled = false; - button4.Enabled = false; - } - } } Modified: trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.resx =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.resx 2007-04-02 21:54:43 UTC (rev 283) +++ trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.resx 2007-04-03 19:29:55 UTC (rev 284) @@ -124,531 +124,139 @@ <value> AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 - ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADC - eAAAAk1TRnQBSQFMAwEBAAEEAQABBAEAAUABAAFAAQAE/wEhAQAI/wFCAU0BNgcAATYDAAEoBAABAQIA - AUADAAEBAQABIAcAAQE9AAErAgEBQAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFI - AgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFI - AgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFI - AgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFIAgIBgAFI - AgIBgAFIAgIBgAFIAgIBgAErAgEBQP8A/wD/AF8AAUgCAgGAAR4BPAGBAf8BHwE/AYEB/wEfAUIBgQH/ - AR8BRAGFAf8BHwFGAYgB/wEgAUkBkQH/ASABTAGZAf8BIAFNAZwB/wEgAU0BnwH/ASABUAGoAf8BIAFT - AbAB/wEgAVQBswH/ASABVQG2Af8BIQFVAbYB/wEhAVUBtgH/ASEBVQG2Af8BIQFVAbYB/wEhAVUBtgH/ - ASEBVQG2Af8BIQFVAbYB/wEhAVUBtgH/ASEBVQG2Af8BIQFVAbYB/wEhAVUBtgH/ASEBVQG2Af8BIQFV - AbYB/wEhAVUBtgH/ASEBUwGwAf8BIAFRAaoB/wEgAU8BpQH/ASABTQGfAf8BIAFMAZsB/wEgAUsBlgH/ - ASABSQGPAf8BHwFGAYgB/wEfAUMBhQH/AR8BQAGBAf8BHwE+AYEB/wEeATsBgQH/AUgCAgGA/wD/AP8A - PwABKwIBAUABSAICAYABSAICAYABSAICAYABSAICAYABSAICAYABSAICAYABSAICAYABXAEDAQQBwAEo - AVABngH/ASkBUwGgAf8BKgFWAaIB/wEsAVgBpQH/AS0BWgGoAf8BLwFdAa0B/wEwAV8BsgH/ATEBYQG0 - Af8BMgFiAbcB/wEzAWUBvAH/ATQBaAHBAf8BNgFpAcMB/wE3AWsBxQH/ATgBbAHGAf8BOQFtAccB/wE6 - AW4ByAH/ATsBbwHIAf8BPAFvAckB/wE9AW8ByQH/AT4BbwHKAf8BPgFvAcoB/wE/AW8BywH/AUABbwHL - Af8BQQFvAcwB/wFBAW8BzAH/AUEBbwHMAf8BQQFvAcwB/wFBAW4ByQH/AUEBbQHGAf8BQQFsAcQB/wFA - AWsBwAH/AUABawG+Af8BPwFqAbsB/wE/AWkBtwH/AT0BaAGzAf8BPAFmAbEB/wE7AWUBrgH/AToBYwGr - Af8BOAFgAagB/wFcAQMBBQHAAUgCAgGAAUgCAgGAAUgCAgGAAUgCAgGAAUgCAgGAAUgCAgGAAUgCAgGA - ASsCAQFA/wD/AP8AHwABSAICAYABIAFKAZMB/wEiAVABpQH/ASMBVgG2Af8BJgFZAbcB/wEoAVwBuAH/ - ASoBXgG6Af8BLAFgAbsB/wEvAWIBvQH/ATEBZAG/Af8BMwFnAcEB/wE1AWkBwwH/ATgBawHFAf8BOgFt - AccB/wE9AXAByQH/AT8BcgHKAf8BQQF1AcwB/wFDAXcBzgH/AUYBegHQAf8BSAF8AdEB/wFLAX4B0wH/ - AU0BgAHUAf8BTwGBAdYB/wFRAYEB1wH/AVMBgQHZAf8BVQGBAdoB/wFXAYEB2wH/AVgBgQHcAf8BWgGB - Ad0B/wFbAYEB3gH/AV0BgQHfAf8BXwGBAeAB/wFgAYEB4QH/AWABgQHhAf8BYQGBAeIB/wFhAYEB4gH/ - AWEBgQHiAf8BYQGBAeIB/wFhAYEB4gH/AWABgQHhAf8BXwGBAeEB/wFeAYEB4AH/AV0BgQHfAf8BWwGB - Ad4B/wFZAYEB3AH/AVYBgQHaAf8BVAGBAdgB/wFRAYEB1gH/AU0BgQHUAf8BSQF9AdEB/wFFAXkBzgH/ - AUABdAHLAf8BNQFpAcQB/wEqAV4BvAH/ASUBVAGmAf8BIAFJAZAB/wFIAgIBgP8A/wD/ABcAASsCAQFA - AUgCAgGAAVwBAwEEAcABJAFSAaMB/wEoAVgBrQH/ASsBXQG3Af8BLQFgAbkB/wEvAWIBugH/ATEBZAG9 - Af8BMwFmAb4B/wE1AWgBwAH/ATcBagHCAf8BOQFsAcQB/wE6AW4BxgH/AT0BcAHIAf8BPgFyAcoB/wFB - AXQBzAH/AUIBdgHNAf8BRAF4Ac4B/wFGAXoB0AH/AUkBfAHRAf8BSgF+AdIB/wFNAYAB1AH/AU4BgQHV - Af8BUAGBAdYB/wFSAYEB1wH/AVQBgQHZAf8BVQGBAdoB/wFXAYEB2wH/AVgBgQHcAf8BWgGBAd0B/wFb - AYEB3gH/AV0BgQHfAf8BXwGBAeAB/wFgAYEB4QH/AWEBgQHiAf8BYgGBAeMB/wFjAYEB4wH/AWQBgQHk - Af8BZQGBAeQB/wFmAYIB5QH/AWYBggHlAf8BZgGDAeYB/wFmAYMB5gH/AWcBhAHmAf8BZgGFAeYB/wFm - AYYB5QH/AWUBhgHlAf8BZQGGAeQB/wFkAYUB5AH/AWMBhQHjAf8BYgGEAeIB/wFhAYIB4QH/AV8BgQHg - Af8BWQGBAd0B/wFUAX0B2QH/AUMBbwHEAf8BMgFgAa8B/wFcAQMBBAHAAUgCAgGAASsCAQFA/wD/AP8A - DwABSAICAYABIAFLAZYB/wEkAVIBpQH/AScBWQGzAf8BLQFfAbUB/wEyAWQBtwH/ATQBZgG6Af8BNgFo - AbwB/wE4AWoBvwH/ATkBbAHBAf8BOwFuAcMB/wE8AW8BxQH/AT4BcQHHAf8BPwFzAckB/wFBAXUBywH/ - AUIBdgHNAf8BRAF4Ac4B/wFFAXkBzwH/AUcBewHQAf8BSQF8AdEB/wFLAX4B0gH/AUwBfwHTAf8BTgGB - AdQB/wFPAYEB1QH/AVEBgQHWAf8BUgGBAdcB/wFUAYEB2QH/AVUBgQHaAf8BVwGBAdsB/wFYAYEB3AH/ - AVoBgQHdAf8BWwGBAd4B/wFdAYEB3wH/AV4BgQHgAf8BYAGBAeEB/wFhAYEB4gH/AWMBgQHjAf8BZQGB - AeQB/wFnAYEB5QH/AWgBgQHmAf8BagGCAegB/wFrAYIB6QH/AW0BhAHqAf8BbgGFAesB/wFwAYcB7AH/ - AXEBiAHtAf8BcwGKAe4B/wF0AYsB7wH/AXYBjQHwAf8BdwGOAfEB/wF5AZAB8gH/AXoBkgHzAf8BfAGT - AfQB/wF9AZQB9QH/AX0BlAH1Af8BfQGUAfUB/wFhAYIB4gH/AUQBdwHOAf8BMgFhAbEB/wEfAUoBkwH/ - AUgCAgGA/wD/AP8ADwABSAICAYABIQFQAaUB/wEmAVcBrAH/ASsBXQGyAf8BLwFhAbQB/wEyAWQBtgH/ - ATQBZgG5Af8BNgFoAbsB/wE4AWoBvgH/ATkBbAHAAf8BOwFuAcIB/wE8AW8BxAH/AT4BcQHHAf8BPwFz - AckB/wFBAXUBywH/AUIBdgHNAf8BRAF4Ac4B/wFFAXkBzwH/AUcBewHQAf8BSQF8AdEB/wFLAX4B0gH/ - AUwBfwHTAf8BTgGBAdQB/wFPAYEB1QH/AVEBgQHWAf8BUgGBAdcB/wFUAYEB2QH/AVUBgQHaAf8BVwGB - AdsB/wFYAYEB3AH/AVoBgQHdAf8BWwGBAd4B/wFdAYEB3wH/AV4BgQHgAf8BYAGBAeEB/wFhAYEB4gH/ - AWMBgQHjAf8BZQGBAeQB/wFnAYEB5QH/AWgBgQHmAf8BagGCAegB/wFrAYIB6QH/AW0BhAHqAf8BbgGF - AesB/wFwAYcB7AH/AXEBiAHtAf8BcwGKAe4B/wF0AYsB7wH/AXYBjQHwAf8BdwGOAfEB/wF5AZAB8gH/ - AXoBkgHzAf8BfAGTAfQB/wF9AZQB9QH/AX4BlQH2Af8BfwGWAfYB/wFxAY0B7QH/AWIBgwHiAf8BRAFw - AcYB/wEmAVUBqQH/AUgCAgGA/wD/AP8ADwABSAICAYABIgFVAbMB/wEoAVsBsgH/AS4BYAGwAf8BMAFi - AbMB/wEyAWQBtQH/ATQBZgG4Af8BNQFnAboB/wE3AWkBvQH/ATkBawG/Af8BOwFtAcEB/wE8AW4BwwH/ - AT4BcAHGAf8BPwFyAcgB/wFBAXQBygH/AUIBdgHMAf8BRAF4Ac4B/wFFAXkBzwH/AUcBewHQAf8BSAF8 - AdEB/wFKAX4B0gH/AUsBfwHTAf8BTQGBAdQB/wFPAYEB1QH/AVEBgQHWAf8BUgGBAdcB/wFUAYEB2AH/ - AVUBgQHZAf8BVwGBAdsB/wFYAYEB3AH/AVoBgQHdAf8BWwGBAd4B/wFdAYEB3wH/AV4BgQHgAf8BYAGB - AeEB/wFhAYEB4gH/AWMBgQHjAf8BZAGBAeQB/wFmAYEB5QH/AWcBgQHmAf8BaQGCAecB/wFrAYIB6AH/ - AW0BhAHpAf8BbgGFAeoB/wFwAYcB6wH/AXEBiAHsAf8BcwGKAe4B/wF0AYsB7wH/AXYBjQHwAf8BdwGO - AfEB/wF5AZAB8gH/AXoBkQHzAf8BfAGTAfQB/wF9AZQB9QH/AX8BlgH2Af8BgAGXAfcB/wGAAZcB9wH/ - AX8BlgH2Af8BVgF/AdoB/wEsAWABvgH/AUgCAgGA/wD/AP8ADwABSAICAYABJAFWAbEB/wEpAVsBsQH/ - AS4BYAGvAf8BMAFiAbIB/wEyAWQBtAH/ATQBZgG3Af8BNQFnAbkB/wE3AWkBvAH/ATkBawG+Af8BOwFt - AcAB/wE8AW4BwgH/AT4BcAHFAf8BPwFyAccB/wFBAXQByQH/AUIBdgHLAf8BRAF4Ac0B/wFFAXkBzwH/ - AUcBewHQAf8BSAF8AdEB/wFKAX4B0gH/AUsBfwHTAf8BTQGBAdQB/wFPAYEB1QH/AVEBgQHWAf8BUgGB - AdcB/wFUAYEB2AH/AVUBgQHZAf8BVwGBAdsB/wFYAYEB3AH/AVoBgQHdAf8BWwGBAd4B/wFdAYEB3wH/ - AV4BgQHgAf8BYAGBAeEB/wFhAYEB4gH/AWMBgQHjAf8BZAGBAeQB/wFmAYEB5QH/AWcBgQHmAf8BaQGC - AecB/wFrAYIB6AH/AW0BhAHpAf8BbgGFAeoB/wFwAYcB6wH/AXEBiAHsAf8BcwGKAe4B/wF0AYsB7wH/ - AXYBjQHwAf8BdwGOAfEB/wF5AZAB8gH/AXoBkQHzAf8BewGTAfQB/wF8AZQB9QH/AX4BlQH2Af8BfwGW - AfYB/wF/AZYB9wH/AX8BlgH2Af8BXAGBAd4B/wE5AW0BxgH/AUgCAgGA/wD/AP8ADwABSAICAYABJQFX - Aa8B/wEqAVsBrwH/AS4BXwGuAf8BMAFhAbEB/wEyAWMBswH/ATQBZQG2Af8BNQFnAbgB/wE3AWkBuwH/ - ATgBagG9Af8BOgFsAb8B/wE7AW4BwQH/AT0BcAHEAf8BPgFxAcYB/wFAAXMByAH/AUIBdQHKAf8BRAF3 - AcwB/wFFAXgBzgH/AUcBegHPAf8BSAF7AdAB/wFKAX0B0gH/AUsBfwHTAf8BTQGBAdQB/wFOAYEB1QH/ - AVABgQHWAf8BUQGBAdcB/wFTAYEB2AH/AVQBgQHZAf8BVgGBAdoB/wFXAYEB2wH/AVkBgQHcAf8BWgGB - Ad0B/wFcAYEB3gH/AV4BgQHfAf8BYAGBAeAB/wFhAYEB4QH/AWMBgQHjAf8BZAGBAeQB/wFmAYEB5QH/ - AWcBgQHmAf8BaQGBAecB/wFqAYEB6AH/AWwBgwHpAf8BbQGEAeoB/wFvAYYB6wH/AXABhwHsAf8BcgGJ - Ae0B/wFzAYoB7gH/AXUBjAHvAf8BdgGNAfAB/wF4AY8B8QH/AXkBkAHyAf8BegGSAfMB/wF7AZMB9AH/ - AXwBlAH1Af8BfQGUAfUB/wF+AZUB9gH/AX4BlQH2Af8BYgGDAeIB/wFFAXkBzgH/AUgCAgGA/wD/AP8A - DwABSAICAYABJgFYAa4B/wEqAVsBrgH/AS4BXwGtAf8BMAFhAbAB/wEyAWMBsgH/ATQBZQG1Af8BNQFn - AbcB/wE3AWkBugH/ATgBagG8Af8BOgFsAb4B/wE7AW4BwAH/AT0BcAHDAf8BPgFxAcUB/wFAAXMBxwH/ - AUIBdQHJAf8BRAF3AcwB/wFFAXgBzgH/AUcBegHPAf8BSAF7AdAB/wFKAX0B0gH/AUsBfwHTAf8BTQGB - AdQB/wFOAYEB1QH/AVABgQHWAf8BUQGBAdcB/wFTAYEB2AH/AVQBgQHZAf8BVgGBAdoB/wFXAYEB2wH/ - AVkBgQHcAf8BWgGBAd0B/wFcAYEB3gH/AV4BgQHfAf8BYAGBAeAB/wFhAYEB4QH/AWMBgQHjAf8BZAGB - AeQB/wFmAYEB5QH/AWcBgQHmAf8BaQGBAecB/wFqAYEB6AH/AWwBgwHpAf8BbQGEAeoB/wFvAYYB6wH/ - AXABhwHsAf8BcgGJAe0B/wFzAYoB7gH/AXQBjAHvAf8BdQGNAfAB/wF3AY4B8QH/AXgBjwHyAf8BeQGR - AfMB/wF6AZIB8wH/AXsBkwH0Af8BfAGTAfQB/wF9AZQB9QH/AX0BlAH1Af8BZAGFAeQB/wFKAX4B0gH/ - AUgCAgGA/wD/AP8ADwABSAICAYABJgFYAawB/wEqAVsBrAH/AS4BXgGsAf8BMAFgAa8B/wExAWIBsQH/ - ATMBZAG0Af8BNQFmAbYB/wE3AWgBuQH/ATgBaQG7Af8BOgFrAb0B/wE7AW0BvwH/AT0BbwHCAf8BPgFw - AcQB/wFAAXIBxgH/AUEBdAHIAf8BQwF2AcsB/wFEAXgBzQH/AUYBegHPAf8BRwF7AdAB/wFJAX0B0QH/ - AUoBfgHSAf8BTAGAAdMB/wFOAYEB1AH/AVABgQHVAf8BUQGBAdYB/wFTAYEB2AH/AVQBgQHZAf8BVgGB - AdoB/wFXAYEB2wH/AVkBgQHcAf8BWgGBAd0B/wFcAYEB3gH/AV0BgQHfAf8BXwGBAeAB/wFgAYEB4QH/ - AWIBgQHiAf8BYwGBAeMB/wFlAYEB5AH/AWYBgQHlAf8BaAGBAeYB/wFpAYEB5wH/AWsBggHoAf8BbAGD - AekB/wFuAYUB6gH/AW8BhgHrAf8BcQGIAewB/wFyAYkB7QH/AXMBiwHuAf8BdAGMAe8B/wF2AY0B8AH/ - AXcBjgHxAf8BeAGPAfIB/wF5AZAB8gH/AXoBkQHzAf8BewGSAfMB/wF7AZMB9AH/AXsBkwH0Af8BZQGH - AeUB/wFOAYEB1QH/AUgCAgGA/wD/AP8ACwABSAICAYABXAEDAQQBwAEnAVgBqwH/ASoBWwGrAf8BLgFe - AasB/wEwAWABrgH/ATEBYgGwAf8BMwFkAbMB/wE0AWYBtQH/ATYBaAG4Af8BOAFpAboB/wE6AWsBvAH/ - ATsBbQG+Af8BPQFvAcEB/wE+AXABwwH/AUABcgHFAf8BQQF0AccB/wFDAXYBygH/AUQBdwHMAf8BRgF5 - Ac4B/wFHAXsB0AH/AUkBfQHRAf8BSgF+AdIB/wFMAYAB0wH/AU4BgQHUAf8BUAGBAdUB/wFRAYEB1gH/ - AVMBgQHYAf8BVAGBAdkB/wFWAYEB2gH/AVcBgQHbAf8BWQGBAdwB/wFaAYEB3QH/AVoBgQHeAf8BWQGB - Ad8B/wFXAYEB3wH/AVQBgQHeAf8BWQGBAeAB/wFeAYEB4QH/AVwBgQHiAf8BWgGBAeIB/wFfAYEB5QH/ - AWQBgQHnAf8BbAGFAekB/wFzAYkB6gH/AW0BhwHrAf8BZwGEAesB/wFsAYYB7AH/AXEBiAHtAf8BcwGK - Ae4B/wF0AYsB7wH/AXUBjAHwAf8BdgGNAfAB/wF3AY4B8QH/AXgBjwHyAf8BeQGQAfIB/wF6AZEB8gH/ - AXoBkgHzAf8BegGSAfMB/wFmAYgB5gH/AVIBgQHYAf8BXAEEAQUBwAFIAgIBgAErAgEBQP8A/wD/AAMA - AR8BPwGBAf8BIwFLAZUB/wEnAVcBqQH/ASoBWgGpAf8BLQFdAakB/wEvAV8BrAH/ATABYQGvAf8BMgFj - AbIB/wEzAWUBtAH/ATUBZwG3Af8BNwFoAbkB/wE5AWoBuwH/AToBbAG9Af8BPAFuAcAB/wE9AXABwgH/ - AT8BcgHEAf8BQAFzAcYB/wFCAXUByQH/AUMBdgHLAf8BRQF4Ac0B/wFHAXoBzwH/AUkBfAHRAf8BSgF9 - AdIB/wFMAX8B0wH/AU0BgAHUAf8BTwGBAdUB/wFQAYEB1gH/AVIBgQHXAf8BUwGBAdgB/wFVAYEB2QH/ - AVYBgQHaAf8BWAGBAdsB/wFZAYEB3AH/AVcBgQHdAf8BVQGBAd4B/wFOAYEB3QH/AUcBfwHbAf8BUAGB - Ad0B/wFZAYEB3wH/AVMBgQHfAf8BTQGBAd8B/wFWAYEB4wH/AV8BgQHnAf8BbQGIAekB/wF6AY4B6wH/ - AWwBiAHrAf8BXgGBAeoB/wFnAYQB6wH/AXABhwHsAf8BcgGJAe0B/wFzAYoB7gH/AXQBiwHvAf8BdQGM - Ae8B/wF2AY0B8AH/AXcBjgHxAf8BeAGPAfEB/wF4AY8B8QH/AXgBkAHyAf8BeAGQAfIB/wFnAYkB5gH/ - AVUBgQHaAf8BOgFkAa4B/wEfAT8BgQH/AUgCAgGA/wD/AP8AAwABHwFCAYIB/wEkAU0BlQH/ASkBWQGo - Af8BKwFbAagB/wEtAV0BqAH/AS8BXwGrAf8BMAFhAa4B/wEyAWMBsQH/ATMBZQGzAf8BNQFnAbYB/wE3 - AWgBuAH/ATkBagG6Af8BOgFsAbwB/wE8AW4BvwH/AT0BcAHBAf8BPwFyAcMB/wFAAXMBxQH/AUIBdQHI - Af8BQwF2AcoB/wFFAXgBzAH/AUcBegHOAf8BSQF8AdAB/wFKAX0B0gH/AUwBfwHTAf8BTQGAAdQB/wFP - AYEB1QH/AVABgQHWAf8BUgGBAdcB/wFTAYEB2AH/AVUBgQHZAf8BVgGBAdoB/wFYAYEB2wH/AVkBgQHc - Af8BVQGBAd0B/wFRAYEB3gH/AXsBnAHmAf8BngG6Ae0B/wGjAb0B7gH/AagBwAHvAf8BhgGnAesB/wFr - AY4B5wH/AYEBogHtAf8BngG2AfIB/wGsAb8B9AH/AbkBxwH1Af8BjAGmAfAB/wFnAYQB6wH/AWoBhAHr - Af8BbAGEAewB/wFvAYcB7QH/AXIBiQHtAf8BcwGKAe4B/wF0AYsB7wH/AXUBjAHwAf8BdgGNAfAB/wF3 - AY4B8AH/AXcBjgHwAf8BdwGPAfEB/wF3AY8B8QH/AWgBiAHnAf8BWAGBAdwB/wE8AWYBrwH/AR8BQgGC - Af8BSAICAYD/AP8A/wADAAEfAUQBggH/ASUBTwGVAf8BKwFaAacB/wEsAVsBpwH/ASwBXAGnAf8BLgFe - AaoB/wEvAWABrAH/ATEBYgGvAf8BMwFkAbIB/wE1AWYBtQH/ATYBZwG3Af8BOAFpAbkB/wE6AWsBuwH/ - ATwBbQG+Af8BPQFvAcAB/wE/AXEBwgH/AUABcgHEAf8BQgF0AccB/wFDAXYByQH/AUUBeAHLAf8BRgF5 - Ac0B/wFIAXsBzwH/AUkBfAHRAf8BSwF+AdIB/wFMAX8B0wH/AU4BgQHUAf8BTwGBAdUB/wFRAYEB1gH/ - AVIBgQHXAf8BVAGBAdgB/wFVAYEB2QH/AVcBgQHaAf8BWAGBAdsB/wFSAYEB3QH/AUwBgQHeAf8BoAG7 - Ae8B/wL8Av8C/gb/AcABzgH3Af8BgQGcAe4B/wGzAcQB9gH/AeQB6wH9Af8B8gH1Af4F/wG0AcMB9QH/ - AXABhgHrAf8BbAGEAesB/wFoAYEB6wH/AWwBhQHsAf8BcAGIAewB/wFxAYkB7QH/AXIBigHuAf8BcwGL - Ae8B/wF0AYsB7wH/AXUBjAHvAf8BdQGMAe8B/wF1AY0B8AH/AXUBjQHwAf8BaAGHAecB/wFbAYEB3gH/ - AT0BZwGwAf8BHwFEAYIB/wFIAgIBgP8A/wD/AAMAAR8BRgGIAf8BMAFZAZsB/wFAAWsBrQH/AT0BaAGs - Af8BOQFmAasB/wE1AWMBqwH/ATABYAGrAf8BMQFiAa4B/wEzAWMBsQH/ATUBZQG0Af8BNgFnAbYB/wE4 - AWkBuAH/AToBawG6Af8BPAFtAb0B/wE9AW4BvwH/AT8BcAHBAf8BQAFyAcMB/wFCAXQBxgH/AUMBdQHI - Af8BRQF3AcoB/wFGAXkBzAH/AUgBewHOAf8BSQF8AdAB/wFLAX4B0gH/AUwBfwHTAf8BTgGBAdQB/wFP - AYEB1QH/AVEBgQHWAf8BUgGBAdcB/wFUAYEB2AH/AVUBgQHZAf8BVQGBAdoB/wFUAYEB2wH/AUkBgAHb - Af8BPQF5AdsB/wGaAbcB7QH/Av4K/wHfAecB+wH/Ab8BzQH2Af8B2QHiAfoB/wHyAfUB/gH/AfkB+gb/ - Ab0BzQH3Af8BgQGaAe8B/wFuAY4B7AH/AVkBgQHpAf8BYQGDAesB/wFpAYUB7AH/AW0BhwHtAf8BcQGJ - Ae0B/wFyAYoB7gH/AXMBigHuAf8BdAGLAe4B/wF0AYsB7gH/AXQBjAHvAf8BdAGMAe8B/wFpAYcB6AH/ - AV4BgQHgAf8BPwFoAbQB/wEfAUYBiAH/AUgCAgGA/wD/AP8AAwABHwFIAY0B/wE6AWIBoAH/AVQBewGz - Af8BTQF1AbEB/wFFAW8BrgH/ATsBZwGsAf8BMAFfAaoB/wExAWEBrQH/ATIBYgGvAf8BNAFkAbIB/wE1 - AWYBtAH/ATcBaAG3Af8BOQFqAbkB/wE7AWwBvAH/ATwBbQG+Af8BPgFvAcAB/wE/AXEBwgH/AUEBcwHF - Af8BQgF0AccB/wFEAXYByQH/AUUBeAHLAf8BRwF6Ac0B/wFIAXsBzwH/AUoBfQHRAf8BSwF+AdIB/wFN - AYAB1AH/AU4BgQHVAf8BUAGBAdYB/wFRAYEB1wH/AVMBgQHYAf8BVAGBAdkB/wFSAYEB2gH/AVABgQHb - Af8BPwF6AdkB/wEuAW8B1wH/AZMBswHrA/8B/gn/Af4B/wH+Af8B/QH+Af0B/wH+Af8B/g3/AcUB1wH5 - Af8BiwGuAfIB/wFvAZcB7AH/AUoBgQHmAf8BVgGBAekB/wFiAYEB6wH/AWkBhAHsAf8BcAGHAewB/wFx - AYgB7QH/AXEBiAHtAf8BcgGJAe0B/wFyAYkB7QH/AXMBigHuAf8BcwGKAe4B/wFqAYYB6AH/AWABgQHh - Af8BQAFpAbgB/wEfAUgBjgH/AUgCAgGA/wD/AP8AAwABIAFLAZYB/wE+AWYBpQH/AVwBgQG0Af8BWAF9 - AbQB/wFTAXoBsgH/AUoBcwGxAf8BQAFsAa8B/wE3AWYBrwH/AS8BYAGuAf8BMgFjAbEB/wE1AWYBswH/ - ATcBaAG2Af8BOAFpAbgB/wE6AWsBuwH/ATwBbQG9Af8BPgFvAb8B/wE/AXABwQH/AUEBcgHEAf8BQgF0 - AcYB/wFEAXYByAH/AUUBdwHKAf8BRwF5AcwB/wFIAXsBzgH/AUoBfQHQAf8BSwF+AdIB/wFMAYAB1AH/ - AU0BgQHVAf8BTwGBAdYB/wFRAYEB1wH/AVABgQHYAf8BTgGBAdgB/wFQAYEB2gH/AVIBgQHcAf8BVQGB - Ad4B/wFXAYEB3wH/AagBvAHvBf8B2QHgAfgB/wGyAcEB8QH/AaUBvAHvAf8BlwG2AewB/wGYAbcB7QH/ - AZkBuAHuAf8BrwHGAfMB/wHEAdQB9wH/AcUB1gH4Af8BxQHXAfkB/wGzAcsB9gH/AaEBvwHzAf8BhgGm - AfAB/wFzAYwB7AH/AXABiQHsAf8BbQGGAesB/wFvAYcB7AH/AXABhwHsAf8BcQGIAe0B/wFxAYgB7QH/ - AXIBiQHtAf8BcgGJAe0B/wFqAYUB6AH/AWIBgQHiAf8BQQFqAb0B/wEgAUsBlwH/AUgCAgGA/wD/AP8A - AwABIAFNAZ8B/wFCAWoBqgH/AWMBgQG1Af8BYgGBAbYB/wFgAYEBtgH/AVgBfgG1Af8BTwF4AbQB/wE9 - AWsBsQH/ASsBXQGtAf8BMAFhAbAB/wE0AWUBsgH/ATYBZwG1Af8BNwFoAbcB/wE5AWoBuQH/ATsBbAG7 - Af8BPQFuAb4B/wE+AW8BwAH/AUABcQHCAf8BQQFzAcQB/wFDAXUBxwH/AUQBdgHJAf8BRgF4AcsB/wFH - AXoBzQH/AUkBfAHPAf8BSgF9AdEB/wFLAX8B0wH/AUwBgAHUAf8BTgGBAdUB/wFQAYEB1gH/AUwBgQHX - Af8BSAGAAdcB/wFOAYEB2gH/AVMBgQHdAf8BagGEAeIB/wGAAYsB5wH/AbwBxQHzBf8BsgHBAfEB/wFt - AYIB4wH/AVMBgAHfAf8BOQF2AdsB/wE6AXcB3AH/AToBeAHdAf8BZgGNAeYB/wGJAakB7wH/AcQB1AH3 - Df8BvgHLAfYB/wGBAZYB7AH/AXcBjQHrAf8BaQGEAeoB/wFsAYUB6wH/AW4BhgHrAf8BbwGHAewB/wFv - AYcB7AH/AXABhwHsAf8BcAGHAewB/wFqAYQB6AH/AWMBgQHjAf8BQgFrAcEB/wEgAU0BnwH/AUgCAgGA - /wD/AP8AAwABIQFOAaIB/wFIAWsBrQH/AW4BgQG4Af8BaQGBAbgB/wFkAYEBtwH/AV4BgQG3Af8BWAF/ - AbYB/wFMAXcBtAH/AT8BbQGxAf8BOAFoAbEB/wExAWIBsQH/ATQBZQG0Af8BNwFoAbYB/wE5AWoBuAH/ - AToBawG6Af8BPAFtAb0B/wE+AW8BvwH/AUABcQHBAf8BQQFyAcMB/wFDAXQBxgH/AUQBdgHIAf8BRQF4 - AcoB/wFGAXkBzAH/AUgBewHOAf8BSQF8AdAB/wFLAX4B0gH/AUwBgAHTAf8BTgGBAdUB/wFPAYEB1gH/ - AUoBgAHWAf8BRAF8AdUB/wFwAZIB3wH/AZMBsQHpAf8BqAG7Ae4B/wG8AcUB8wH/Ac4B1wH3Af8B3wHp - AfoB/wGWAbEB7AH/AVUBgQHeAf8BUAGAAd4B/wFMAYAB3gH/AU0BgAHfAf8BTgGBAd8B/wFaAYMB4wH/ - AWYBjQHnAf8BrwHGAfMD/wH+Af8B+AH6Af4B/wHyAfUB/gH/AbIBwgH1Af8BeQGPAesB/wFyAYkB6gH/ - AWoBgwHpAf8BbAGEAeoB/wFtAYUB6gH/AW4BhgHrAf8BbgGGAesB/wFvAYYB6wH/AW8BhgHrAf8BagGE - AegB/wFkAYEB5AH/AUMBbAHDAf8BIAFOAaIB/wFIAgIBgP8A/wD/AAMAASEBTwGkAf8BTQFsAbAB/wF5 - AYEBuwH/AXABgQG5Af8BZwGBAbcB/wFkAYEBuAH/AWEBgQG4Af8BWgGBAbcB/wFTAX0BtQH/AUABbgGy - Af8BLQFeAa8B/wEyAWMBsgH/ATYBZwG0Af8BOAFpAbcB/wE5AWoBuQH/ATsBbAG8Af8BPQFuAb4B/wE/ - AXABwAH/AUABcQHCAf8BQgFzAcQB/wFDAXUBxgH/AUQBdwHIAf8BRQF4AcoB/wFHAXoBzAH/AUgBewHO - Af8BSgF9AdAB/wFLAX8B0gH/AU0BgQHUAf8BTgGBAdUB/wFHAX0B1AH/AUABdwHSAf8BigGqAeQB/wHb - AeUB9QH/Ae0B8gH6Bf8B3wHpAfoB/wG/AdIB9QH/AYEBoQHnAf8BPAF3AdgB/wFNAYAB3AH/AV4BgQHg - Af8BYAGBAeEB/wFhAYEB4QH/AU4BgQHgAf8BOwF5Ad8B/wGZAbgB7gH/Av4B/QH/AfEB9AH9Af8B5AHq - AfwB/wGlAbkB8wH/AW4BhwHqAf8BbAGFAekB/wFqAYIB6AH/AWsBgwHpAf8BbAGDAekB/wFsAYQB6gH/ - AWwBhAHqAf8BbQGEAeoB/wFtAYQB6gH/AWkBgwHnAf8BZQGBAeQB/wFDAWwBxQH/ASABTwGlAf8BSAIC - AYD/AP8A/wADAAEjAVMBrQH/AVIBcQG2Af8BgQGGAb8B/wF2AYQBvAH/AWsBgQG4Af8BaAGBAbkB/wFl - AYEBuQH/AWIBgQG6Af8BXgGBAboB/wFNAXcBtgH/ATsBaQGyAf8BOAFnAbMB/wE0AWQBswH/ATcBZwG2 - Af8BOQFqAbgB/wE7AWwBuwH/ATwBbQG9Af8BPgFvAb8B/wE/AXEBwQH/AUABcQHDAf8BPwFwAcUB/wE8 - AXABxgH/ATkBbgHGAf8BPQFyAckB/wFBAXYBzAH/AUMBeAHPAf8BRQF5AdEB/wFJAX4B0wH/AU0BgQHU - Af8BRQF7AdUB/wE8AXUB1AH/AXoBmQHhAf8BrwHEAe4B/wHXAeIB9wX/AdsB5gH5Af8BtwHNAfIB/wF+ - AZ8B5gH/AT0BeAHZAf8BTQGBAdwB/wFdAYEB3wH/AV8BgQHgAf8BYAGBAeEB/wFPAYEB3wH/AT0BeQHd - Af8BlwG3Ae0B/wH5AfsB/QH/Ac0B2QH5Af8BoQG2AfMB/wGBAZ0B7gH/AWABhAHoAf8BZQGDAegB/wFp - AYIB5wH/AWoBggHoAf8BawGCAegB/wFrAYMB6QH/AWsBgwHpAf8BbAGDAekB/wFsAYMB6QH/AWkBggHn - Af8BZQGBAeUB/wFDAW4BygH/ASABUgGuAf8BSAICAYD/AP8A/wADAAElAVcBtQH/AVcBdQG8Af8BgQGK - AcIB/wF8AYYBvgH/AW8BgQG5Af8BbAGBAbkB/wFoAYEBuQH/AWkBgQG8Af8BaQGBAb4B/wFZAX8BugH/ - AUkBdAG1Af8BPQFrAbMB/wExAWEBsQH/ATUBZQG0Af8BOAFpAbYB/wE6AWsBuQH/ATsBbAG7Af8BPQFu - Ab4B/wE+AXABwAH/AT0BbgHCAf8BOwFrAcQB/wE0AWgBwwH/ASwBZAHCAf8BMwFqAcYB/wE6AXABygH/ - ATwBcgHNAf8BPgFzAdAB/wFFAXoB0gH/AUwBgAHTAf8BQgF5AdUB/wE3AXIB1gH/AWEBhwHeAf8BgwGj - AeYB/wHBAdEB8wX/AdcB4wH3Af8BrwHHAe8B/wF6AZwB5AH/AT0BeAHZAf8BTQGBAdwB/wFcAYEB3gH/ - AV4BgQHfAf8BXwGBAeAB/wFPAYEB3gH/AT4BeQHbAf8BlQG1AewB/wH0AfgB/QH/AakBvQH0Af8BZQGB - AeoB/wFcAYEB6AH/AVIBgQHlAf8BXQGBAeYB/wFoAYEB5gH/AWkBgQHnAf8BaQGBAecB/wFpAYEB6AH/ - AWkBgQHoAf8BagGBAegB/wFqAYEB6AH/AWgBgQHnAf8BZQGBAeUB/wFDAW8BzgH/ASABVQG2Af8BSAIC - AYD/AP8A/wADAAEnAVkBtQH/AVkBegG+Af8BggGSAcUB/wF+AYoBwAH/AXIBgQG6Af8BcAGBAboB/wFs - AYEBugH/AWsBgQG8Af8BagGBAb0B/wFiAYEBvAH/AVoBfwG6Af8BRAFwAbYB/wEuAWEBsQH/ATMBZQGz - Af8BNwFoAbUB/wE5AWoBuAH/AToBbAG6Af8BPAFuAb0B/wE+AW8BvwH/ATkBawG/Af8BMwFmAcAB/wFZ - AYEBzQH/AX4BmAHaAf8BiAGmAd8B/wGZAbQB5QH/AWcBiQHXAf8BLQFlAckB/wE0AWwBzAH/AToBcgHO - Af8BSwF6AdUB/wFbAYEB2wH/AWwBhgHfAf8BfQGSAeIB/wGIAaUB5gH/AZoBuAHqAf8BuQHOAfEB/wHX - AeMB9wH/AYUBqQHoAf8BOgF1AdgB/wFFAXsB2gH/AU4BgQHcAf8BTwGBAd0B/wFPAYEB3QH/AU4BgQHe - Af8BTQGBAd8B/wGfAbsB7wH/AfoB/AH+Af8BygHXAfcB/wGZAbEB7wH/AXwBmQHqAf8BVgGBAeQB/wFe - AYEB5QH/AWcBgQHlAf8BaAGBAeYB/wFoAYEB5gH/AWgBgQHnAf8BaAGBAecB/wFpAYEB5wH/AWkBgQHn - Af8BZwGBAecB/wFlAYEB5QH/AUMBbwHOAf8BIQFVAbYB/wFIAgIBgP8A/wD/AAMAASgBWgG1Af8BWgF+ - Ab8B/wGDAZkByAH/AYABjQHBAf8BdQGBAboB/wFzAYEBugH/AXABgQG6Af8BbQGBAbsB/wFqAYEBuwH/ - AWoBgQG9Af8BagGBAb8B/wFLAXUBuAH/ASsBYAGwAf8BMQFkAbIB/wE2AWcBtAH/ATgBaQG2Af8BOQFr - AbgB/wE7AW0BuwH/AT0BbgG9Af8BNAFoAbwB/wEqAWEBuwH/AX0BlwHWAf8ByAHUAfEB/wHkAeoB+AX/ - AYoBpwHgAf8BHAFWAcEB/wEiAV0BxQH/AScBZAHJAf8BUwF7AdQB/wF/AYkB3wH/AXcBhQHfAf8BbwGB - Ad4B/wFWAYEB2QH/AT0BeAHUAf8BmgG4AeoF/wGXAbUB6wH/ATcBcgHWAf8BPAF1AdgB/wFAAXgB2QH/ - AT8BeQHaAf8BPgF5AdoB/wFNAYEB3gH/AVsBgQHiAf8BqQHAAfEF/wHqAfAB+gH/AdQB4QH0Af8BkwGx - AewB/wFZAYEB4wH/AV8BgQHkAf8BZQGBAeQB/wFmAYEB5QH/AWYBgQHlAf8BZwGBAeYB/wFnAYEB5gH/ - AWcBgQHmAf8BZwGBAeYB/wFmAYEB5gH/AWUBgQHlAf8BQwFvAc0B/wEhAVUBtQH/AUgCAgGA/wD/AP8A - AwABKgFbAbUB/wFfAYEBwQH/AYwBoAHLAf8BgQGRAcMB/wF5AYEBuwH/AXcBgQG7Af8BdAGBAbsB/wFx - AYEBvAH/AW4BgQG8Af8BbgGBAb4B/wFuAYEBwAH/AVUBeQG5Af8BOwFoAbIB/wE0AWQBsQH/ASwBXwGw - Af8BNAFmAbQB/wE8AWwBuQH/ATQBZQG3Af8BLQFeAbUB/wEoAVgBtQH/ASMBUQG1Af8BfwGSAdQB/wHT - AdsB8wH/AekB7gH5Bf8BugHLAe0B/wF8AZUB2gH/AW4BjAHYAf8BXwGDAdYB/wGJAaQB4wH/AbsBxAHv - Af8BtwHCAe8B/wGzAcAB7wH/AYcBogHlAf8BYwGDAdsB/wGtAcIB7QX/AcsB2gH1Af8BlwG1AesB/wGD - AaUB6AH/AXUBlQHkAf8BeAGYAeUB/wF7AZsB5QH/AY8BrgHrAf8BqQHAAfEB/wHUAeAB+AX/AfUB+AH9 - Af8B6gHwAfoB/wGbAbgB7wH/AVQBgQHjAf8BXAGBAeMB/wFkAYEB4wH/AWUBgQHkAf8BZQGBAeQB/wFm - AYEB5QH/AWYBgQHlAf8BZgGBAeUB/wFmAYEB5QH/AWUBgQHlAf8BZQGBAeUB/wFDAW8BzQH/ASEBVQG2 - Af8BSAICAYD/AP8A/wADAAErAVwBtQH/AWQBgQHCAf8BlAGmAc4B/wGEAZQBxQH/AXwBgQG7Af8BegGB - AbsB/wF3AYEBuwH/AXQBgQG8Af8BcQGBAbwB/wFyAYEBvgH/AXIBgQHAAf8BXgF9AboB/wFKAXABtAH/ - ATYBYwGwAf8BIQFWAasB/wEwAWIBsgH/AT4BbQG5Af8BLQFdAbMB/wEcAU0BrAH/ARwBRwGtAf8BHAFA - Aa4B/wGBAY0B0QH/Ad0B4gH0Af8B7gHxAfoF/wHpAe4B+QH/AdMB3AHyAf8BsQHDAesB/wGPAakB4wH/ - AccB1AHxDf8BwAHLAfAB/wGBAZYB4QH/AcABywHwDf8B0QHdAfcB/wGiAboB7gH/AakBvwHvAf8BsAHE - Ae8B/wHYAeIB9xX/AaMBvwHxAf8BTgGBAeIB/wFYAYEB4gH/AWIBgQHiAf8BYwGBAeMB/wFjAYEB4wH/ - AWQBgQHjAf8BZAGBAeMB/wFkAYEB5AH/AWQBgQHkAf8BZAGBAeQB/wFkAYEB5AH/AUMBbwHNAf8BIQFV - AbYB/wFIAgIBgP8A/wD/AAMAAS0BXgG2Af8BaQGBAcQB/wGcAa0B0QH/AYoBmAHHAf8BgAGCAbwB/wF+ - AYIBvAH/AXsBgQG8Af8BeAGBAb0B/wF1AYEBvQH/AXUBgQG+Af8BdAGBAb8B/wFkAYEBuwH/AVQBewG3 - Af8BPQFqAbEB/wElAVgBqwH/AWQBggHEAf8BmwGyAdwB/wGKAaQB1wH/AYEBlQHRAf8BgQGSAdEB/wGB - AY8B0QH/AbUBwAHmAf8B7gHxAfoB/wH3AfgB/QX/AfQB9wH8Af8B6QHuAfkB/wHYAeEB9QH/AccB1AHx - Af8B4wHqAfgN/wGvAcIB7AH/AWcBhQHZAf8BrwHCAewF/wHiAeoB+gH/AcQB1QH1Af8BywHZAfYB/wHR - Ad0B9gH/AdQB3wH3Af8B2AHiAfcB/wHUAd8B9wH/Ac8B2wH2Af8BsAHHAfEB/wGRAbIB6wH/AZkBuAHt - Af8BoQG9Ae8B/wF+AZ8B6AH/AVIBgQHhAf8BWgGBAeEB/wFhAYEB4QH/AWIBgQHiAf8BYgGBAeIB/wFj - AYEB4gH/AWMBgQHiAf8BYwGBAeMB/wFjAYEB4wH/AWMBgQHjAf8BYwGBAeMB/wFCAW8BzQH/ASEBVQG2 - Af8BSAICAYD/AP8A/wADAAEuAV8BtgH/AW0BhQHFAf8BowGzAdQB/wGPAZsByAH/AYEBggG8Af8BgQGC - Ab0B/wF+AYEBvQH/AXsBgQG9Af8BeAGBAb0B/wF3AYEBvQH/AXUBgQG9Af8BagGBAbwB/wFeAYEBugH/ - AUQBcAGyAf8BKQFaAaoB/wGQAakB1QX/Ae8B8gH6Af8B3wHlAfUB/wHgAeUB9QH/AeEB5QH0Af8B8AHy - Afot/wGeAbkB6AH/AUUBewHQAf8BngG5AegF/wHEAdUB9QH/AYgBqwHrAf8BxAHVAfUD/wH+Cf8BzwHb - AfYB/wGeAbcB7QH/AWkBjgHiAf8BKwFtAdcB/wE7AXgB2wH/AUsBgQHfAf8BUQGBAd8B/wFWAYEB3wH/ - AVsBgQHgAf8BXwGBAeAB/wFgAYEB4QH/AWABgQHhAf8BYQGBAeEB/wFhAYEB4QH/AWEBgQHiAf8BYQGB - AeIB/wFhAYEB4gH/AWEBgQHiAf8BQQFvAcwB/wEhAVUBtgH/AUgCAgGA/wD/AP8AAwABLwFgAbcB/wFx - AYkBxwH/AasBuQHXAf8BlQGfAcoB/wGBAYUBvAH/AYEBhAG9Af8BgQGDAb4B/wF/AYIBvgH/AXwBgQG+ - Af8BegGBAb4B/wF3AYEBvgH/AXIBgQG/Af8BbAGBAb4B/wFNAXIBtQH/ASwBXQGrAf8BkgGqAdYF/wH3 - AfkB/QH/Ae8B8gH6Af8B8AHyAfoB/wHwAfIB+gH/Ad4B5QH1Af8BywHXAfAB/wGxAcMB5wH/AZYBrwHf - Af8BkAGqAd4B/wGKAaUB3gH/AZkBsgHjAf8BqQG/AecB/wHNAdkB8gH/AfEB8wH8Af8B+AH5Af4F/wHB - AdIB8QH/AYMBpQHiAf8BpgG+AewB/wHJAdYB9QH/AZoBtgHrAf8BcwGWAeEB/wGJAasB5wH/AacBwAHr - Af8BzwHdAfUB/wH2AfkB/gH/AbwBywHzAf8BgQGcAecB/wFjAYcB4AH/AT0BeQHZAf8BSAGAAdwB/wFT - AYEB3gH/AVYBgQHfAf8BWQGBAd8B/wFcAYEB4AH/AV4BgQHgAf8BXwGBAeAB/wFfAYEB4AH/AWABgQHh - Af8BYAGBAeEB/wFgAYEB4QH/AWABgQHhAf8BYAGBAeEB/wFgAYEB4QH/AUEBcAHMAf8BIgFWAbYB/wFI - AgIBgP8A/wD/AAMAATABYAG3Af8BdQGMAckB/wGyAb8B2gH/AZoBowHLAf8BgQGHAbwB/wGBAYYBvQH/ - AYEBhAG+Af8BgQGDAb4B/wF/AYEBvgH/AXwBgQG/Af8BeQGBAb8B/wF6AYEBwQH/AXoBgQHCAf8BVQF0 - AbcB/wEvAV8BrAH/AZMBqwHWFf8BywHXAfAB/wGWAa4B4AH/AWoBhwHPAf8BNQFnAb4B/wEpAV0BvQH/ - ARwBUwG8Af8BOwFtAcYB/wFaAYEBzwH/AZsBswHkAf8B4wHnAfgB/wHxAfMB/AX/AeQB6wH6Af8ByQHX - AfQB/wGuAcIB8AH/AZIBrQHrAf8BeAGXAeEB/wFVAYEB1wH/AVYBgQHYAf8BVwGBAdgB/wGeAboB6wH/ - Ae0B8wH9Af8BqAG6Ae8B/wFrAYEB4QH/AV0BgQHeAf8BTgGBAdsB/wFUAYEB3AH/AVoBgQHdAf8BWwGB - Ad4B/wFbAYEB3gH/AVwBgQHfAf8BXAGBAd8B/wFdAYEB3wH/AV0BgQHfAf8BXgGBAeAB/wFeAYEB4AH/ - AV4BgQHgAf8BXgGBAeAB/wFeAYEB4AH/AV4BgQHgAf8BQAFwAcsB/wEiAVYBtgH/AUgCAgGA/wD/AP8A - AwABMAFgAbcB/wF5AY8BywH/AbkBxQHeAf8BngGoAc4B/wGBAYoBvQH/AYEBiQG+Af8BgQGHAb8B/wGB - AYYBvwH/AYEBhAG/Af8BgAGDAcAB/wF9AYEBwAH/AX4BggHBAf8BfgGDAcEB/wFSAW8BsgH/ASYBUgGj - Af8BewGPAccB/wHJAdQB6wH/AeQB6gH1Bf8B4AHiAfQB/wHAAcUB6AH/AYsBoQHYAf8BXQGBAccB/wFK - AXcBwwH/ATUBaAG/Af8BMQFlAb8B/wEtAWEBvwH/AToBbQHEAf8BRwF5AcgB/wFmAYcB0wH/AYEBnAHe - Af8BuAHKAe4B/wHzAfcB/QH/AewB8QH8Af8B5AHrAfoB/wHXAeEB+AH/AckB1gH1Af8BsQHGAe4B/wGY - AbYB5wH/AXMBlQHeAf8BRgF8AdQB/wFwAZMB3wH/AZMBswHqAf8BegGYAeQB/wFZAYEB3QH/AVYBgQHc - Af8BUgGBAdsB/wFWAYEB3AH/AVkBgQHcAf8BWgGBAd0B/wFaAYEB3QH/AVsBgQHeAf8BWwGBAd4B/wFc - AYEB3gH/AVwBgQHeAf8BXQGBAd8B/wFdAYEB3wH/AV0BgQHfAf8BXQGBAd8B/wFdAYEB3wH/AV0BgQHf - Af8BPwFwAcsB/wEiAVYBtgH/AUgCAgGA/wD/AP8AAwABMAFgAbcB/wF8AZIBzAH/AcABywHhAf8BoQGs - AdAB/wGBAYwBvgH/AYEBiwG/Af8BgQGJAb8B/wGBAYgBvwH/AYEBhgG/Af8BgQGEAcAB/wGAAYEBwAH/ - AYEBgwHAAf8BgQGEAcAB/wFPAWkBrQH/ARwBRQGZAf8BWwF7AbgB/wGSAagB1wH/AckB1AHrBf8BwAHF - AegB/wGBAYsB0QH/AVIBcwG/Af8BHAFSAa0B/wEpAV4BtgH/ATUBaQG/Af8BOQFsAcEB/wE9AW4BwgH/ - ATkBbQHCAf8BNAFrAcEB/wEoAWIBwgH/ARwBWAHDAf8BgQGgAd8B/wHnAe8B+gH/AfMB9wH9Df8B8QH1 - AfsB/wHiAeoB9wH/AYcBqAHjAf8BNAFuAc8B/wE6AXQB0wH/AUABegHXAf8BRAF9AdgB/wFHAX8B2QH/ - AU8BgQHaAf8BVgGBAdoB/wFXAYEB2wH/AVcBgQHbAf8BWAGBAdwB/wFYAYEB3AH/AVkBgQHdAf8BWgGB - Ad0B/wFaAYEB3QH/AVoBgQHdAf8BWwGBAd4B/wFbAYEB3gH/AVsBgQHeAf8BWwGBAd4B/wFbAYEB3gH/ - AVsBgQHeAf8BPgFvAcoB/wEhAVUBtgH/AUgCAgGA/wD/AP8AAwABMAFgAbcB/wF/AZUBzgH/AccB0QHk - Af8BpAGxAdIB/wGBAZABvwH/AYEBjgHAAf8BgQGMAb8B/wGBAYsBwAH/AYEBiQHAAf8BgQGHAcEB/wGB - AYQBwQH/AYEBhAHAAf8BgQGDAb8B/wFdAXcBswH/ATgBYgGlAf8BgQGXAcgB/wHJAdQB6wH/AeQB6gH1 - Bf8BpQGxAd0B/wFSAWoBugH/AT0BZQG2Af8BJwFfAbIB/wEwAWUBuAH/ATkBawG9Af8BPAFuAb8B/wE+ - AW8BwQH/AT0BcAHCAf8BOwFvAcIB/wEyAWkBwwH/ASgBYQHDAf8BagGJAdUB/wGjAbgB5wH/AdEB3AHz - Df8ByQHYAfMB/wGRAbAB5gH/AWsBjgHcAf8BPQF1AdIB/wFDAXoB1QH/AUgBfwHXAf8BSwGBAdgB/wFN - AYEB2AH/AVEBgQHZAf8BVQGBAdkB/wFWAYEB2gH/AVYBgQHaAf8BVwGBAdsB/wFXAYEB2wH/AVgBgQHc - Af8BWQGBAdwB/wFZAYEB3AH/AVkBgQHcAf8BWgGBAd0B/wFaAYEB3QH/AVoBgQHdAf8BWgGBAd0B/wFa - AYEB3QH/AVoBgQHdAf8BPgFvAcoB/wEhAVUBtgH/AUgCAgGA/wD/AP8AAwABLwFfAbcB/wGBAZcBzwH/ - Ac0B1gHmAf8BpwG1AdMB/wGBAZMBwAH/AYEBkQHAAf8BgQGOAb8B/wGBAY0BwAH/AYEBiwHBAf8BgQGJ - AcEB/wGBAYcBwQH/AYEBhQHAAf8BgAGCAb4B/wFqAYEBuAH/AVMBfgGxAf8BpQG7AdgN/wGKAZwB0QH/ - ARwBQQGiAf8BJwFWAa0B/wExAWsBtwH/ATcBbAG5Af8BPAFtAbsB/wE+AW8BvQH/AT8BcAG/Af8BQQFy - AcEB/wFCAXMBwwH/ATsBbwHDAf8BNAFqAcIB/wFOAXoBywH/AWcBgQHTAf8BrwHAAekN/wGgAboB6gH/ - AUgBfQHUAf8BRwF8AdUB/wFFAXsB1QH/AUsBfwHWAf8BUAGBAdYB/wFRAYEB1wH/AVIBgQHXAf8BUwGB - AdgB/wFTAYEB2AH/AVQBgQHZAf8BVAGBAdkB/wFVAYEB2gH/AVYBgQHaAf8BVwGBAdsB/wFXAYEB2wH/ - AVcBgQHbAf8BVwGBAdsB/wFYAYEB3AH/AVgBgQHcAf8BWAGBAdwB/wFYAYEB3AH/AVgBgQHcAf8BWAGB - AdwB/wE9AW8ByQH/ASEBVQG2Af8BSAICAYD/AP8A/wADAAEuAV4BtwH/AYEBmQHQAf8B0wHaAekB/wGr - AbkB1gH/AYQBlwHCAf8BgwGUAcIB/wGBAZEBwAH/AYEBkAHBAf8BgQGOAcEB/wGBAYoBwAH/AYEBhgG/ - Af8BigGVAcgB/wGWAaMB0AH/AZ4BrwHUAf8BpQG7AdgB/wHSAd0B7AX/AfMB9QH7Af8B5gHrAfYB/wGB - AZMBzQH/ARwBRAGiAf8BKQFXAawB/wE0AWoBtgH/ATgBawG4Af8BOwFsAboB/wE9AW4BvAH/AT4BbwG+ - Af8BQAFxAcAB/wFBAXIBwgH/ATwBcAHDAf8BOAFtAcMB/wFBAXMByAH/AUkBeAHMAf8BoAG4AeYF/wHu - AfIB+wH/AdwB5AH3Af8BhAGlAeMB/wEzAW0BzwH/AT0BdAHSAf8BRwF7AdQB/wFLAX8B1QH/AU8BgQHV - Af8BUAGBAdYB/wFRAYEB1gH/AVIBgQHXAf8BUgGBAdcB/wFTAYEB2AH/AVMBgQHYAf8BVAGBAdkB/wFV - AYEB2QH/AVYBgQHaAf8BVgGBAdoB/wFWAYEB2gH/AVYBgQHaAf8BVwGBAdsB/wFXAYEB2wH/AVcBgQHb - Af8BVwGBAdsB/wFXAYEB2wH/AVYBgQHbAf8BPAFvAcgB/wEhAVUBtgH/AUgCAgGA/wD/AP8AAwABLAFd - AbYB/wGBAZoB0QH/AdgB3gHrAf8BrwG8AdgB/wGGAZoBxAH/AYQBlwHDAf8BgQGTAcEB/wGBAZIBwQH/ - AYEBkAHBAf8BgQGLAb8B/wGBAYUBvQH/AZgBpQHPAf8BswHEAeEB/wHZAeIB8A3/AeYB6wH2Af8BzQHW - Ae0B/wF5AYoByAH/ARwBRgGiAf8BKgFXAasB/wE3AWgBtAH/ATkBagG2Af8BOgFrAbgB/wE8AW0BugH/ - AT0BbgG8Af8BPgFwAb4B/wE/AXEBwAH/AT0BcQHCAf8BOwFwAcQB/wEzAWsBxAH/ASsBZgHEAf8BkQGv - AeIF/wHcAeQB9wH/AbgByQHvAf8BbwGPAdwB/wEdAVwByQH/ATMBawHOAf8BSAF6AdIB/wFLAX4B0wH/ - AU0BgQHUAf8BTgGBAdUB/wFPAYEB1QH/AVABgQHWAf8BUAGBAdYB/wFRAYEB1wH/AVIBgQHXAf8BUwGB - AdgB/wFTAYEB2AH/AVQBgQHZAf8BVAGBAdkB/wFUAYEB2QH/AVQBgQHZAf8BVQGBAdoB/wFVAYEB2gH/ - AVUBgQHaAf8BVQGBAdoB/wFVAYEB2gH/AVQBgQHZAf8BOwFuAccB/wEhAVUBtQH/AUgCAgGA/wD/AP8A - AwABKgFcAbYB/wGBAZsB0gH/AdwB4QHtAf8BtAHAAdoB/wGMAZ8BxwH/AYgBmwHFAf8BgwGXAcMB/wGC - AZUBwgH/AYEBkgHCAf8BgQGOAcEB/wGBAYkBwAH/AZMBogHNAf8BpwG5AdsB/wHSAdsB7QH/AvwB/gH/ - Av4G/wHwAfMB+gH/AeEB5gH0Af8BgQGQAcoB/wEcAUIBnwH/ASoBVQGpAf8BNgFnAbIB/wE4AWkBtQH/ - ATkBagG3Af8BOwFsAbkB/wE8AW0BuwH/AT0BbwG9Af8BPgFwAb8B/wE7AW4BwQH/ATcBbAHDAf8BOQFv - AcUB/wE7AXEBxgH/AZkBtAHjBf8B7gHyAfsB/wHcAeQB9wH/AZEBqQHmAf8BTgF2AdQB/wFIAXUB0wH/ - AUEBdQHSAf8BRwF7AdMB/wFMAYAB1AH/AU0BgQHUAf8BTgGBAdQB/wFPAYEB1QH/AU8BgQHWAf8BUAGB - AdYB/wFRAYEB1gH/AVIBgQHXAf8BUgGBAdcB/wFTAYEB2AH/AVMBgQHYAf8BUwGBAdgB/wFTAYEB2AH/ - AVQBgQHZAf8BVAGBAdkB/wFUAYEB2QH/AVQBgQHZAf8BUwGBAdkB/wFSAYEB2AH/AToBbQHHAf8BIQFV - AbYB/wFIAgIBgP8A/wD/AAMAAScBWgG1Af8BgQGbAdIB/wHfAeQB7wH/AbgBxAHcAf8BkQGjAckB/wGL - AZ8BxwH/AYUBmgHEAf8BgwGXAcMB/wGBAZQBwgH/AYEBkQHCAf8BgQGNAcIB/wGOAZ4BywH/AZsBrgHU - Af8BygHTAekB/wH5AfgB/QH/AvwB/gX/AvoB/QH/AvUB+gH/AYUBlQHLAf8BHAE9AZsB/wEpAVIBpgH/ - ATUBZgGwAf8BNwFoAbMB/wE4AWkBtQH/ATkBawG3Af8BOgFsAbkB/wE8AW0BuwH/AT0BbgG9Af8BOAFr - Ab8B/wEzAWgBwQH/AT8BcgHFAf8BSwF7AcgB/wGhAbkB5A3/AbsBwwHvAf8BfgGHAd4B/wFcAX8B2AH/ - ATkBbwHRAf8BQgF3AdIB/wFLAX4B0wH/AUwBfwHTAf8BTAGAAdMB/wFNAYEB1AH/AU4BgQHVAf8BTwGB - AdUB/wFPAYEB1QH/AVABgQHWAf8BUAGBAdYB/wFRAYEB1wH/AVEBgQHXAf8BUgGBAdcB/wFSAYEB1wH/ - AVIBgQHYAf8BUgGBAdgB/wFTAYEB2AH/AVMBgQHYAf8BUQGBAdcB/wFPAYEB1gH/ATgBbAHGAf8BIAFU - AbYB/wFIAgIBgP8A/wD/AAMAASQBVQGrAf8BgQGaAc4B/wHhAeYB8AH/AbwByAHeAf8BlwGoAcwB/wGQ - AaMByQH/AYoBnQHGAf8BhwGaAcUB/wGEAZcBxAH/AYMBlQHDAf8BgQGRAcMB/wGIAZcBxwH/AY4BnAHK - Af8BngGtAdIB/wGuAb0B2QH/AckB0wHnAf8B5AHpAfQB/wHvAfIB+QH/AvoB/QH/AZIBpAHRAf8BMQFW - AaUB/wEtAVkBqAH/ASkBXAGrAf8BMAFiAa8B/wE3AWgBswH/ATgBagG1Af8BOQFrAbcB/wE5AWsBuQH/ - ATcBawG7Af8BMAFkAboB/wEoAVwBuQH/AVcBgAHKAf8BgQGcAdoB/wG/Ac4B7Q3/Ad0B4QH3Af8BuwHD - Ae8B/wF8AZQB3gH/ATQBbAHNAf8BPwF1AdAB/wFKAX0B0gH/AUsBfgHTAf8BSwF/AdMB/wFMAYAB1AH/ - AU0BgAHUAf8BTgGBAdQB/wFOAYEB1AH/AU8BgQHVAf8BTwGBAdUB/wFQAYEB1gH/AVABgQHWAf8BUQGB - AdYB/wFRAYEB1gH/AVEBgQHXAf8BUQGBAdcB/wFSAYEB1wH/AVIBgQHXAf8BTwGBAdYB/wFNAYEB1AH/ - ATcBaQHAAf8BIAFRAawB/wFIAgIBgP8A/wD/AAMAASEBTwGhAf8BgQGYAckB/wHjAegB8QH/AcABywHg - Af8BnAGtAc4B/wGVAacBywH/AY4BoAHHAf8BigGdAcYB/wGGAZoBxQH/AYQBmAHEAf8BgQGVAcMB/wGB - AZABwgH/AYEBigHAAf8BegGGAbsB/wFrAYEBtQH/AZYBqgHPAf8ByAHSAegB/wHkAekB9AX/AZ8BswHX - Af8BRgFvAa4B/wExAWABqgH/ARwBUQGlAf8BKQFcAasB/wE2AWYBsQH/ATcBaAGzAf8BOAFpAbUB/wE1 - AWkBtwH/ATEBaAG5Af8BJwFcAbUB/wEcAU8BsQH/AW8BhgHPAf8BuQHFAewB/wHcAeIB9hX/AZMBsAHk - Af8BLwFoAcgB/wE8AXIBzQH/AUgBfAHRAf8BSQF9AdIB/wFKAX0B0gH/AUsBfgHTAf8BSwF/AdMB/wFM - AYAB0wH/AUwBgAHTAf8BTQGBAdQB/wFNAYEB1AH/AU4BgQHVAf8BTgGBAdUB/wFPAYEB1QH/AU8BgQHV - Af8BTwGBAdYB/wFPAYEB1gH/AVABgQHWAf8BUAGBAdYB/wFNAYEB1AH/AUoBfgHSAf8BNQFmAboB/wEg - AU4BogH/AUgCAgGA/wD/AP8AAwABIQFOAaAB/wGBAZcByQH/AeEB5gHxAf8BwgHNAeEB/wGjAbIB0QH/ - AZsBqwHNAf8BkgGkAckB/wGOAaEByAH/AYoBngHHAf8BhwGbAcYB/wGEAZgBxAH/AYMBlAHEAf8BgQGQ - AcMB/wGAAYoBvwH/AXcBgwG6Af8BmAGoAdAB/wHAAcwB5gH/AeAB5gHzBf8BzwHZAesB/wGfAbMB1wH/ - AW4BiAHCAf8BNgFkAa0B/wEwAVsBqgH/ASkBUQGmAf8BKgFVAakB/wEqAVgBrAH/ASkBWAGvAf8BJwFY - AbIB/wFCAW0BvQH/AVwBgQHIAf8BmQGuAd8B/wHcAeIB9gH/AdMB3AH0Af8BygHWAfEB/wG4AcoB6wH/ - AaUBvQHlAf8BrwG/AegB/wG4AcEB6gH/AXkBkQHZAf8BMgFpAccB/wE9AXIBzAH/AUcBewHQAf8BSAF8 - AdEB/wFJAXwB0QH/AUoBfQHSAf8BSgF+AdIB/wFLAX8B0wH/AUsBfwHTAf8BTAGAAdMB/wFMAYAB0wH/ - AU0BgQHUAf8BTQGBAdQB/wFOAYEB1AH/AU4BgQHUAf8BTgGBAdUB/wFOAYEB1QH/AU8BgQHVAf8BTwGB - AdUB/wFLAX8B0wH/AUgBfAHRAf8BNAFlAbkB/wEgAU4BoQH/AUgCAgGA/wD/AP8AAwABIAFNAZ8B/wGB - AZUByAH/Ad4B5AHwAf8BxAHOAeIB/wGpAbcB0wH/AaABrwHPAf8BlgGnAcoB/wGSAaQByQH/AY4BoQHI - Af8BigGeAccB/wGGAZoBxQH/AYQBmAHFAf8BgQGWAcUB/wGBAY0BwgH/AYEBhAG+Af8BmQGlAdEB/wG3 - AcYB4wH/AdsB4wHxDf8BowG3AdoB/wFPAXYBtAH/ATYBWQGoAf8BHAE8AZsB/wEcAUEBnwH/ARwBRgGi - Af8BHAFHAaYB/wEcAUgBqgH/AVwBfgHEAf8BlAGrAd4B/wHKAdUB7wX/AcoB1gHxAf8BlQGtAeMB/wF4 - AZQB1wH/AVMBgQHLAf8BZgGBAdAB/wF4AYIB1QH/AVcBegHOAf8BNQFqAcYB/wE9AXIBygH/AUUBeQHO - Af8BRgF6Ac8B/wFHAXsB0AH/AUgBfAHRAf8BSAF8AdEB/wFJAX0B0gH/AUkBfQHSAf8BSgF+AdIB/wFK - AX4B0gH/AUsBfwHTAf8BSwF/AdMB/wFMAX8B0wH/AUwBfwHTAf8BTAGAAdMB/wFMAYAB0wH/AU0BgAHU - Af8BTQGAAdQB/wFJAX0B0gH/AUUBeQHPAf8BMwFjAbcB/wEgAU0BnwH/AUgCAgGA/wD/AP8AAwABIAFK - AZUB/wGBAZIBwwH/AdkB4AHwAf8BxQHPAeMB/wGwAb0B1gH/AaUBtAHSAf8BmgGrAcwB/wGWAagBywH/ - AZIBpQHKAf8BjgGiAckB/wGKAZ4BxwH/AYcBmwHGAf8BhAGZAcYB/wGBAZIBxAH/AYEBjAHBAf8BrQG3 - AdkB/wHbAeMB8QH/Ae0B8QH4Df8B0QHbAe0B/wGjAbcB2gH/AZcBqAHUAf8BigGaAc0B/wGDAZgBzQH/ - AYEBlgHLAf8BgwGbAdAB/wGKAaAB1QH/AaoBuwHiAf8BygHVAe8B/wHlAeoB9wX/AaoBuAHjAf8BXQF4 - AccB/wFOAXYBxgH/AUABcwHEAf8BTAF4AckB/wFYAXsBzQH/AUoBdQHLAf8BOwFvAccB/wFAAXQBygH/ - AUQBeAHNAf8BRQF5Ac4B/wFGAXoBzwH/AUcBewHQAf8BRwF7AdAB/wFIAXwB0QH/AUgBfAHRAf8BSQF9 - AdEB/wFJAX0B0QH/AUoBfgHSAf8BSgF+AdIB/wFLAX4B0gH/AUsBfgHSAf8BSwF/AdMB/wFLAX8B0wH/ - AUwBfwHTAf8BTAF/AdMB/wFHAXsB0QH/AUMBdwHNAf8BMgFhAbEB/wEgAUoBlQH/AUgCAgGA/wD/AP8A - AwABHwFHAYsB/wF+AY4BvQH/AdQB3AHvAf8BxQHPAeQB/wG2AcIB2QH/AaoBuAHUAf8BngGuAc4B/wGa - AasBzQH/AZYBqAHLAf8BkgGlAcoB/wGOAaEByAH/AYoBngHHAf8BhgGbAcYB/wGEAZcBxQH/AYEBkwHD - Af8BwAHJAeEl/wHyAfYB+gH/AeQB7QH0Af8B8gH2AfoV/wGKAZkB1QH/ARwBOgGrAf8BJAFPAbQB/wEs - AWMBvQH/ATIBaAHBAf8BOAFsAcUB/wE9AXABxwH/AUEBdAHIAf8BQgF1AcoB/wFDAXYBywH/AUQBdwHN - Af8BRAF4Ac4B/wFFAXkBzwH/AUUBeQHPAf8BRgF6AdAB/wFGAXoB0AH/AUcBewHQAf8BRwF7AdAB/wFI - AXwB0QH/AUgBfAHRAf8BSQF9AdEB/wFJAX0B0QH/AUkBfQHSAf8BSQF9AdIB/wFKAX0B0gH/AUoBfQHS - Af8BRQF5Ac8B/wFAAXQBywH/ATABXgGrAf8BHwFHAYsB/wFIAgIBgP8A/wD/AAMAAR8BRgGGAf8BegGK - AboB/wHMAdYB7QH/AcUBzwHlAf8BvQHIAdwB/wGwAb0B1gH/AaIBsgHQAf8BngGvAc8B/wGaAasBzQH/ - AZcBqAHMAf8BkwGlAcoB/wGPAaIByQH/AYsBnwHHAf8BhgGZAcQB/wGBAZMBwQH/AakBtgHWAf8B0QHZ - AeoB/wHFAc0B5AH/AbkBwAHeAf8BoQGoAdAB/wGKAZABwgH/AcABxAHeAf8B9QH4AfoB/wH6AfwB/QX/ - AfkB+wH9Af8B8gH2AfoB/wHjAeoB9QH/AdQB3QHwAf8B6gHuAfgN/wGiAa0B3gH/AUwBYgG9Af8BPgFk - Ab0B/wEwAWUBvQH/ATYBagHAAf8BOwFuAcMB/wE+AXABxQH/AUABcwHHAf8BQQF0AckB/wFCAXUBygH/ - AUMBdgHMAf8BQwF3Ac0B/wFEAXgBzgH/AUQBeAHOAf8BRQF5Ac8B/wFFAXkBzwH/AUYBegHPAf8BRgF6 - Ac8B/wFHAXsB0AH/AUcBewHQAf8BSAF8AdAB/wFIAXwB0AH/AUgBfAHRAf8BSAF8AdEB/wFJAXwB0QH/ - AUkBfAHRAf8BQwF3Ac4B/wE+AXEByQH/AS8BXAGoAf8BHwFGAYYB/wFIAgIBgP8A/wD/AAMAAR8BRAGB - Af8BdgGGAbYB/wHEAc8B6gH/AcQBzgHlAf8BwwHNAd8B/wG1AcEB2AH/AaYBtQHRAf8BogGyAdAB/wGe - Aa4BzgH/AZsBqwHNAf8BlwGoAcsB/wGTAaUBygH/AY8BogHIAf8BiAGaAcMB/wGBAZIBvgH/AZIBowHK - Af8BowGzAdUB/wGLAZoByQH/AXoBgQG8Af8BSwFZAaEB/wEcASgBhQH/AYEBiAG9Af8B6wHwAfUB/wH1 - AfgB+g3/AdQB3QHwAf8BqQG7AeEB/wHUAd0B8A3/AboBwQHnAf8BfAGCAc4B/wFYAXkBxgH/ATQBZwG9 - Af8BOQFrAb8B/wE9AW8BwQH/AT4BcAHDAf8BPwFxAcUB/wFAAXIBxwH/AUABcwHIAf8BQQF0AcoB/wFB - AXUBywH/AUIBdgHMAf8BQwF2Ac0B/wFEAXcBzgH/AUQBdwHOAf8BRQF4Ac4B/wFFAXgBzgH/AUUBeQHP - Af8BRQF5Ac8B/wFGAXoBzwH/AUYBegHPAf8BRgF6AdAB/wFGAXoB0AH/AUcBewHQAf8BRwF7AdAB/wFB - AXUBzAH/ATsBbgHHAf8BLQFZAaQB/wEfAUQBgQH/AUgCAgGA/wD/AP8AAwABHwFBAYEB/wFwAYEBtQH/ - AbkBxwHnAf8BwgHNAeUB/wHJAdIB4gH/AboBxQHbAf8BqgG4AdMB/wGmAbUB0gH/AaIBsgHQAf8BnwGv - Ac8B/wGbAawBzQH/AZcBqQHMAf8BkwGlAcoB/wGOAaABxwH/AYgBmgHEAf8BjwGhAckB/wGVAagBzgH/ - AYkBmwHIAf8BgQGOAcEB/wFrAXkBswH/AVIBXAGlAf8BlAGdAcsB/wHeAeYB8QH/Ae8B8wH4Bf8B0QHb - AewB/wGiAbcB2AH/AYEBlAHKAf8BZwF4AbsB/wF9AYwByAH/AYwBpwHUAf8BsAHBAeIB/wHUAdwB8AH/ - AY0BogHXAf8BTQFvAb4B/wE+AWkBuwH/AS4BYwG4Af8BNAFnAbwB/wE5AWsBvwH/AToBbAHBAf8BOgFt - AcMB/wE7AW8BxQH/ATwBcgHGAf8BPgFzAcgB/wFAAXQByQH/AUEBdQHLAf8BQgF1AcwB/wFDAXYBzQH/ - AUMBdgHNAf8BRAF3Ac0B/wFEAXcBzQH/AUQBeAHOAf8BRAF4Ac4B/wFFAXkBzgH/AUUBeQHOAf8BRQF5 - Ac8B/wFFAXkBzwH/AUYBeQHPAf8BRgF5Ac8B/wE/AXMBywH/ATkBbAHGAf8BLAFXAaQB/wEfAUEBgQH/ - AUgCAgGA/wD/AP8AAwABHgE+AYEB/wFqAYEBswH/Aa4BvgHkAf8BvwHLAeUB/wHPAdcB5QH/Ab8ByQHd - Af8BrgG7AdUB/wGqAbgB0wH/AaYBtQHRAf8BowGyAdAB/wGfAa8BzwH/AZsBrAHOAf8BlwGoAcwB/wGT - AaUBywH/AY8BogHJAf8BiwGfAcgB/wGHAZwBxwH/AYYBnAHHAf8BhAGbAcYB/wGCAZEBxQH/AYEBhwHE - Af8BqAGyAdkB/wHQAdwB7QH/AegB7gH2Bf8BogG3AdgB/wFMAXYBsAH/ATQBUgGjAf8BHAEtAZUB/wEe - AUIBnwH/ASABVgGpAf8BaQGDAcUB/wGpAbgB4QH/AWcBggHHAf8BHQFTAa0B/wEjAVkBsAH/ASgBXwGz - Af8BLgFjAbgB/wE0AWYBvQH/ATUBZwG/Af8BNQFoAcEB/wE2AWwBwwH/ATcBcAHEAf8BOwFxAcYB/wE/ - AXIBxwH/AUABcwHJAf8BQAFzAcoB/wFBAXQBywH/AUEBdQHMAf8BQgF1AcwB/wFCAXUBzAH/AUMBdgHN - Af8BQwF2Ac0B/wFDAXcBzQH/AUMBdwHNAf8BRAF3Ac0B/wFEAXcBzQH/AUQBdwHOAf8BRAF3Ac4B/wE9 - AXAByQH/ATYBaQHEAf8BKwFUAaMB/wEfAT4BgQH/AUgCAgGA/wD/AP8AAwABSAICAYABXAEEAQUBwAGi - AbUB4QH/AbwByQHlAf8B1QHcAegB/wHEAc0B4AH/AbMBvwHXAf8BrwG8AdUB/wGrAbkB0wH/AacBtgHS - Af8BowGyAdEB/wGfAa8B0AH/AZsBrAHOAf8BlwGpAc0B/wGTAaYBywH/AY8BowHKAf8BiwGfAckB/wGJ - AZ4ByAH/AYYBnAHHAf8BgwGWAcYB/wGBAZABxQH/AZUBpQHSAf8BqQG6Ad0B/wG+AcsB5AH/AdMB2wHr - Af8BmwGtAdQB/wFrAYEBvAH/AVwBcQG0Af8BTQFcAasB/wFLAWYBsQH/AUoBcAG2Af8BbAGCAcUB/wGF - AZ0B0wH/AWkBggHGAf8BRAFuAbkB/wFIAXEBuwH/AUsBdAG8Af8BTQF2Ab8B/wFOAXgBwgH/AU4BeAHD - Af8BTAF5AcQB/wFKAXoBxgH/AUgBewHHAf8BSAF6AcgB/wFIAXkByAH/AUgBeQHKAf8BRgF4AcsB/wFG - AXgBywH/AUQBdwHMAf8BRAF2AcwB/wFCAXUBzAH/AUIBdQHMAf8BQgF1AcwB/wFCAXYBzAH/AUIBdgHM - Af8BQwF2Ac0B/wFDAXYBzQH/AUMBdgHNAf8BQwF2Ac0B/wE7AW8ByAH/ATQBZwHCAf8BXAEDAQQBwAFI - AgIBgAErAgEBQP8A/wD/AAcAAUgCAgGAAZYBqwHdAf8BuAHGAeQB/wHaAeAB6wH/AckB0QHiAf8BtwHC - AdgB/wGzAb8B1wH/Aa8BvAHVAf8BqwG5AdQB/wGnAbUB0gH/AaMBsgHRAf8BnwGvAc8B/wGbAawBzgH/ - AZcBqQHMAf8BkwGmAcsB/wGPAaIBygH/AYsBnwHJAf8BhwGcAccB/wGEAZoBxwH/AYEBmAHGAf8BgQGY - AcoB/wGBAZcBzQH/AZQBpwHSAf8BpwG2AdcB/wGUAaIB0AH/AYEBjQHIAf8BgQGIAcUB/wF9AYIBwQH/ - AXgBggHCAf8BcwGBAcMB/wFuAYEBxAH/AWkBgQHEAf8BagGBAcUB/wFrAYEBxQH/AWwBgQHFAf8BbQGB - AcUB/wFrAYEBxgH/AWgBgQHGAf8BZgGBAcYB/wFjAYEBxgH/AV4BgQHIAf8BWQGBAckB/wFVAYEByQH/ - AVEBfwHJAf8BTwF+AcoB/wFMAXwBywH/AUoBewHLAf8BRwF5AcsB/wFFAXcBywH/AUIBdQHLAf8BQQF0 - AcsB/wFAAXMBywH/AUABdAHLAf8BQAF0AcsB/wFBAXQBzAH/AUEBdAHMAf8BQQF1AcwB/wFBAXUBzAH/ - ATkBbQHGAf8BMQFkAcAB/wFIAgIBgP8A/wD/AA8AAUgCAgGAAYwBoQHaAf8BtgHDAeQB/wHfAeQB7gH/ - Ac4B1QHkAf8BuwHGAdoB/wG3AcMB2QH/AbMBwAHXAf8BrwG9AdYB/wGrAbkB1AH/AacBtgHTAf8BowGz - AdEB/wGfAbAB0AH/AZsBrAHOAf8BmAGpAc0B/wGUAaYBzAH/AZABowHLAf8BjAGfAckB/wGIAZ0ByAH/ - AYUBmgHHAf8BgwGZAckB/wGBAZcBygH/AYsBnwHNAf8BlAGlAdAB/wGLAZoBzAH/AYEBjwHIAf8BgQGL - AcYB/wGBAYcBxAH/AYEBhgHEAf8BfgGEAcUB/wF5AYMBxgH/AXQBggHGAf8BcwGCAcYB/wFyAYEBxgH/ - AXEBgQHGAf8BcAGBAcYB/wFtAYEBxwH/AWoBgQHHAf8BaAGBAccB/wFlAYEBxwH/AWEBgQHIAf8BXQGB - AckB/wFZAYEByQH/AVYBgQHJAf8BUwGBAcoB/wFQAX8BywH/AU4BfQHLAf8BSwF7AcsB/wFIAXkBywH/ - AUUBdwHLAf8BQwF1AcsB/wFBAXQBywH/AUABdAHLAf8BPwFzAcoB/wFAAXMBywH/AUABcwHLAf8BQAF0 - AcsB/wFAAXQBywH/ATcBawHFAf8BLwFiAb8B/wFIAgIBgP8A/wD/AA8AAUgCAgGAAYEBlgHWAf8BswG/ - AeMB/wHkAegB8AH/AdIB2QHmAf8BvwHJAdwB/wG7AcYB2wH/AbcBwwHZAf8BswHAAdcB/wGvAbwB1QH/ - AasBuQHUAf8BpwG2AdIB/wGjAbMB0QH/AZ8BrwHPAf8BnAGsAc4B/wGYAakBzQH/AZQBpgHMAf8BkAGi - AcoB/wGMAZ8ByQH/AYgBnAHIAf8BhQGaAcgB/wGBAZcBxwH/AYEBlgHIAf8BgQGUAcgB/wGBAZIByAH/ - AYEBkAHHAf8BgQGOAccB/wGBAYsBxgH/AYEBiQHGAf8BgQGHAcYB/wGBAYUBxwH/AX4BggHHAf8BewGC - AccB/wF4AYEBxwH/AXUBgQHHAf8BcgGBAccB/wFvAYEBxwH/AWwBgQHHAf8BaQGBAcgB/wFmAYEByAH/ - AWMBgQHIAf8BYAGBAcgB/wFdAYEByQH/AVoBgQHJAf8BVwGBAcoB/wFUAYEBygH/AVEBfwHKAf8BTgF9 - AcoB/wFLAXsBywH/AUcBeAHLAf8BRAF2AcsB/wFBAXQBygH/AUABcwHKAf8BPgFxAckB/wE+AXIBygH/ - AT4BcgHKAf8BPgFyAcoB/wE+AXIBygH/ATUBaQHEAf8BLAFgAb0B/wFIAgIBgP8A/wD/AA8AAUgCAgGA - AYEBjAHSAf8BsQG8AeIB/wHpAewB8wH/AdYB3QHpAf8BwwHNAd4B/wG/AcoB3QH/AbsBxgHbAf8BtwHD - AdkB/wGzAcAB1wH/Aa8BvQHWAf8BqwG5AdQB/wGnAbYB0wH/AaMBswHRAf8BoAGwAdAB/wGcAa0BzwH/ - AZgBqgHOAf8BlAGmAcwB/wGQAaMBywH/AYwBoAHKAf8BiQGdAckB/wGFAZoByAH/AYMBmAHIAf8BgQGW - AccB/wGBAZQByAH/AYEBkgHHAf8BgQGQAcgB/wGBAY4BxwH/AYEBjAHHAf8BgQGJAccB/wGBAYcBxwH/ - AYEBhQHHAf8BfwGEAccB/wF7AYIBxwH/AXgBggHHAf8BdQGBAccB/wFyAYEBxwH/AW8BgQHHAf8BbAGB - AcgB/wFpAYEByAH/AWYBgQHIAf8BYwGBAcgB/wFgAYEByQH/AV0BgQHJAf8BWgGBAcoB/wFXAYEBygH/ - AVQBgQHKAf8BUAF+AcoB/wFNAXwBywH/AUoBegHLAf8BRwF4AcsB/wFDAXUBygH/AUEBdAHKAf8BPwFy - AckB/wE+AXIBygH/AT0BcQHJAf8BPQFxAckB/wE9AXEByQH/ATMBZwHDAf8BKgFeAbwB/wFIAgIBgP8A - /wD/AA8AAUgCAgGAAXgBgQHNAf8BrwG5AeEB/wHtAfAB9QH/AdoB4AHrAf8BxwHQAeAB/wHDAc0B3wH/ - Ab8ByQHdAf8BuwHGAdsB/wG3AcMB2QH/AbMBwAHYAf8BrwG8AdYB/wGrAbkB1QH/AacBtgHTAf8BpAGz - AdIB/wGgAbAB0AH/AZwBrQHPAf8BmAGpAc0B/wGUAaYBzAH/AZABowHLAf8BjAGgAcoB/wGIAZ0ByAH/ - AYUBmgHHAf8BgQGXAcYB/wGBAZUBxwH/AYEBkwHHAf8BgQGSAcgB/wGBAZAByAH/AYEBjgHIAf8BgQGL - AccB/wGBAYkBxwH/AYEBhwHHAf8BgQGFAccB/wF+AYIBxwH/AXsBggHHAf8BeAGBAccB/wF1AYEBxwH/ - AXEBgQHHAf8BbgGBAccB/wFrAYEBxwH/AWgBgQHIAf8BZQGBAcgB/wFiAYEByAH/AV8BgQHIAf8BXAGB - AckB/wFZAYEByQH/AVYBgQHJAf8BUgF/AckB/wFPAX0BygH/AUwBewHKAf8BSQF5AcoB/wFFAXYBygH/ - AUIBdAHKAf8BPwFyAckB/wE9AXEByQH/ATsBbwHIAf8BOwFvAcgB/wE7AW8ByAH/ATEBZQHBAf8BJwFb - AboB/wFIAgIBgP8A/wD/AA8AAUgCAgGAAVgBeAHEAf8BoAGxAd4B/wHvAfEB9wH/Ad4B4wHtAf8BzQHV - AeMB/wHJAdEB4gH/AcQBzQHfAf8BwAHKAd0B/wG8AccB2wH/AbgBxAHaAf8BtAHAAdgB/wGwAb0B1wH/ - AawBugHVAf8BqAG3AdQB/wGkAbMB0gH/AaABsAHRAf8BnAGtAc8B/wGYAaoBzgH/AZQBpwHNAf8BkAGk - AcwB/wGMAaABygH/AYkBnQHJAf8BhQGaAcgB/wGDAZgByAH/AYEBlQHHAf8BgQGUAccB/wGBAZEBxwH/ - AYEBkAHIAf8BgQGNAccB/wGBAYsBxwH/AYEBiQHHAf8BgQGHAccB/wGBAYQBxwH/AX4BgwHHAf8BewGC - AccB/wF4AYIBxwH/AXQBgQHHAf8BcQGBAccB/wFuAYEBxwH/AWsBgQHIAf8BaAGBAcgB/wFlAYEByAH/ - AWIBgQHIAf8BXwGBAckB/wFcAYEByQH/AVkBgQHJAf8BVQGBAckB/wFSAX8ByQH/AU8BfQHJAf8BTAF7 - AcoB/wFIAXgBygH/AUUBdgHKAf8BQQF0AckB/wE/AXIByQH/ATwBbwHIAf8BOwFuAccB/wE5AW0BxgH/ - AS8BYgG/Af8BJAFYAbcB/wFIAgIBgP8A/wD/AA8AAUgCAgGAATcBZgG7Af8BkAGoAdoB/wHwAfIB+AH/ - AeIB5gHvAf8B0wHZAeYB/wHOAdUB5AH/AcgB0AHhAf8BxAHNAd8B/wHAAcoB3QH/AbwBxwHcAf8BuAHD - AdoB/wG0AcAB2AH/AbABvQHWAf8BrAG6AdUB/wGoAbYB0wH/AaQBswHSAf8BoAGwAdAB/wGcAa0BzwH/ - AZgBqgHOAf8BlAGnAc0B/wGQAaMBywH/AYwBoAHKAf8BiAGdAckB/wGFAZoByAH/AYEBlwHGAf8BgQGV - AcYB/wGBAZIBxgH/AYEBkQHHAf8BgQGPAccB/wGBAY0BxwH/AYEBiwHHAf8BgQGJAccB/wGBAYYBxwH/ - AYEBhAHHAf8BfgGCAccB/wF7AYIBxwH/AXcBgQHHAf8BdAGBAccB/wFxAYEBxwH/AW4BgQHHAf8BawGB - AccB/wFoAYEBxwH/AWQBgQHHAf8BYQGBAcgB/wFeAYEByAH/AVsBgQHIAf8BVwGBAcgB/wFUAYEByAH/ - AVEBfgHIAf8BTgF8AckB/wFKAXkByQH/AUcBdwHJAf8BQwF1AcgB/wFAAXIByAH/AT0BbwHHAf8BOgFt - AcYB/wE2AWoBxAH/ASwBXwG8Af8BIQFUAbMB/wFIAgIBgP8A/wD/AA8AAUgCAgGAASsBVAGeAf8BcQGD - AcEB/wGvAboB4wH/AckB0AHqAf8B4gHmAfAB/wHdAeIB7QH/AdcB3QHpAf8B0QHYAeYB/wHMAdQB4wH/ - AccB0AHhAf8BwgHLAd8B/wG9AccB3AH/AbcBwwHaAf8BsgG/AdgB/wGtAboB1gH/AakBtwHUAf8BpAG0 - AdIB/wGgAbEB0QH/AZwBrQHQAf8BmQGqAc8B/wGVAacBzQH/AZEBpAHMAf8BjQGhAcsB/wGJAZ4BygH/ - AYUBmgHIAf8BgwGYAccB/wGBAZUBxwH/AYEBkwHHAf8BgQGQAcYB/wGBAY4BxgH/AYEBjAHGAf8BgQGK - AccB/wGBAYgBxwH/AYEBhgHHAf8BgQGEAccB/wF+AYMBxwH/AXoBgQHHAf8BdwGBAccB/wF0AYEBxwH/ - AXEBgQHHAf8BbgGBAccB/wFrAYEBxwH/AWcBgQHHAf8BZAGBAcgB/wFhAYEByAH/AV4BgQHIAf8BWgGB - AcgB/wFXAYEByAH/AVQBgAHIAf8BUQF+AckB/wFNAXsByQH/AUoBeQHJAf8BRgF3AcgB/wFCAXMByAH/ - AT4BbwHGAf8BNgFpAcMB/wEuAWIBvwH/AScBVgGtAf8BIAFJAZoB/wFIAgIBgP8A/wD/AA8AAUgCAgGA - AR4BQQGBAf8BSgFlAagB/wF2AYEBzgH/Aa8BugHkAf8B8AHyAfkB/wHrAe4B9QH/AeUB6QHxAf8B3gHj - Ae0B/wHXAd0B6QH/AdEB2AHmAf8BywHTAeMB/wHFAc4B4AH/Ab4ByQHdAf8BuAHEAdsB/wGxAb4B2AH/ - Aa0BuwHWAf8BqAG3AdQB/wGkAbQB0wH/AaABsAHRAf8BnQGtAdAB/wGZAaoBzgH/AZUBpwHNAf8BkQGk - AcwB/wGNAaEBywH/AYgBnQHJAf8BhQGaAcgB/wGBAZcBxwH/AYEBlAHGAf8BgQGRAcUB/wGBAY8BxQH/ - AYEBjAHFAf8BgQGLAcYB/wGBAYkBxgH/AYEBiAHHAf8BgQGGAccB/wGBAYQBxwH/AX0BgQHHAf8BegGB - AccB/wF2AYEBxgH/AXMBgQHGAf8BcAGBAcYB/wFtAYEBxgH/AWoBgQHGAf8BZwGBAccB/wFjAYEBxwH/ - AWABgQHHAf8BXQGBAccB/wFaAYEBxwH/AVYBgQHHAf8BUwF/AcgB/wFPAXwByAH/AUwBegHIAf8BSAF4 - AcgB/wFDAXQBxwH/AT4BbwHFAf8BMgFlAb8B/wEmAVoBuQH/ASIBTAGdAf8BHgE9AYEB/wFIAgIBgP8A - /wD/AA8AASsCAQFAAUgCAgGAAVwBAwEEAcABSwFlAagB/wFxAYMBwQH/AY4BpwHaAf8BmwGvAdwB/wGn - AbUB3wH/AaoBtgHfAf8BrAG3Ad8B/wGtAboB4AH/Aa0BvAHgAf8BsAG/AeAB/wGyAcEB4AH/AbQBwwHh - Af8BtgHEAeEB/wG4AcUB4QH/AbkBxgHgAf8BuAHFAeAB/wG3AcQB3wH/AbcBwwHeAf8BtQHCAd0B/wGz - AcAB3AH/AbEBvgHbAf8BrgG8AdoB/wGqAbkB2AH/AaYBtQHXAf8BoQGyAdUB/wGfAa4B1AH/AZwBqwHS - Af8BmgGoAdEB/wGXAaQB0AH/AZQBoQHQAf8BkAGdAc8B/wGMAZoBzgH/AYcBlgHNAf8BggGSAc0B/wGB - AY4BzAH/AYEBiwHLAf8BgAGHAckB/wF7AYQByQH/AXUBgQHIAf8BbwGBAccB/wFpAYEBxgH/AWMBgQHG - Af8BXAGBAcUB/wFYAYEBxAH/AVMBfQHEAf8BTwF6AcMB/wFKAXcBwwH/AUcBdQHDAf8BQgFxAcMB/wE/ - AW8BwgH/ATsBbAHBAf8BNgFoAcAB/wEwAWMBvgH/ASkBWAGuAf8BIgFMAZ0B/wFcAQMBBAHAAUgCAgGA - ASsCAQFA/wD/AP8AFwABSAICAYABHwFBAYEB/wEqAVMBngH/ATQBZAG6Af8BUgF3AcMB/wFwAYEBzAH/ - AX0BiQHRAf8BgQGQAdUB/wGIAZsB2QH/AY4BpQHcAf8BmgGvAeAB/wGlAbgB4wH/AbABwQHnAf8BuwHJ - AeoB/wHCAc8B6wH/AckB1AHsAf8BzAHWAe0B/wHOAdcB7QH/AdAB2AHsAf8B0QHZAesB/wHRAdkB6gH/ - AdAB2AHpAf8BzgHWAegB/wHLAdQB5wH/AcYB0AHlAf8BwQHMAeMB/wG8AcgB4QH/AbcBxAHfAf8BsgHA - Ad0B/wGsAbsB2wH/AaYBtgHZAf8BnwGwAdcB/wGYAasB1QH/AZEBpgHTAf8BigGgAdIB/wGCAZoB0AH/ - AYIBlAHOAf8BgQGNAcwB/wGBAYcBywH/AXoBgQHJAf8BcQGBAccB/wFnAYEBxQH/AV4BgQHEAf8BVAF+ - AcIB/wFPAXoBwQH/AUkBdQHAAf8BRAFxAb8B/wE+AW0BvgH/AToBagG+Af8BNQFmAb0B/wExAWMBvAH/ - AS0BXwG6Af8BKAFbAbgB/wEiAVYBtgH/ASABSgGcAf8BHgE+AYEB/wFIAgIBgP8A/wD/AB8AASsCAQFA - AUgCAgGAAUgCAgGAAUgCAgGAAUgCAgGAAUgCAgGAAUgCAgGAAUgCAgGAAUgCAgGAAUgCAgGAAVwBBAEF - AcABZgGAAbIB/wFsAYEBtgH/AXEBhAG5Af8BdQ... [truncated message content] |
From: <hap...@us...> - 2007-04-02 21:54:51
|
Revision: 283 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=283&view=rev Author: happytalk Date: 2007-04-02 14:54:43 -0700 (Mon, 02 Apr 2007) Log Message: ----------- Fixed so esc from search goes back to no selection. Modified NewString Left/Right/Mid Modified Paths: -------------- trunk/plugins/MyFilms/CString.cs trunk/plugins/MyFilms/MesFilms.cs Modified: trunk/plugins/MyFilms/CString.cs =================================================================== --- trunk/plugins/MyFilms/CString.cs 2007-04-02 21:33:01 UTC (rev 282) +++ trunk/plugins/MyFilms/CString.cs 2007-04-02 21:54:43 UTC (rev 283) @@ -47,11 +47,11 @@ /// <summary>Return left hand part of a string</summary> /// <param name="source">string to split</param> /// <param name="length">Number of characters to return</param> - /// <returns>Returns left part of the string OR complete original string if length less than 1</returns> + /// <returns>Returns left part of the string OR complete original string if length less than 1 or greater than string length</returns> public static string Left(string source, int length) { if( source == null ) throw new ArgumentNullException("source"); - if (length > 0) + if (length > 0 && length < source.Length) return source.Substring(0, length); else return source; @@ -62,12 +62,10 @@ /// <summary>Returns right part of a string</summary> /// <param name="source">string to split</param> /// <param name="length">Number of characters to return</param> - /// <returns>Returns right part of the string OR complete original string if length less than 1</returns> + /// <returns>Returns right part of the string OR complete original string if length less than 1 or greater than string length</returns> public static string Right(string source, int length) { - if (source == null) throw new ArgumentNullException("source"); - - if (length > 0) + if (length > 0 && length < source.Length) return source.Substring(source.Length - length); else return source; @@ -81,8 +79,7 @@ /// <returns>Returns right part of the string</returns> public static string Mid(string source, int index) { - if (source == null) throw new ArgumentNullException("source"); - return source.Substring(index); + return Mid(source, index, 0); } @@ -91,12 +88,19 @@ /// <summary>Returns middle part of a string</summary> /// <param name="source">string to split</param> /// <param name="index">Position in string to start extract</param> - /// <param name="length">Number of characters to extract</param> + /// <param name="length">Number of characters to extract. If 0 extract all to end</param> /// <returns>Returns middle part of string</returns> public static string Mid(string source, int index, int length) { if (source == null) throw new ArgumentNullException("source"); - return source.Substring(index, length); + if (index >= 0 && index < source.Length) + { + if (length == 0) length = source.Length; + length = Min(length, source.Length - index + 1); + return source.Substring(index, length); + } + else + return ""; } #endregion Modified: trunk/plugins/MyFilms/MesFilms.cs =================================================================== --- trunk/plugins/MyFilms/MesFilms.cs 2007-04-02 21:33:01 UTC (rev 282) +++ trunk/plugins/MyFilms/MesFilms.cs 2007-04-02 21:54:43 UTC (rev 283) @@ -519,17 +519,10 @@ string SelItem; if (StrTitleSelect == "") { - string WStrTxtSelect =""; - try - { - WStrTxtSelect = StrTxtSelect.Substring(0, 9); - } - catch - { } - if (WStrTxtSelect == "Selection") + if (NewString.Left(StrTxtSelect, 9) == "Selection" || (StrTxtSelect == "" && boolselect)) //original code block refactored {//jump back to main full list boolselect = false; - StrTxtSelect = ""; + StrSelect = StrTxtSelect = ""; l_index = 0; GetFilmList(); return true; @@ -537,18 +530,7 @@ if (StrTxtSelect == "") { - if (boolselect) - {//jump back to main full list - boolselect = false; - StrTxtSelect = ""; - l_index = 0; - GetFilmList(); - } - else - { - StrTxtSelect = ""; - return false; - } + return false; } else { // Jump back to prev view_display (categorised by year, genre etc) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ze...@us...> - 2007-04-02 21:33:05
|
Revision: 282 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=282&view=rev Author: zebons Date: 2007-04-02 14:33:01 -0700 (Mon, 02 Apr 2007) Log Message: ----------- Modified Paths: -------------- trunk/plugins/MyFilms/MesFilms.csproj Modified: trunk/plugins/MyFilms/MesFilms.csproj =================================================================== --- trunk/plugins/MyFilms/MesFilms.csproj 2007-04-02 21:19:05 UTC (rev 281) +++ trunk/plugins/MyFilms/MesFilms.csproj 2007-04-02 21:33:01 UTC (rev 282) @@ -29,9 +29,9 @@ <WarningLevel>4</WarningLevel> </PropertyGroup> <ItemGroup> - <Reference Include="Core, Version=1.0.2548.1824, Culture=neutral, processorArchitecture=MSIL"> + <Reference Include="Core, Version=1.0.2576.34540, Culture=neutral, processorArchitecture=x86"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\mediaportal_plugin\MesFilms\Core_Stable\Core.DLL</HintPath> + <HintPath>..\..\mediaportal_plugin\MesFilms\Core_Svn\Core.dll</HintPath> </Reference> <Reference Include="Databases, Version=1.0.2548.1828, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> @@ -48,9 +48,9 @@ <Reference Include="System.Drawing" /> <Reference Include="System.Windows.Forms" /> <Reference Include="System.Xml" /> - <Reference Include="Utils, Version=1.0.2548.1816, Culture=neutral, processorArchitecture=MSIL"> + <Reference Include="Utils, Version=1.0.2576.34538, Culture=neutral, processorArchitecture=x86"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\mediaportal_plugin\MesFilms\Core_Stable\Utils.DLL</HintPath> + <HintPath>..\..\mediaportal_plugin\MesFilms\Core_Svn\Utils.dll</HintPath> </Reference> </ItemGroup> <ItemGroup> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ze...@us...> - 2007-04-02 21:19:11
|
Revision: 281 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=281&view=rev Author: zebons Date: 2007-04-02 14:19:05 -0700 (Mon, 02 Apr 2007) Log Message: ----------- add compatibility to DVDProfiler 3.02 Modified Paths: -------------- trunk/plugins/MyFilms/CatalogConverter.cs Modified: trunk/plugins/MyFilms/CatalogConverter.cs =================================================================== --- trunk/plugins/MyFilms/CatalogConverter.cs 2007-04-02 17:08:47 UTC (rev 280) +++ trunk/plugins/MyFilms/CatalogConverter.cs 2007-04-02 21:19:05 UTC (rev 281) @@ -15,6 +15,7 @@ public CatalogConverter() { + ProfilerDict = new Dictionary<string, string>(); ProfilerDict.Add("Title", "OriginalTitle"); ProfilerDict.Add("SortTitle", "TranslatedTitle"); @@ -28,6 +29,7 @@ ProfilerDict.Add("Actors", "Actors"); ProfilerDict.Add("Genres", "Category"); ProfilerDict.Add("Credits", "Director"); + ProfilerDict.Add("Credits1", "Producer"); ProfilerDict.Add("Overview", "Description"); ProfilerDict.Add("Picture", "Picture"); } @@ -80,7 +82,11 @@ if (nodeNotes.InnerText.IndexOf("<Country>") != -1) Country = nodeNotes.InnerText.Substring(nodeNotes.InnerText.IndexOf("<Country>") + 9, nodeNotes.InnerText.IndexOf("</Country>") - nodeNotes.InnerText.IndexOf("<Country>") - 9); } - + if (nodeMediaType != null) + { + XmlNode nodeCountryOfOrigin = nodeDVD.SelectSingleNode("CountryOfOrigin"); + Country = nodeCountryOfOrigin.InnerText; + } string genre = String.Empty; XmlNodeList genreList = nodeDVD.SelectNodes("Genres/Genre"); foreach (XmlNode nodeGenre in genreList) @@ -112,13 +118,14 @@ } string line; if (role.Length == 0) - line = String.Format("{0} {1}, ", firstname, lastname); + line = String.Format("{0} {1}", firstname, lastname); else - line = String.Format("{0} {1} ({2}), ", firstname, lastname, role); + line = String.Format("{0} {1} ({2})", firstname, lastname, role); + if (cast.Length > 0) cast += ", "; cast += line; } - - string credits = String.Empty; + string Director = String.Empty; + string Producer = String.Empty; XmlNodeList creditsList = nodeDVD.SelectNodes("Credits/Credit"); foreach (XmlNode nodeCredit in creditsList) { @@ -126,16 +133,18 @@ string lastname = String.Empty; if (nodeMediaType != null) { - XmlNode nodeFirstName = nodeCredit.SelectSingleNode("FirstName"); - XmlNode nodeLastName = nodeCredit.SelectSingleNode("LastName"); - XmlNode nodeType = nodeCredit.SelectSingleNode("CreditSubtype"); + firstname = nodeCredit.Attributes["FirstName"].Value; + lastname = nodeCredit.Attributes["LastName"].Value; if (nodeCredit.Attributes["CreditSubtype"] != null && nodeCredit.Attributes["CreditSubtype"].Value != null && nodeCredit.Attributes["CreditSubtype"].Value == "Director") { - if (credits.Length > 0) credits += ", "; - if (nodeFirstName != null && nodeFirstName.InnerText != null) firstname = nodeCredit.Attributes["FirstName"].Value ; - if (nodeLastName != null && nodeLastName.InnerText != null) lastname = nodeCredit.Attributes["LastName"].Value; - credits += String.Format("{0} {1}", firstname, lastname); + if (Director.Length > 0) Director += ", "; + Director += String.Format("{0} {1}", firstname, lastname); } + if (nodeCredit.Attributes["CreditSubtype"] != null && nodeCredit.Attributes["CreditSubtype"].Value != null && nodeCredit.Attributes["CreditSubtype"].Value == "Producer") + { + if (Producer.Length > 0) Producer += ", "; + Producer += String.Format("{0} {1}", firstname, lastname); + } } else { @@ -144,33 +153,42 @@ XmlNode nodeType = nodeCredit.SelectSingleNode("CreditSubtype"); if (nodeType != null && nodeType.InnerText != null && nodeType.InnerText == "Director") { - if (credits.Length > 0) credits += ", "; + if (Director.Length > 0) Director += ", "; if (nodeFirstName != null && nodeFirstName.InnerText != null) firstname = nodeFirstName.InnerText; if (nodeLastName != null && nodeLastName.InnerText != null) lastname = nodeLastName.InnerText; - credits += String.Format("{0} {1}", firstname, lastname); + Director += String.Format("{0} {1}", firstname, lastname); } + if (nodeType != null && nodeType.InnerText != null && nodeType.InnerText == "Producer") + { + if (Producer.Length > 0) Producer += ", "; + if (nodeFirstName != null && nodeFirstName.InnerText != null) firstname = nodeFirstName.InnerText; + if (nodeLastName != null && nodeLastName.InnerText != null) lastname = nodeLastName.InnerText; + Producer += String.Format("{0} {1}", firstname, lastname); + } } } string Image = folderimage + @"\" + nodeID.InnerText.Trim() + "f.jpg"; if (nodeMediaType != null) { XmlNode nodeRating = nodeDVD.SelectSingleNode("Review"); - if (nodeRating != null && nodeRating.Attributes["Film"] != null && nodeRating.Attributes["Film"].Value != null) + if (nodeRating.Attributes["Film"] != null && nodeRating.Attributes["Film"].Value != null) Rating = nodeRating.Attributes["Film"].Value + ".0"; - else Rating = "0.0"; + else + Rating = "0.0"; } else { XmlNode nodeRating = nodeDVD.SelectSingleNode("Review/ReviewFilm"); if (nodeRating != null && nodeRating.InnerText != null) Rating = nodeRating.InnerText + ".0"; - else Rating="0.0"; + else + Rating = "0.0"; } - if (nodeNumber != null && nodeNumber.InnerText != null) + if (nodeNumber != null && nodeNumber.InnerText != null) WriteAntAtribute(destXml,"CollectionNumber",nodeNumber.InnerText); else WriteAntAtribute(destXml, "CollectionNumber", nodeNumber.InnerText); - if (nodeOTitle != null && nodeOTitle.InnerText != null) + if (nodeOTitle != null && nodeOTitle.InnerText.Length > 0) WriteAntAtribute(destXml, "Title", nodeOTitle.InnerText); else WriteAntAtribute(destXml, "Title", nodeTitle.InnerText); @@ -182,9 +200,9 @@ WriteAntAtribute(destXml, "Year", nodeYear.InnerText); WriteAntAtribute(destXml, "RunningTime", nodeDuration.InnerText); WriteAntAtribute(destXml, "Genres", genre); - WriteAntAtribute(destXml, "Credits", credits); + WriteAntAtribute(destXml, "Credits", Director); + WriteAntAtribute(destXml, "Credits1", Producer); WriteAntAtribute(destXml, "Actors", cast); -// WriteAntAtribute(destXml, "Picture", nodeID.InnerText.Trim() + "f.jpg"); WriteAntAtribute(destXml, "Picture", Image); if (nodeOverview != null && nodeOverview.InnerText != null) WriteAntAtribute(destXml, "Overview", nodeOverview.InnerText); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <du...@us...> - 2007-04-02 17:08:48
|
Revision: 280 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=280&view=rev Author: dukus Date: 2007-04-02 10:08:47 -0700 (Mon, 02 Apr 2007) Log Message: ----------- Compatibility with latest DVDP Modified Paths: -------------- trunk/plugins/MyFilms/CatalogConverter.cs Modified: trunk/plugins/MyFilms/CatalogConverter.cs =================================================================== --- trunk/plugins/MyFilms/CatalogConverter.cs 2007-04-02 15:49:16 UTC (rev 279) +++ trunk/plugins/MyFilms/CatalogConverter.cs 2007-04-02 17:08:47 UTC (rev 280) @@ -152,9 +152,20 @@ } } string Image = folderimage + @"\" + nodeID.InnerText.Trim() + "f.jpg"; - XmlNode nodeRating = nodeDVD.SelectSingleNode("Review/ReviewFilm"); - if (nodeRating != null && nodeRating.InnerText != null) - Rating = nodeRating.InnerText + ".0"; + if (nodeMediaType != null) + { + XmlNode nodeRating = nodeDVD.SelectSingleNode("Review"); + if (nodeRating != null && nodeRating.Attributes["Film"] != null && nodeRating.Attributes["Film"].Value != null) + Rating = nodeRating.Attributes["Film"].Value + ".0"; + else Rating = "0.0"; + } + else + { + XmlNode nodeRating = nodeDVD.SelectSingleNode("Review/ReviewFilm"); + if (nodeRating != null && nodeRating.InnerText != null) + Rating = nodeRating.InnerText + ".0"; + else Rating="0.0"; + } if (nodeNumber != null && nodeNumber.InnerText != null) WriteAntAtribute(destXml,"CollectionNumber",nodeNumber.InnerText); else This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <du...@us...> - 2007-04-02 15:49:19
|
Revision: 279 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=279&view=rev Author: dukus Date: 2007-04-02 08:49:16 -0700 (Mon, 02 Apr 2007) Log Message: ----------- Modified Paths: -------------- trunk/plugins/MyFilms/CatalogConverter.cs Modified: trunk/plugins/MyFilms/CatalogConverter.cs =================================================================== --- trunk/plugins/MyFilms/CatalogConverter.cs 2007-04-02 15:30:59 UTC (rev 278) +++ trunk/plugins/MyFilms/CatalogConverter.cs 2007-04-02 15:49:16 UTC (rev 279) @@ -62,6 +62,7 @@ { destXml.WriteStartElement("Movie"); XmlNode nodeID = nodeDVD.SelectSingleNode("ID"); + XmlNode nodeMediaType = nodeDVD.SelectSingleNode("MediaTypes/DVD"); XmlNode nodeNumber = nodeDVD.SelectSingleNode("CollectionNumber"); XmlNode nodeTitle = nodeDVD.SelectSingleNode("Title"); XmlNode nodeOTitle = nodeDVD.SelectSingleNode("OriginalTitle"); @@ -94,12 +95,21 @@ string firstname = String.Empty; string lastname = String.Empty; string role = String.Empty; - XmlNode nodeFirstName = nodeActor.SelectSingleNode("FirstName"); - XmlNode nodeLastName = nodeActor.SelectSingleNode("LastName"); - XmlNode nodeRole = nodeActor.SelectSingleNode("Role"); - if (nodeFirstName != null && nodeFirstName.InnerText != null) firstname = nodeFirstName.InnerText; - if (nodeLastName != null && nodeLastName.InnerText != null) lastname = nodeLastName.InnerText; - if (nodeRole != null && nodeRole.InnerText != null) role = nodeRole.InnerText; + if (nodeMediaType != null) + { + if (nodeActor.Attributes["FirstName"] != null && nodeActor.Attributes["FirstName"].Value != null) firstname = nodeActor.Attributes["FirstName"].Value; + if (nodeActor.Attributes["LastName"] != null && nodeActor.Attributes["LastName"].Value != null) lastname = nodeActor.Attributes["LastName"].Value ; + if (nodeActor.Attributes["Role"] != null && nodeActor.Attributes["Role"].Value != null) role = nodeActor.Attributes["Role"].Value; + } + else + { + XmlNode nodeFirstName = nodeActor.SelectSingleNode("FirstName"); + XmlNode nodeLastName = nodeActor.SelectSingleNode("LastName"); + XmlNode nodeRole = nodeActor.SelectSingleNode("Role"); + if (nodeFirstName != null && nodeFirstName.InnerText != null) firstname = nodeFirstName.InnerText; + if (nodeLastName != null && nodeLastName.InnerText != null) lastname = nodeLastName.InnerText; + if (nodeRole != null && nodeRole.InnerText != null) role = nodeRole.InnerText; + } string line; if (role.Length == 0) line = String.Format("{0} {1}, ", firstname, lastname); @@ -114,16 +124,32 @@ { string firstname = String.Empty; string lastname = String.Empty; - XmlNode nodeFirstName = nodeCredit.SelectSingleNode("FirstName"); - XmlNode nodeLastName = nodeCredit.SelectSingleNode("LastName"); - XmlNode nodeType = nodeCredit.SelectSingleNode("CreditSubtype"); - if (nodeType != null && nodeType.InnerText != null && nodeType.InnerText == "Director") + if (nodeMediaType != null) { - if (credits.Length > 0) credits += ", "; - if (nodeFirstName != null && nodeFirstName.InnerText != null) firstname = nodeFirstName.InnerText; - if (nodeLastName != null && nodeLastName.InnerText != null) lastname = nodeLastName.InnerText; - credits += String.Format("{0} {1}", firstname, lastname); + XmlNode nodeFirstName = nodeCredit.SelectSingleNode("FirstName"); + XmlNode nodeLastName = nodeCredit.SelectSingleNode("LastName"); + XmlNode nodeType = nodeCredit.SelectSingleNode("CreditSubtype"); + if (nodeCredit.Attributes["CreditSubtype"] != null && nodeCredit.Attributes["CreditSubtype"].Value != null && nodeCredit.Attributes["CreditSubtype"].Value == "Director") + { + if (credits.Length > 0) credits += ", "; + if (nodeFirstName != null && nodeFirstName.InnerText != null) firstname = nodeCredit.Attributes["FirstName"].Value ; + if (nodeLastName != null && nodeLastName.InnerText != null) lastname = nodeCredit.Attributes["LastName"].Value; + credits += String.Format("{0} {1}", firstname, lastname); + } } + else + { + XmlNode nodeFirstName = nodeCredit.SelectSingleNode("FirstName"); + XmlNode nodeLastName = nodeCredit.SelectSingleNode("LastName"); + XmlNode nodeType = nodeCredit.SelectSingleNode("CreditSubtype"); + if (nodeType != null && nodeType.InnerText != null && nodeType.InnerText == "Director") + { + if (credits.Length > 0) credits += ", "; + if (nodeFirstName != null && nodeFirstName.InnerText != null) firstname = nodeFirstName.InnerText; + if (nodeLastName != null && nodeLastName.InnerText != null) lastname = nodeLastName.InnerText; + credits += String.Format("{0} {1}", firstname, lastname); + } + } } string Image = folderimage + @"\" + nodeID.InnerText.Trim() + "f.jpg"; XmlNode nodeRating = nodeDVD.SelectSingleNode("Review/ReviewFilm"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <hap...@us...> - 2007-04-02 15:31:02
|
Revision: 278 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=278&view=rev Author: happytalk Date: 2007-04-02 08:30:59 -0700 (Mon, 02 Apr 2007) Log Message: ----------- Now also remembers position when displaying genres/years/search results etc. Modified Paths: -------------- trunk/plugins/MyFilms/MesFilms.cs Modified: trunk/plugins/MyFilms/MesFilms.cs =================================================================== --- trunk/plugins/MyFilms/MesFilms.cs 2007-04-02 14:22:48 UTC (rev 277) +++ trunk/plugins/MyFilms/MesFilms.cs 2007-04-02 15:30:59 UTC (rev 278) @@ -419,7 +419,7 @@ WStrSortSens = " ASC"; BtnSrtBy.IsAscending = true; StrActors = keyboard.Text; - getSelectFromDivx("Actors like '*" + keyboard.Text + "*'", WStrSort, WStrSortSens, keyboard.Text, ""); + getSelectFromDivx("Actors like '*" + keyboard.Text + "*'", WStrSort, WStrSortSens, keyboard.Text, true, ""); } else return false; @@ -473,7 +473,7 @@ if (!boolselect) GetFilmList(); else - getSelectFromDivx(StrTitle1.ToString() + " not like ''", StrSort, StrSortSens, "*", ""); + getSelectFromDivx(StrTitle1.ToString() + " not like ''", StrSort, StrSortSens, "*", true, ""); return true; } if (iControl == (int)Controls.CTRL_BtnViewAs) @@ -556,15 +556,15 @@ { StrSelect = "Actors like '*" + StrActors + "*'"; StrTxtSelect = "Selection"; - getSelectFromDivx("Actors like '*" + StrActors + "*'", WStrSort, WStrSortSens, StrActors, ""); + getSelectFromDivx("Actors like '*" + StrActors + "*'", WStrSort, WStrSortSens, StrActors, true, ""); } else { SelItem = NewString.StripChars(@"[]", StrTxtSelect); if (WStrSort == "DateAdded") - getSelectFromDivx(StrTitle1.ToString() + " not like ''", "Date", " DESC", "*", SelItem); + getSelectFromDivx(StrTitle1.ToString() + " not like ''", "Date", " DESC", "*", true, SelItem); else - getSelectFromDivx(StrTitle1.ToString() + " not like ''", WStrSort, WStrSortSens, "*", SelItem); + getSelectFromDivx(StrTitle1.ToString() + " not like ''", WStrSort, WStrSortSens, "*", true, SelItem); StrSelect = ""; } } @@ -872,7 +872,7 @@ if (!boolselect) GetFilmList(); else - getSelectFromDivx(StrTitle1.ToString() + " not like ''", WStrSort, StrSortSens, "*", ""); + getSelectFromDivx(StrTitle1.ToString() + " not like ''", WStrSort, StrSortSens, "*", true, ""); return; } private void affich_overlay() @@ -986,8 +986,9 @@ /// <param name="WStrSortSens">Asc/Desc. Ascending or descending sort order</param> /// <param name="NewWstar">Entries must contain this string to be included</param> /// <param name="p">Position in string to begin search/replacing from</param> + /// <param name="ClearIndex">Reset Selected Item Index</param> /// <param name="SelItem">Select entry matching this string if not empty</param> - private void getSelectFromDivx(string WstrSelect, string WStrSort, string WStrSortSens, string NewWstar, string SelItem) + private void getSelectFromDivx(string WstrSelect, string WStrSort, string WStrSortSens, string NewWstar, bool ClearIndex, string SelItem) { GUIListItem item = new GUIListItem(); string champselect = ""; @@ -1002,7 +1003,7 @@ BtnSrtBy.Label = GUILocalizeStrings.Get(103); boolselect = true; boolreturn = true; - l_index = 0; + if (ClearIndex) l_index = 0; lsCtlFilm.Clear(); foreach (DataRow enr in LectureDonn\xE9es(WstrSelect, WStrSort, WStrSortSens)) @@ -1045,7 +1046,7 @@ item.Label = champselect.ToString(); item.Label2 = Wnb_enr.ToString(); lsCtlFilm.Add(item); - if (item.Label == SelItem) l_index = lsCtlFilm.Count - 1; //test if this item is one to select + if (SelItem != "" && item.Label == SelItem) l_index = lsCtlFilm.Count - 1; //test if this item is one to select } else Wnb_enr = 0; @@ -1059,6 +1060,9 @@ StrSelect = WstrSelect; StrFilmSelect = ""; + if ((l_index > lsCtlFilm.Count - 1) || (l_index < 0)) //check index within bounds, will be unless xml file heavily edited + l_index = 0; + GUIControl.SelectItemControl(GetID, (int)Controls.CTRL_List, (int)l_index); GUIPropertyManager.SetProperty("#nbobjects", lsCtlFilm.Count.ToString() + " " + GUILocalizeStrings.Get(127)); } @@ -1090,7 +1094,7 @@ xmlwriter.SetValue(CurrentConfig, "CurrentSortMethod", CurrentSortMethod.ToString()); xmlwriter.SetValue(CurrentConfig, "StrSortSens", StrSortSens.ToString()); xmlwriter.SetValue(CurrentConfig, "Selection", StrTxtSelect); - xmlwriter.SetValue(CurrentConfig, "IndexItem", (lsCtlFilm.SelectedListItemIndex > -1) ? lsCtlFilm.SelectedListItem.ItemId.ToString() : "-1"); //may need to check if there is no item selected and so save -1 + xmlwriter.SetValue(CurrentConfig, "IndexItem", (lsCtlFilm.SelectedListItemIndex > -1) ? ((boolselect) ? lsCtlFilm.SelectedListItemIndex.ToString() : lsCtlFilm.SelectedListItem.ItemId.ToString()) : "-1"); //may need to check if there is no item selected and so save -1 xmlwriter.SetValueAsBool(CurrentConfig, "boolselect", boolselect); xmlwriter.SetValue(CurrentConfig, "WStrSort", WStrSort); xmlwriter.SetValue(CurrentConfig, "Wstar", Wstar); @@ -1252,12 +1256,12 @@ // TxtSelect.HorizontalAlignment = MediaPortal.Drawing.HorizontalAlignment.Right; BtnSrtBy.SortChanged += new SortEventHandler(SortChanged); if (boolselect) - getSelectFromDivx(StrSelect, WStrSort, " ASC", Wstar, ""); + getSelectFromDivx(StrSelect, WStrSort, " ASC", Wstar, false, ""); // preserve index from last time else if (!(LoadDfltSlct)) GetFilmList(l_index); else - { + { if ((StrViewDfltItem.Length == 0) || (StrViewDfltItem == "(none)")) { StrSelect = StrTitle1.ToString() + " not like ''"; @@ -1333,7 +1337,7 @@ WStrSortSens = " DESC"; BtnSrtBy.IsAscending = false; boolreturn = true; - getSelectFromDivx(StrTitle1.ToString() + " not like ''", WStrSort, WStrSortSens, "*", ""); + getSelectFromDivx(StrTitle1.ToString() + " not like ''", WStrSort, WStrSortSens, "*", true, ""); return; } if (choice_view == "Category") @@ -1342,7 +1346,7 @@ WStrSort = "CATEGORY"; WStrSortSens = " ASC"; BtnSrtBy.IsAscending = true; - getSelectFromDivx(StrTitle1.ToString() + " not like ''", WStrSort, WStrSortSens, "*", ""); + getSelectFromDivx(StrTitle1.ToString() + " not like ''", WStrSort, WStrSortSens, "*", true, ""); return; } if (choice_view == "Country") @@ -1351,7 +1355,7 @@ WStrSort = "COUNTRY"; WStrSortSens = " ASC"; BtnSrtBy.IsAscending = true; - getSelectFromDivx(StrTitle1.ToString() + " not like ''", WStrSort, WStrSortSens, "*", ""); + getSelectFromDivx(StrTitle1.ToString() + " not like ''", WStrSort, WStrSortSens, "*", true, ""); return; } if (choice_view == "Storage") @@ -1377,9 +1381,9 @@ WStrSortSens = " ASC"; BtnSrtBy.IsAscending = true; if (WStrSort == "DateAdded") - getSelectFromDivx(StrTitle1.ToString() + " not like ''", "Date", " DESC", "*", ""); + getSelectFromDivx(StrTitle1.ToString() + " not like ''", "Date", " DESC", "*", true, ""); else - getSelectFromDivx(StrTitle1.ToString() + " not like ''", WStrSort, WStrSortSens, "*", ""); + getSelectFromDivx(StrTitle1.ToString() + " not like ''", WStrSort, WStrSortSens, "*", true, ""); return; } if (choice_view == "View2") @@ -1389,9 +1393,9 @@ WStrSortSens = " ASC"; BtnSrtBy.IsAscending = true; if (WStrSort == "DateAdded") - getSelectFromDivx(StrTitle1.ToString() + " not like ''", "Date", " DESC", "*", ""); + getSelectFromDivx(StrTitle1.ToString() + " not like ''", "Date", " DESC", "*", true, ""); else - getSelectFromDivx(StrTitle1.ToString() + " not like ''", WStrSort, WStrSortSens, "*", ""); + getSelectFromDivx(StrTitle1.ToString() + " not like ''", WStrSort, WStrSortSens, "*", true, ""); return; } if (choice_view == "Config") This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <du...@us...> - 2007-04-02 14:22:49
|
Revision: 277 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=277&view=rev Author: dukus Date: 2007-04-02 07:22:48 -0700 (Mon, 02 Apr 2007) Log Message: ----------- Upload method changed New control in control panel 1 try Modified Paths: -------------- trunk/plugins/mpinstaler/MPInstaler/Build dialog.Designer.cs trunk/plugins/mpinstaler/MPInstaler/Build dialog.cs trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj trunk/plugins/mpinstaler/MPInstaler/MPpackageStruct.cs trunk/plugins/mpinstaler/MPInstaler/download_form.cs trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.Designer.cs trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.cs trunk/plugins/mpinstaler/MPInstaler/wizard/controlp.resx Added Paths: ----------- trunk/plugins/mpinstaler/MPInstaler/control/ trunk/plugins/mpinstaler/MPInstaler/control/ControlListView.cs trunk/plugins/mpinstaler/MPInstaler/control/ControlListView.resx trunk/plugins/mpinstaler/MPInstaler/control/Graphic1.cdr trunk/plugins/mpinstaler/MPInstaler/control/Graphic1.png trunk/plugins/mpinstaler/MPInstaler/control/Graphic2.png trunk/plugins/mpinstaler/MPInstaler/control/Graphic3.png trunk/plugins/mpinstaler/MPInstaler/control/TileListItem.cs trunk/plugins/mpinstaler/MPInstaler/control/TileListItem.resx Modified: trunk/plugins/mpinstaler/MPInstaler/Build dialog.Designer.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Build dialog.Designer.cs 2007-04-02 12:54:44 UTC (rev 276) +++ trunk/plugins/mpinstaler/MPInstaler/Build dialog.Designer.cs 2007-04-02 14:22:48 UTC (rev 277) @@ -130,7 +130,7 @@ this.textBox2.Name = "textBox2"; this.textBox2.Size = new System.Drawing.Size(249, 20); this.textBox2.TabIndex = 8; - this.textBox2.Text = "ftp://ftp.extra.hu/wwwroot"; + this.textBox2.Text = "ftp://ftp.extra.hu/wwwroot/upload"; // // label2 // Modified: trunk/plugins/mpinstaler/MPInstaler/Build dialog.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Build dialog.cs 2007-04-02 12:54:44 UTC (rev 276) +++ trunk/plugins/mpinstaler/MPInstaler/Build dialog.cs 2007-04-02 14:22:48 UTC (rev 277) @@ -79,29 +79,47 @@ listBox1.Items.Add("Upload done."); listBox1.Refresh(); listBox1.Update(); - string tempfile = Path.GetTempPath() + @"\MPExtensionFileList.xml"; - string configfile = textBox2.Text+"/MPExtensionFileList.xml"; - if (download_form.FtpDownload(configfile, tempfile, textBox3.Text, textBox4.Text)) + if (true) { - listBox1.Items.Add("List file downloaded !"); - listBox1.SelectedIndex = listBox1.Items.Count - 1; - listBox1.Refresh(); - listBox1.Update(); + string tempfile = Path.GetTempPath() + @"\"+Path.GetFileNameWithoutExtension(textBox1.Text)+".xml"; + string configfile = textBox2.Text + "/" + Path.GetFileNameWithoutExtension(textBox1.Text) + ".xml"; MPInstallHelper temp_mpih = new MPInstallHelper(); - temp_mpih.LoadFromFile(tempfile); MPpackageStruct pk = new MPpackageStruct(); pk.LoadFromFile(textBox1.Text); temp_mpih.Add(pk); + temp_mpih.FileName = tempfile; temp_mpih.SaveToFile(); - download_form.FtpRenam(configfile, "MPExtensionFileList_old.xml", textBox3.Text, textBox4.Text); - listBox1.Items.Add("List file renamed !"); - listBox1.Refresh(); - listBox1.Update(); download_form.FtpUpload(tempfile, textBox2.Text, textBox3.Text, textBox4.Text); listBox1.Items.Add("List file uploaded !"); listBox1.Refresh(); listBox1.Update(); } + else + { + string tempfile = Path.GetTempPath() + @"\MPExtensionFileList.xml"; + string configfile = textBox2.Text + "/MPExtensionFileList.xml"; + if (download_form.FtpDownload(configfile, tempfile, textBox3.Text, textBox4.Text)) + { + listBox1.Items.Add("List file downloaded !"); + listBox1.SelectedIndex = listBox1.Items.Count - 1; + listBox1.Refresh(); + listBox1.Update(); + MPInstallHelper temp_mpih = new MPInstallHelper(); + temp_mpih.LoadFromFile(tempfile); + MPpackageStruct pk = new MPpackageStruct(); + pk.LoadFromFile(textBox1.Text); + temp_mpih.Add(pk); + temp_mpih.SaveToFile(); + download_form.FtpRenam(configfile, "MPExtensionFileList_old.xml", textBox3.Text, textBox4.Text); + listBox1.Items.Add("List file renamed !"); + listBox1.Refresh(); + listBox1.Update(); + download_form.FtpUpload(tempfile, textBox2.Text, textBox3.Text, textBox4.Text); + listBox1.Items.Add("List file uploaded !"); + listBox1.Refresh(); + listBox1.Update(); + } + } } } else Modified: trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj 2007-04-02 12:54:44 UTC (rev 276) +++ trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj 2007-04-02 14:22:48 UTC (rev 277) @@ -75,6 +75,12 @@ <Compile Include="Build dialog.Designer.cs"> <DependentUpon>Build dialog.cs</DependentUpon> </Compile> + <Compile Include="control\ControlListView.cs"> + <SubType>UserControl</SubType> + </Compile> + <Compile Include="control\TileListItem.cs"> + <SubType>UserControl</SubType> + </Compile> <Compile Include="download_form.cs"> <SubType>Form</SubType> </Compile> @@ -107,6 +113,14 @@ <SubType>Designer</SubType> <DependentUpon>Build dialog.cs</DependentUpon> </EmbeddedResource> + <EmbeddedResource Include="control\ControlListView.resx"> + <DependentUpon>ControlListView.cs</DependentUpon> + <SubType>Designer</SubType> + </EmbeddedResource> + <EmbeddedResource Include="control\TileListItem.resx"> + <DependentUpon>TileListItem.cs</DependentUpon> + <SubType>Designer</SubType> + </EmbeddedResource> <EmbeddedResource Include="download_form.resx"> <SubType>Designer</SubType> <DependentUpon>download_form.cs</DependentUpon> Modified: trunk/plugins/mpinstaler/MPInstaler/MPpackageStruct.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/MPpackageStruct.cs 2007-04-02 12:54:44 UTC (rev 276) +++ trunk/plugins/mpinstaler/MPInstaler/MPpackageStruct.cs 2007-04-02 14:22:48 UTC (rev 277) @@ -253,7 +253,7 @@ { public ArrayList lst = new ArrayList(); string InstalDir = Config.GetFolder(Config.Dir.Base) + @"\" + "Instaler"; - string FileName = ""; + public string FileName = ""; public MPInstallHelper() { FileName = InstalDir + @"\" + "config.xml"; Added: trunk/plugins/mpinstaler/MPInstaler/control/ControlListView.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/control/ControlListView.cs (rev 0) +++ trunk/plugins/mpinstaler/MPInstaler/control/ControlListView.cs 2007-04-02 14:22:48 UTC (rev 277) @@ -0,0 +1,627 @@ +using System; +using System.Collections; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Windows.Forms; + +namespace ControlListView +{ + /// <summary> + /// Summary description for ControlListView. + /// </summary> + public class ControlListView : System.Windows.Forms.UserControl + { + private System.ComponentModel.IContainer components; + private System.Windows.Forms.ImageList imageListLargeIcons; + private System.Windows.Forms.ImageList imageListItemBackground; + public new event MouseEventHandler MouseUp=null; + public new event MouseEventHandler MouseDown=null; + public new event EventHandler DoubleClick=null; + public System.Collections.ArrayList controlList; + public event SelectedIndexChangedEventHandler SelectedIndexChanged=null; + public ControlListView() + { + // This call is required by the Windows.Forms Form Designer. + InitializeComponent(); + controlList=new ArrayList(); + // TODO: Add any initialization after the InitializeComponent call + InitializeMyComponent(); + } + + /// <summary> + /// Clean up any resources being used. + /// </summary> + protected override void Dispose( bool disposing ) + { + if( disposing ) + { + if(components != null) + { + components.Dispose(); + } + } + base.Dispose( disposing ); + } + + #region Component Designer generated code + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ControlListView)); + this.imageListLargeIcons = new System.Windows.Forms.ImageList(this.components); + this.imageListItemBackground = new System.Windows.Forms.ImageList(this.components); + this.SuspendLayout(); + // + // imageListLargeIcons + // + this.imageListLargeIcons.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageListLargeIcons.ImageStream"))); + this.imageListLargeIcons.TransparentColor = System.Drawing.Color.Transparent; + this.imageListLargeIcons.Images.SetKeyName(0, ""); + this.imageListLargeIcons.Images.SetKeyName(1, ""); + this.imageListLargeIcons.Images.SetKeyName(2, ""); + this.imageListLargeIcons.Images.SetKeyName(3, ""); + this.imageListLargeIcons.Images.SetKeyName(4, ""); + this.imageListLargeIcons.Images.SetKeyName(5, ""); + // + // imageListItemBackground + // + this.imageListItemBackground.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageListItemBackground.ImageStream"))); + this.imageListItemBackground.TransparentColor = System.Drawing.Color.Transparent; + this.imageListItemBackground.Images.SetKeyName(0, "Graphic1.png"); + this.imageListItemBackground.Images.SetKeyName(1, "Graphic1.png"); + this.imageListItemBackground.Images.SetKeyName(2, "Graphic3.png"); + // + // ControlListView + // + this.AutoScroll = true; + this.BackColor = System.Drawing.Color.White; + this.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.Name = "ControlListView"; + this.Size = new System.Drawing.Size(148, 148); + this.Click += new System.EventHandler(this.ControlListView_Click); + this.SizeChanged += new System.EventHandler(this.ControlListView_SizeChanged); + this.ResumeLayout(false); + + } + #endregion + + private void InitializeMyComponent() + { + base.MouseDown+=new MouseEventHandler(ControlListView_MouseDown); + base.MouseUp+=new MouseEventHandler(ControlListView_MouseUp); + base.DoubleClick+=new EventHandler(ControlListView_DoubleClick); + } + + private void ControlListView_MouseDown(object sender, MouseEventArgs e) + { + if (this.Selected==false) + { + this.Selected=true; + } + if (MouseDown!=null) + { + MouseDown(sender,e); + } + } + + private void ControlListView_MouseUp(object sender, MouseEventArgs e) + { + if (MouseUp!=null) + { + MouseUp(this,e); + } + } + + private void ControlListView_DoubleClick(object sender, EventArgs e) + { + if (DoubleClick!=null) + { + DoubleClick(sender,e); + } + } + private int itemWidth=250; + public int ItemWidth + { + get + { + return itemWidth; + } + set + { + itemWidth=value; + } + } + private int itemHeight=100; + public int ItemHeight + { + get + { + return itemHeight; + } + set + { + itemHeight=value; + } + } + public void ReCalculateItems() + { + //this.SuspendLayout(); + TileListItem lItem; + for (int i=0;i<controlList.Count;i++) + { + lItem=(TileListItem)controlList[i]; + lItem.Location=GetItemLocation(i); + } + AdjustHeight(); + this.ResumeLayout(); + } + private System.Drawing.Color itemHorverColor=Color.FromArgb(117,197,240); + public System.Drawing.Color ItemHorverColor + { + get + { + return itemHorverColor; + } + set + { + itemHorverColor=value; + } + } + private System.Drawing.Color itemSelectionColor=Color.White; + public System.Drawing.Color ItemSelectionColor + { + get + { + return itemSelectionColor; + } + set + { + itemSelectionColor=value; + } + } + private System.Drawing.Color itemNormalColor=Color.White; + public System.Drawing.Color ItemNormalColor + { + get + { + return itemNormalColor; + } + set + { + itemNormalColor=value; + } + } + private System.Drawing.Point GetItemLocation(int index) + { + int ItemPerRow=(this.Width-20)/ItemWidth; + if (ItemPerRow==0) + { + ItemPerRow=1; + } + int rowIndex=index/ItemPerRow; + int colIndex=index-rowIndex*ItemPerRow; + Point p = new Point(colIndex * (ItemWidth + verticleSpacing) + verticleSpacing, rowIndex * (ItemHeight + horizontalSpacing) + horizontalSpacing); + return p; + } + public int HeightToShowAll + { + get + { + System.Drawing.Point p=GetItemLocation(controlList.Count-1); + return p.Y+ItemHeight+horizontalSpacing; + } + } + private int horizontalSpacing=5; + public int HorizontalSpacing + { + get + { + return horizontalSpacing; + } + set + { + horizontalSpacing=value; + } + } + private int verticleSpacing=5; + public int VerticleSpacing + { + get + { + return verticleSpacing; + } + set + { + verticleSpacing=value; + } + } + private System.Drawing.Color normalColor=Color.White; + public System.Drawing.Color NormalColor + { + get + { + return normalColor; + } + set + { + normalColor=value; + } + } + + private System.Drawing.Color selectedColor=Color.White; + public System.Drawing.Color SelectedColor + { + get + { + return selectedColor; + } + set + { + selectedColor=value; + } + } + + private bool selected=false; + public bool Selected + { + get + { + return selected; + } + set + { + selected=value; + if (selected==true) + { + this.BackColor=selectedColor; + } + else + { + this.BackColor=normalColor; + if (previousSelectedItem!=null) + { + previousSelectedItem.Selected=false; + } + } + } + } + private TileListItem previousSelectedItem=null; + public TileListItem SelectedItem + { + get + { + return previousSelectedItem; + } + } + private TileListItem previousHorverItem=null; + public TileListItem HorverItem + { + get + { + return previousHorverItem; + } + } + private void lItem_ItemSelected(object sender, EventArgs e) + { + TileListItem lItem=(TileListItem)sender; + + if (previousSelectedItem!=null) + { + if (lItem!=previousSelectedItem) + { + previousSelectedItem.Selected=false; + } + } + previousSelectedItem=lItem; + if (SelectedIndexChanged!=null) + { + this.Selected=true; + SelectedIndexChanged(this,lItem); + } + } + + private bool autoResize=false; + public bool AutoResize + { + get + { + return autoResize; + } + set + { + autoResize=value; + } + } + public System.Windows.Forms.ImageList ItemIconImageList + { + get + { + return this.imageListLargeIcons; + } + set + { + this.imageListLargeIcons = value; + } + } + public System.Windows.Forms.ImageList ItemBackgroundImage + { + get + { + return this.imageListItemBackground; + } + } + + private void Item_MouseEnter(object sender, EventArgs e) + { + if (previousHorverItem!=null) + { + if (previousHorverItem.Selected==false) + { + previousHorverItem.BackgroundImage=imageListItemBackground.Images[0]; + } + } + previousHorverItem=(TileListItem)sender; + } + + private Size oldSize; + private bool autoAdjustHeight=false; + public bool AutoAdjustHeight + { + get + { + return autoAdjustHeight; + } + set + { + autoAdjustHeight=value; + } + } + private void AdjustHeight() + { + if(AutoAdjustHeight==false) + return; + if (this.Count==0) + { + this.Height=10; + } + else + { + int height=0; + height=this.HeightToShowAll; + if(this.Height!=height+10) + this.Height=height+10; + } + } + + private bool IsReCalculateNeeded + { + get + { + int ItemPerRow=(this.Width-20)/ItemWidth; + int oldItemPerRow=(oldSize.Width-20)/ItemWidth; + if (ItemPerRow==oldItemPerRow) + { + return false; + } + else + return true; + } + } + + private void Item_DoubleClick(object sender, EventArgs e) + { + if (DoubleClick!=null) + { + DoubleClick(sender,e); + } + } + + private void ControlListView_Click(object sender, System.EventArgs e) + { + if (SelectedIndexChanged!=null) + { + this.Selected=true; + if (previousSelectedItem!=null) + { + previousSelectedItem.Selected=false; + previousSelectedItem=null; + } + SelectedIndexChanged(this,null); + } + } + + private void ControlListView_SizeChanged(object sender, System.EventArgs e) + { + if (AutoResize==true&&IsReCalculateNeeded==true) + { + ReCalculateItems(); + } + oldSize=this.Size; + } + + + + + #region IList Members + + public bool IsReadOnly + { + get + { + // TODO: Add ControlListView.IsReadOnly getter implementation + return false; + } + } + + public TileListItem this[int index] + { + get + { + // TODO: Add ControlListView.this getter implementation + return (TileListItem)controlList[index]; + } + set + { + // TODO: Add ControlListView.this setter implementation + controlList[index]=value; + + } + } + + public void RemoveAt(int index) + { + // TODO: Add ControlListView.RemoveAt implementation + Remove((TileListItem) this.controlList[index]); + } + + public void Insert(int index, TileListItem value) + { + // TODO: Add ControlListView.Insert implementation + TileListItem lItem=(TileListItem)value; + PrepareItemToAdd(lItem); + this.Controls.Add(lItem); + controlList.Insert(index,value); + ReCalculateItems(); + } + + public void Remove(TileListItem value) + { + // TODO: Add ControlListView.Remove implementation + controlList.Remove(value); + this.Controls.Remove(value); + ReCalculateItems(); + } + + public bool Contains(TileListItem value) + { + // TODO: Add ControlListView.Contains implementation + if(this.SelectedItem==value) + { + value.Selected=false; + } + return controlList.Contains(value); + } + + public void Clear() + { + // TODO: Add ControlListView.Clear implementation + controlList.Clear(); + this.Controls.Clear(); + ReCalculateItems(); + } + + public int IndexOf(TileListItem value) + { + // TODO: Add ControlListView.IndexOf implementation + return controlList.IndexOf(value); + } + private void PrepareItemToAdd(TileListItem lItem) + { + lItem.ItemSelected+=new EventHandler(lItem_ItemSelected); + lItem.MouseEnter+=new EventHandler(Item_MouseEnter); + lItem.MouseLeave+=new EventHandler(Item_MouseLeave); + lItem.MouseUp+=new MouseEventHandler(ControlListView_MouseUp); + lItem.MouseDown+=new MouseEventHandler(ControlListView_MouseDown); + lItem.DoubleClick+=new EventHandler(Item_DoubleClick); + lItem.Image=imageListLargeIcons.Images[lItem.ImageIndex]; + lItem.Size=new System.Drawing.Size(ItemWidth, ItemHeight); + lItem.HorverColor=ItemHorverColor; + lItem.SelectionColor=ItemSelectionColor; + lItem.NormalColor=ItemNormalColor; + lItem.BackColor=lItem.NormalColor; + lItem.NormalImage=imageListItemBackground.Images[0]; + lItem.HorverImage=imageListItemBackground.Images[1]; + lItem.SelectionImage=imageListItemBackground.Images[2]; + lItem.Selected=false; + lItem.ShowToolTips=true; + } + private void Item_MouseLeave(object sender, EventArgs e) + { + + } + public int Add(TileListItem value) + { + // TODO: Add ControlListView.Add implementation + TileListItem lItem=(TileListItem)value; + PrepareItemToAdd(lItem); + this.Controls.Add(lItem); + int i= controlList.Add(lItem); + ReCalculateItems(); + return i; + } + + public bool IsFixedSize + { + get + { + // TODO: Add ControlListView.IsFixedSize getter implementation + return controlList.IsFixedSize; + } + } + + #endregion + + #region ICollection Members + + public bool IsSynchronized + { + get + { + // TODO: Add ControlListView.IsSynchronized getter implementation + return controlList.IsSynchronized; + } + } + + public int Count + { + get + { + // TODO: Add ControlListView.Count getter implementation + return controlList.Count; + } + } + + public void CopyTo(Array array, int index) + { + // TODO: Add ControlListView.CopyTo implementation + for(int i=0;i<array.Length;i++) + { + if(!(array.GetValue(i) is TileListItem)) + { + throw new Exception("Only TileListItem class is expected"); + } + } + this.Controls.CopyTo(array,index); + controlList.CopyTo(array,index); + } + + public object SyncRoot + { + get + { + // TODO: Add ControlListView.SyncRoot getter implementation + return controlList.SyncRoot; + } + } + + #endregion + + #region IEnumerable Members + + public IEnumerator GetEnumerator() + { + // TODO: Add ControlListView.GetEnumerator implementation + return controlList.GetEnumerator(); + } + + #endregion + + + } + public delegate void SelectedIndexChangedEventHandler(object sender,TileListItem item); +} Added: trunk/plugins/mpinstaler/MPInstaler/control/ControlListView.resx =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/control/ControlListView.resx (rev 0) +++ trunk/plugins/mpinstaler/MPInstaler/control/ControlListView.resx 2007-04-02 14:22:48 UTC (rev 277) @@ -0,0 +1,519 @@ +<?xml version="1.0" encoding="utf-8"?> +<root> + <!-- + Microsoft ResX Schema + + Version 2.0 + + The primary goals of this format is to allow a simple XML format + that is mostly human readable. The generation and parsing of the + various data types are done through the TypeConverter classes + associated with the data types. + + Example: + + ... ado.net/XML headers & schema ... + <resheader name="resmimetype">text/microsoft-resx</resheader> + <resheader name="version">2.0</resheader> + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> + <value>[base64 mime encoded serialized .NET Framework object]</value> + </data> + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> + <comment>This is a comment</comment> + </data> + + There are any number of "resheader" rows that contain simple + name/value pairs. + + Each data row contains a name, and value. The row also contains a + type or mimetype. Type corresponds to a .NET class that support + text/value conversion through the TypeConverter architecture. + Classes that don't support this are serialized and stored with the + mimetype set. + + The mimetype is used for serialized objects, and tells the + ResXResourceReader how to depersist the object. This is currently not + extensible. For a given mimetype the value must be set accordingly: + + Note - application/x-microsoft.net.object.binary.base64 is the format + that the ResXResourceWriter will generate, however the reader can + read any of the formats listed below. + + mimetype: application/x-microsoft.net.object.binary.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.soap.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> + <xsd:element name="root" msdata:IsDataSet="true"> + <xsd:complexType> + <xsd:choice maxOccurs="unbounded"> + <xsd:element name="metadata"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" /> + </xsd:sequence> + <xsd:attribute name="name" use="required" type="xsd:string" /> + <xsd:attribute name="type" type="xsd:string" /> + <xsd:attribute name="mimetype" type="xsd:string" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="assembly"> + <xsd:complexType> + <xsd:attribute name="alias" type="xsd:string" /> + <xsd:attribute name="name" type="xsd:string" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="data"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="resheader"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" /> + </xsd:complexType> + </xsd:element> + </xsd:choice> + </xsd:complexType> + </xsd:element> + </xsd:schema> + <resheader name="resmimetype"> + <value>text/microsoft-resx</value> + </resheader> + <resheader name="version"> + <value>2.0</value> + </resheader> + <resheader name="reader"> + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <resheader name="writer"> + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <metadata name="imageListLargeIcons.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>351, 17</value> + </metadata> + <data name="imageListLargeIcons.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64"> + <value> + AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w + LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACE + QAAAAk1TRnQBSQFMAgEBBgEAAQkBAAEEAQABIAEAASABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAGA + AwABQAMAAQEBAAEgBgABgBIAAwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMG + Af8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMG + Af8DBgH/AwYB/3AAAwYB/wMGAf8DBgH//wAVAAOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/ + A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/ + A4EB/wOBAf8DgQH/A4EB/wMGAf9sAAGBAgYC/wIGA/8BBgL/AgYB/wMGAf//ABEAA4EB/wPAAf8DwAH/ + A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/ + A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DgQH/A4EB/wMGAf9kAAGBAgYC/wIGA/8BBgP/ + AQYC/wIGAf8DBgH//wARAAOBZf8DgQH/A4EB/wMGAf9gAAGBAgYC/wIGA/8BBgP/AQYC/wIGAv8CBgH/ + AwYB//8AEQADgQH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/ + AgYBgQH/AgYBgQH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/ + A4EB/wOBAf8DBgH/WAABgQIGAv8CBgP/AQYD/wEGAv8CBgL/AgYB/wMGAf//ABkAA4EB/wPAAf8DwAH/ + A8AB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/AgYC/wMGAf8DwAH/A8AB/wPAAf8DwAH/ + A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DgQH/A4EB/wMGAf8MAAMGAf8DBgH/AwYB/wMG + Af8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wGB + AgYC/wIGA/8BBgP/AQYC/wIGAv8CBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH//wAJAAOBAf8DwAH/ + A8AB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DgQH/AQYD/wMGAf8DwAH/A8AB/wOBAf8DgQH/ + A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DwAH/A8AB/wOBAf8DgQH/AwYB/wQAA4EB/wEG + AoEB/wEGAoEB/wEGAoEB/wEGAoEB/wEGAoEB/wEGAoEB/wEGAoEB/wEGAoEB/wEGAoEB/wEGAoEB/wEG + AoEB/wEGAoEB/wEGAoEB/wEGAoEB/wEGAoEB/wEGAoEB/wEGAoEB/wGBAgYC/wIGA/8BBgP/AQYC/wIG + Av8CBgH/AwYB/wEGAoEB/wEGAoEB/wEGAoEB/wEGAoEB/wEGAoEB/wEGAoEB/wMGAf//AAkAA4EB/wPA + Af8DgRH/A8AB/wOBAf8BBgP/AwYB/wPAAf8DwAH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMG + Af8DBgH/AwYB/wMGAf8DgQH/A8AB/wOBAf8DgQH/AwYB/wQAA4EF/wEGA/8DwAH/AQYD/wPAAf8BBgP/ + A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wGBAgYC/wIGA/8BBgP/AQYC/wIG + Av8CBgH/AwYB/wEGAoEB/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYCgQH/AwYB//8ACQADgQH/A8AB/wPA + Af8DgQn/A8AB/wOBAf8BBgP/AwYB/wOBAf8DwAH/A8AB/wOBAf8BBgf/AQYH/wEGB/8BBgf/AQYD/wMG + Af8DgQH/A8AB/wPAAf8DgQH/A4EB/wMGAf8DgQX/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEG + A/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DgQL/AgYD/wEGA/8BBgL/AgYC/wIGAf8DBgH/AQYCgQH/ + A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/AQYCgQH/AwYB//8ADQADgQH/A8AB/wOBCf8DgQH/AQYD/wMG + Bf8DBgH/A4EB/wPAAf8DgQX/AQYH/wEGB/8BBgf/AQYH/wEGA/8DBgH/A4EB/wPAAf8DgQH/A4EB/wMG + Af8DgQX/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wOB + Af8DwAf/AQYC/wIGAv8CBgH/AwYB/wEGAoEB/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgKB + Af8DBgH//wANAAOBAf8DwAH/A8AB/wOBBf8DgQH/AwYJ/wMGAf8DgQH/A8AB/wPAAf8DgQX/AQYH/wEG + B/8BBgf/AQYH/wMGAf8DgQH/A8AB/wPAAf8DgQH/AwYB/wOBBf8DwAH/AQYD/wPAAf8BBgP/A8AB/wEG + A/8DwAH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DgQH/A8AF/wPAAf8DgQL/AgYB/wMGAf8BBgKBAf8DwAH/ + AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wEGAoEB/wMGAf//ABEAA4EB/wPAAf8DgRn/AwYB/wPA + Af8DwAH/A4EB/wEGB/8BBgP/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/AwYB/wPAAf8DwAH/A8AB/wOB + Af8DBgH/A4EF/wEGA/8DwAH/AQYD/wPAAf8BBgP/AwYB/wMGAf8CgQEGAf8CgQEGAf8CgQEGAf8CgQEG + Af8CgQEGAf8DBgH/AwYB/wPAAf8DgQH/A4EB/wMGAf8BBgKBAf8DwAH/AQYD/wPAAf8BBgP/A8AB/wEG + A/8DwAH/AQYD/wPAAf8BBgKBAf8DBgH//wARAAOBAf8DwAH/A8AB/wOBAf8DgQH/A4EB/wOBAf8DgQH/ + A4EB/wMGAf8DwAH/A8AB/wPAAf8DgQH/A4EB/wOBAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wOBAf8DgQH/ + A4EB/wOBAf8DgQH/A8AB/wMGAf8DgQX/A8AB/wEGA/8DwAH/AQYD/wOBAf8CgQEGAf8DwAP/AQYB/wPA + A/8BBgH/A8AD/wEGAf8CgQEGAf8CgQEGAf8DBgH/A4EB/wMGAf8BBgKBAf8DwAH/AQYD/wPAAf8BBgP/ + A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/AQYCgQH/AwYB//8AFQADgQH/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/AoEBBgH/ + AwYB/wMGAf8DBgH/AwYB/wOBAf8DgQH/AwYB/wOBBf8BBgP/A8AB/wEGA/8DgQH/AoEBBgH/A8AD/wEG + Af8DwAP/AQYB/wPAA/8BBgH/A8AD/wEGAf8CgQEGAf8CgQEGAf8DBgH/AQYCgQH/A8AB/wEGA/8DwAH/ + AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgKBAf8DBgH//wAVAAOBAf8DgQH/A4EB/wOB + Af8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOB + Af8CgQEGA/8BBgP/AQYB/wKBAQYB/wMGAf8DgQH/A4EB/wMGAf8DgQX/A8AB/wEGA/8DwAH/A4EB/wPA + A/8BBgf/AQYB/wPAA/8BBgH/A8AD/wEGAf8DwAP/AQYB/wKBAQYB/wMGAf8DgQH/A8AB/wPAAf8BBgP/ + A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8BBgKBAf8DBgH//wBhAAKBAQYB/wKBAQYB/wKB + AQYB/wKBAQYB/wMGAf8MAAOBBf8BBgP/A8AB/wOBAf8DwAP/AQYH/wEGAf8DwAP/AQYB/wPAA/8BBgH/ + A8AD/wEGAf8DwAP/AQYB/wKBAQYB/wMGAf8DgQH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPA + Af8BBgP/A8AB/wEGAoEB/wMGAf//AGUAAoEBBgP/AQYB/wMGAf8QAAOBBf8DwAH/AQYD/wOBA/8BBgf/ + AQYH/wEGAf8DwAP/AQYB/wPAA/8BBgH/A8AD/wEGAf8DwAH/AoEBBgH/AwYB/wEGAoEB/wPAAf8BBgP/ + A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8BBgKBAf8DBgH//wBlAAKBAQYD/wEGAf8DBgH/ + EAADgQX/AQYD/wPAAf8DgQH/A8AD/wEGCf8DwAP/AQYB/wPAA/8BBgH/A8AD/wEGAf8DwAP/AQYB/wKB + AQYB/wMGAf8DgQH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGAoEB/wMG + Af//AGkAAoEBBgP/AQYB/wMGAf8MAAOBBf8DwAH/AQYD/wOBA/8BBgf/AQYJ/wPAA/8BBgH/A8AD/wEG + Af8DwAP/AQYB/wPAAf8CgQEGAf8DBgH/AQYCgQH/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEG + A/8DwAH/AQYD/wEGAoEB/wMGAf//AGkAAoEBBgP/AQYB/wMGAf8MAAOBBf8BBgP/A8AB/wOBAf8DwAP/ + AQYP/wEGAf8DwAP/AQYB/wPAA/8BBgH/A8AD/wEGAf8CgQEGAf8DBgH/A4EB/wEGA/8DwAH/AQYD/wPA + Af8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgKBAf8DBgH//wA9AAEGAoEB/wMGAf8DBgH/JAACgQEG + A/8BBgH/AwYB/wgAA4EF/wPAAf8BBgP/A8AB/wOBB/8BBg//AQYB/wPAA/8BBgH/A8AD/wEGAf8DwAH/ + AwYB/wEGAoEB/wPAAf8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/AQYCgQH/ + AwYB//8AOQABBgKBAf8BBgP/AQYD/wEGA/8DBgH/IAACgQEGA/8BBgH/AwYB/wgAA4EF/wEGA/8DwAH/ + AQYD/wOBAf8DwAf/AQYH/wEGB/8BBgH/A8AD/wEGAf8DwAH/AoEBBgH/AwYB/wEGAoEB/wPAAf8BBgP/ + A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYCgQH/AwYB//8ALQACgQEGAf8CgQEG + Af8CgQEGAf8CgQEGAf8CgQEGAf8CgQEGAf8CgQEGAf8CgQEGAf8DBgH/AwYB/wMGAf8YAAKBAQYD/wEG + Af8DBgH/BAADgQX/A8AB/wEGA/8DwAH/AQYD/wOBAf8DwAf/AQYH/wEGB/8BBgH/A8AB/wKBAQYB/wMG + Af8DgQH/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/AQYCgQH/ + AwYB//8ALQACgQEGA/8BBgf/AQYH/wEGA/8BBgH/AoEBBgH/AoEBBgH/AoEBBgH/AwYB/xQAAoEBBgH/ + AoEBBgP/AQYB/wMGAf8EAAOBBf8BBgP/A8AB/wEGA/8DwAH/AQYD/wOBAf8DgQH/A8AD/wEGAf8DwAP/ + AQYB/wOBAf8DBgH/AwYB/wOBAf8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/ + A8AB/wEGA/8DwAH/AQYCgQH/AwYB//8AMQACgQEGA/8BBgf/AQYD/wEGAf8CgQEGAf8CgQEGAf8CgQEG + Af8DBgH/EAACgQEGAf8CgQEGA/8BBgP/AQYB/wMGAf8DBgH/BAADgQX/A8AB/wEGA/8DwAH/AQYD/wPA + Af8BBgP/A8AB/wOBAf8DgQH/A4EB/wOBAf8DBgH/AQYCgQH/AQYCgQH/A8AB/wEGA/8DwAH/AQYD/wPA + Af8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8BBgKBAf8DBgH//wA1AAKBAQYD/wEG + B/8BBgH/AoEBBgH/AoEBBgH/AwYB/wwAAoEBBgH/AoEBBgP/AQYD/wEGAf8DBgH/AwYB/wwAA4EF/wEG + A/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPA + Af8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgKBAf8DBgH/ + /wA5AAKBAQYD/wEGA/8BBgH/AoEBBgH/AwYB/wgAAoEBBgH/AoEBBgP/AQYD/wEGAf8DBgH/AwYB/xQA + A4F1/wMGAf//AD0AAoEBBgf/AQYB/wKBAQYB/wMGAf8DBgH/AoEBBgP/AQYD/wEGAf8DBgH/AwYB/xwA + A4EB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/ + A8AB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/ + /wBBAAKBAQYD/wEGA/8BBgH/AoEBBgH/AwYB/wQAAoEBBgH/AwYB/wMGAf8oAAOBBf8BBgP/A8AB/wEG + A/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8DgQH//wB5AAKBAQYH/wEGAf8CgQEG + Af8DBgH/PAADgQX/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wOBAf//AIEA + AoEBBgH/AoEBBgH/AwYB/0QAA4El/wOBAf//AIkAAwYB/0wAA4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/ + A4EB/wOBAf8DgQH//wD/AIIAAwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB//8ANQADBgH/AwYB/wMG + Af8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMG + Af8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/0AAA4EB/wOBAf8DwAH/A8AB/wPAAf8BBgP/ + AQYD/wEGA/8BBgH/AQYB/wMGAf8DBgH/AwYB//8AJQADgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/ + A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/ + A4EB/wOBAf8DgQH/A4EB/wOBAf8DBgH/NAADgQH/A4EB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wEG + A/8BBgP/AQYB/wEGAf8BBgH/AQYB/wPAAf8DgQH/AwYB/wMGAf//AB0AA4EF/wPAAf8DwAH/A8AB/wPA + Af8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DwAH/A8AB/wPAAf8DwAH/A8AB/wOBAf8DgQH/AwYB/ywAA4EB/wPAAf8DwAH/A8AB/wPAAf8DwAH/ + A8AB/wPAAf8BBgP/AQYD/wEGA/8BBgH/AQYB/wEGAf8BBgH/A8AD/wEGA/8BBgP/AQYB/wMGAf8cAAMG + Af8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMG + Af8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wgA + AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/ + AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8UAAOBBf8DwAH/AQYBgQEG + Af8BBgGBAQYB/wEGAYEBBgH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DgQH/A4EB/wOBAf8DBgH/JAADgQX/ + A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8BBgP/AQYB/wEGAf8BBgH/AQYB/wPAA/8BBgP/ + AQYD/wEGA/8BBgH/A8AB/wMGAf8UAAOBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKB + Af8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKB + Af8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8BBgKB + Af8BBgKBAf8BBgKBAf8BBgKBAf8BBgKBAf8DBgH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOB + Af8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOB + Af8DgQH/A4EB/wOBAf8DgQH/AwYB/xAAA4EF/wPAAf8BBgH/AQYB/wEGAf8BBgH/AQYBgQEGAf8DwAH/ + A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wOBAf8DgQH/A4EB/wOBAf8DgQH/ + A4EB/wPAAf8DwAH/A8AB/wOBAf8DgQH/A4EB/wMGAf8gAAOBBf8DwAX/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DwAH/AQYD/wEGA/8BBgH/AQYB/wEGAf8BBgH/A8AD/wEGA/8BBgP/AQYB/wPAAf8DwAH/A8AB/wMG + Af8QAAOBBf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/ + A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/ + AQYCgQH/AwYB/wOBBf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DgQH/A4EB/wMG + Af8MAAOBBf8DwC3/A4EB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DgQH/A4EB/wOBAf8DwAH/ + A4EB/wOBAf8DgQH/AwYB/yAAA4EB/wOBBf8DwAX/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/AQYD/wEG + Af8BBgH/A8AD/wEGA/8BBgP/AQYB/wPAAf8DwAH/A8AB/wPAAf8DBgH/EAADgQX/A8AB/wEGA/8DwAH/ + AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AYECBgP/AQYC/wIGAf8BgQIGAf8DBgH/A8AB/wEGA/8CBgGB + Av8BBgL/AgYC/wIGAYEB/wMGAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/AQYCgQH/AwYB/wOB + Bf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwCH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DwAH/A4EB/wOBAf8DgQH/AwYB/wgAA4EF/wPAAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/ + AwYB/wMGAf8DBgH/A4EB/wOBAf8DgQH/A8AB/wPAAf8BBgP/AQYD/wEGA/8BBgH/AQYB/wMGAf8DBgH/ + AwYB/wOBAf8DgQH/A4EB/wOBAf8DBgH/HAADgQH/A4EB/wPAAf8DgQX/A8AF/wPAAf8DwAH/A8AB/wPA + Af8BBgP/AQYD/wEGAf8BBgH/A8AD/wEGA/8BBgH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/AwYB/wwA + A4EF/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wGBAgYD/wEGAv8CBgH/AYECBgH/ + AwYB/wEGA/8DwAH/AgYBgQL/AQYC/wIGAv8CBgGBAf8DBgH/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/ + A8AB/wEGAoEB/wMGAf8DgQX/A8AZ/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBhn/A8AB/wPA + Af8DwAH/A4EB/wOBAf8DgQH/AwYB/wgAA4EF/wPAAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/ + A4EB/wOBAf8DgQH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/AQYD/wEGA/8BBgH/AQYB/wEGAf8BBgH/ + A8AB/wOBAf8DBgH/AwYB/wOBAf8DgQH/AwYB/xwAA4EB/wPAAf8DgQH/A8AB/wOBBf8DwAX/A8AB/wPA + Af8DwAH/A8AB/wEGA/8DwAP/AQYD/wEGAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/AwYB/wwA + A4EF/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wGBAgYD/wEGAv8CBgH/AYECBgH/ + AwYB/wPAAf8BBgP/AgYBgQL/AQYC/wIGAv8CBgGBAf8DBgH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/ + AQYD/wEGAoEB/wMGAf8DgQX/A8AB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wMGAf8DBgH/AwYB/wMG + Af8DBgH/AwYB/wMGAf8DBgH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A8AB/wPAAf8DwAH/A4EB/wOB + Af8DgQH/AwYB/wgAA4EF/wPAHf8DgQH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wEGA/8BBgP/ + AQYD/wEGAf8BBgH/AQYB/wEGAf8DwAP/AQYD/wEGA/8BBgH/AwYB/wOBAf8DBgH/GAADgQH/A8AB/wOB + Af8DwAH/A4EB/wPAAf8DgQX/A8AF/wPAAf8DgQH/A4EB/wOBAf8DgQP/AQYB/wPAAf8DwAH/A8AB/wPA + Af8DwAH/A8AB/wPAAf8DwAH/A8AB/wMGAf8IAAOBBf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/ + A8AB/wEGA/8BgQIGAf8DwAP/AQYC/wIGAf8DBgH/AQYD/wPAAf8CBgGBBf8DwAH/AgYC/wMGAf8DwAH/ + AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYCgQH/AwYB/wOBBf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DwAH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DwAH/A8AB/wPAAf8DgQH/A4EB/wOBAf8DBgH/CAADgQX/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/ + A8AB/wOBBf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wEGA/8BBgH/AQYB/wEGAf8BBgH/ + A8AD/wEGA/8BBgP/AQYD/wEGAf8DwAH/AwYB/wMGAf8YAAOBAf8DgQH/A8AB/wOBAf8DwAH/A4EB/wPA + Af8DgQX/A8AB/wOBAf8DBgH/AwYB/wMGAf8DBgH/A4EB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DwAH/A8AB/wMGAf8IAAOBBf8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/ + AYECBgH/AYECBgH/AYECBgH/AQYD/wPAAf8BBgP/A8AB/wIGAYEB/wIGAYEB/wIGAYEB/wPAAf8BBgP/ + A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/AQYCgQH/AwYB/wOBBf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/AgYC/wIG + Av8DwAH/A8AB/wPAAf8DgQH/A4EB/wOBAf8DBgH/CAADgR3/A4EF/wPABf8DwAH/A8AB/wPAAf8DwAH/ + A8AB/wPAAf8BBgP/AQYD/wEGAf8BBgH/AQYB/wEGAf8DwAP/AQYD/wEGA/8BBgH/A8AB/wPAAf8DwAH/ + AwYB/xgAA4EB/wPAAf8DgQH/A8AB/wOBAf8DwAH/A4EB/wPAAf8DgQH/A4EB/wMGAf8MAAOBAf8DBgH/ + A4EB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/AwYB/wgAA4EF/wEGA/8DwAH/AQYD/wPA + Af8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8DBgH/A8AB/wMGAf8DwAH/AQYD/wPAAf8BBgP/A4EB/wPA + Af8DBgH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgKBAf8DBgH/A4EF/wPAAf8DwAH/ + A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/ + A8AB/wPAAf8CBgL/AgYC/wPAAf8DwAH/A8AB/wOBAf8DgQH/A4EB/wMGAf8MAAOBAf8DwAH/A8AB/wPA + Af8DwAH/A8AB/wPAAf8DgQH/A4EF/wPABf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8BBgP/AQYB/wEG + Af8DwAP/AQYD/wEGA/8BBgH/A8AB/wPAAf8DwAH/A8AB/wMGAf8YAAOBAf8DgQH/A8AB/wOBAf8DwAH/ + A4EB/wPAAf8DgQH/A8AB/wOBAf8DBgH/DAADgQH/AwYB/wOBAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DwAH/A8AB/wMGAf8IAAOBBf8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/ + AwYB/wPAAf8DBgH/AQYD/wPAAf8BBgP/A8AB/wOBAf8DwAH/AwYB/wPAAf8BBgP/A8AB/wEGA/8DwAH/ + AQYD/wPAAf8BBgP/AQYCgQH/AwYB/wOBBf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/AwYB/wMG + Af8DBgH/AwYB/wMGAf8DBgH/AwYB/wwAA4EB/wPAAf8DwAH/A8AB/wPAAf8DgQH/A4EB/wPAAf8DgQX/ + A8AF/wPAAf8DwAH/A8AB/wPAAf8BBgP/AQYD/wEGAf8BBgH/A8AD/wEGA/8BBgH/A8AB/wPAAf8DwAH/ + A8AB/wPAAf8DwAH/AwYB/xQAA4EB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A4EB/wMG + Af8MAAOBAf8DBgH/A4EB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/AwYB/wgAA4EF/wEG + A/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8DBgH/A8AB/wMGAf8DwAH/AQYD/wPA + Af8BBgP/A4EB/wPAAf8DBgH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgKBAf8DBgH/ + A4E9/wOBAf8DgQH/A4EB/wOBAf8DgQH/AwYB/wMGAf8DBgH/AwYB/wMGAf8DBgH/A4EB/wOBAf8DgQH/ + A4EB/wMGAf8MAAOBAf8DgQH/A4EB/wOBAf8DgQH/A8AB/wOBAf8DwAH/A4EF/wPABf8DwAH/A8AB/wPA + Af8DwAH/AQYD/wPAA/8BBgP/AQYB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DBgH/FAADgQH/ + A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AD/wEGAf8DgQH/AwYB/wwAA4EB/wMGAf8DgQH/A4EB/wPA + Af8DgQH/A8AB/wOBAf8DwAH/A4EB/wPAAf8DBgH/CAADgQX/A8AB/wEGA/8DwAH/AQYD/wPAAf8DBgH/ + AwYB/wEGA/8DwAH/AwYB/wMGAf8DwAH/AwYB/wMGAf8DwAH/AQYD/wPAAf8DBgH/AwYB/wMGAf8DwAH/ + AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wEGAoEB/wMGAf8EAAOBAf8DwAH/A8AB/wPAAf8DwAH/ + A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wOBBf8DwAH/A8AB/wPAAf8DgQH/ + A4EB/wOBAf8DgQH/A4EB/wMGAf8DwAX/A8AB/wOBAf8DBgH/GAADgQH/A8AB/wOBAf8DwAH/A4EB/wPA + Af8DgQX/A8AF/wPAAf8DgQH/A4EB/wOBAf8DgQP/AQYB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DwAH/A8AB/wMGAf8QAAOBAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAA/8BBgH/A8AB/wPAAf8DgQH/ + AwYB/wMGAf8DBgH/AwYB/wOBCf8DgQH/A8AB/wOBAf8DwAH/A4EB/wPAAf8DgQH/AwYB/wgAA4EF/wEG + A/8DwAH/AQYD/wPAAf8DgQH/A4EB/wOBAf8DBgH/AwYB/wOBAf8DgQH/A8AB/wOBAf8DgQH/AwYB/wMG + Af8DBgH/A4EB/wMGAf8DBgH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgKBAf8DBgH/ + CAADgQH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wOB + Bf8DwAH/A8AB/wPAAf8DgQH/AwYB/wPAAf8DgQH/A4EB/wMGAf8DwAX/A8AB/wOBAf8DBgH/GAADgQH/ + A4EB/wPAAf8DgQH/A8AB/wOBAf8DwAH/A4EF/wPAAf8DgQH/AwYB/wMGAf8DBgH/AwYB/wOBAf8DwAH/ + A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DBgH/EAADgQH/A8AB/wPAAf8DwAH/A8AB/wPA + A/8BBgH/A8AB/wPAAf8BBgH/AQYB/wEGAf8BBgH/A4EB/wOBAf8DgQH/A4EB/wPABf8DwAX/A4EB/wPA + Af8DgQH/A8AB/wOBAf8DwAH/AwYB/wgAA4EF/wPAAf8BBgP/A8AB/wEGA/8DgQH/A8AB/wPAAf8DgQH/ + A4EB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A4EB/wOBAf8DgQX/AwYB/wMGAf8DwAH/AQYD/wPAAf8BBgP/ + A8AB/wEGA/8DwAH/AQYD/wEGAoEB/wMGAf8MAAOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/ + A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQX/A8AB/wPAAf8DwAH/A4EB/wMGAf8DwAH/A4EB/wOBAf8DBgH/ + A8AF/wPAAf8DgQH/AwYB/xgAA4EB/wPAAf8DgQH/A8AB/wOBAf8DwAH/A4EB/wPAAf8DgQH/A4EB/wMG + Df8DgQH/AwYB/wOBAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wMGAf8UAAOBAf8DwAH/ + A8AD/wEGAf8DBgH/AwYB/wMGAf8BBgH/AQYB/wEGAf8BBgP/AQYB/wEGA/8BBgP/A8AB/wPAAf8DwAH/ + A8AF/wPABf8DgQH/A8AB/wOBAf8DwAH/AwYB/wwAA4EF/wEGA/8DwAH/AQYD/wPAAf8DgQX/A8AJ/wPA + Af8DwAH/A8AB/wPAAf8DwAH/A8AB/wPABf8DBgH/A8AB/wMGAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPA + Af8BBgP/A8AB/wEGAoEB/wMGAf9AAAOBBf8DwAH/A8AB/wPAAf8DwAH/A4EB/wOBAf8DgQH/A4EB/wOB + Af8DgQH/A8AB/wPAAf8DgQH/AwYB/xgAA4EB/wOBAf8DwAH/A4EB/wPAAf8DgQH/A8AB/wOBAf8DwAH/ + A4EB/wMGDf8DgQH/AwYB/wOBAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wMGAf8UAAOB + A/8BBgP/AQYB/wMGAf8DBgH/AwYB/wMGAf8DBgP/AQYD/wEGAf8BBgP/AQYD/wPAAf8DwAH/A8AB/wPA + Af8DwAX/A8AF/wOBAf8DwAH/A4EB/wMGAf8MAAOBBf8DwAH/AQYD/wPAAf8BBgP/A4EJ/wOBAf8DgR3/ + AwYB/wPAAf8DwAH/A4EB/wMGAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/AQYCgQH/AwYB/0AA + A4EF/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wOBAf8DBgH/ + GAADgQH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DgQH/AwYN/wOBAf8DBgH/A4EB/wPA + Af8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/AwYB/xgAA4ED/wEGAf8DBgH/A8AB/wMGAf8DBgH/ + AwYD/wEGA/8BBgH/AQYD/wEGA/8DwAH/A8AB/wPAAf8DwAH/A8AB/wPABf8DwAX/A4EB/wMGAf8QAAOB + Bf8BBgP/A8AB/wEGA/8DwAH/AQYD/wOBAf8DgQH/A8AB/wEGA/8DgQH/A4EB/wOBAf8DgQH/A4EB/wOB + Af8DgQH/A4EB/wPAAf8DwAH/A4EB/wMGAf8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYCgQH/ + AwYB/0AAA4EF/wPAAf8DwCH/A8AB/wPAAf8DgQH/AwYB/xgAA4EB/wPAAf8DwAH/A8AB/wPAAf8DwAH/ + A8AB/wPAA/8BBgH/A4EB/wMGDf8DgQH/AwYB/wOBAf8DgQH/A8AB/wOBAf8DwAH/A4EB/wPAAf8DgQH/ + A8AB/wMGAf8MAAMGAf8DBgH/AwYB/wOBAf8DwAH/AwYF/wMGAf8DBgH/AwYD/wEGA/8BBgH/AQYD/wEG + A/8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAX/A8AF/wMGAf8QAAOBBf8DwAH/AQYD/wPAAf8BBgP/ + A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A4EB/wPAAf8DwAH/ + A4EB/wMGAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/AQYCgQH/AwYB/0AAA4EF/wPAKf8DwAH/ + A4EB/wMGAf8YAAOBAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAA/8BBgH/A8AB/wPAAf8DgQH/AwYB/wMG + Af8DBgH/AwYB/wOBCf8DgQH/A8AB/wOBAf8DwAH/A4EB/wPAAf8DgQH/AwYB/wgAAwYB/wMGAf8DBgH/ + AwYB/wMGAf8DgQH/AQYB/wEGAf8DBgH/AwYB/wMGAf8DBgP/AQYD/wEGAf8BBgP/AQYD/wPAAf8DwAH/ + A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAX/AwYB/xQAA4EF/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEG + A/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8DgQX/A8AB/wOBAf8DBgH/A8AB/wEG + A/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGAoEB/wMGAf9AAAOBBf8DwCn/A8AB/wOBAf8DBgH/GAADgQH/ + A8AB/wPAAf8DwAH/A8AB/wPAA/8BBgH/A8AB/wPAAf8BBgH/AQYB/wEGAf8BBgH/A4EB/wOBAf8DgQH/ + A4EB/wPABf8DwAX/A4EB/wPAAf8DgQH/A8AB/wOBAf8DwAH/AwYB/wgAAwYB/wPAAf8DBgH/AwYB/wMG + Af8EAAOBAf8BBgH/AQYB/wEGAf8BBgP/AQYB/wMGA/8BBgH/AQYD/wEGA/8BBgP/A8AB/wPAAf8DwAH/ + A8AB/wPAAf8DwAH/A8AB/wPAAf8DBgH/GAADgQX/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEG + A/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wOBAf8DgQH/A4EB/wOBAf8DBgH/AQYD/wPA + Af8BBgP/A8AB/wEGA/8DwAH/AQYD/wEGAoEB/wMGAf9AAAOBBf8DwCn/A8AB/wOBAf8DBgH/HAADgQH/ + A8AB/wPAA/8BBgP/AQYB/wPAAf8DwAH/AQYB/wEGAf8BBgH/AQYD/wEGAf8BBgP/AQYD/wPAAf8DwAH/ + A8AB/wPABf8DwAX/A4EB/wPAAf8DgQH/A8AB/wMGAf8MAAMGBf8DBgH/AwYB/wMGAf8IAAOBAf8DgQH/ + A4EB/wMGA/8BBgH/AQYD/wEGA/8BBgP/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/AwYB/wMGAf8cAAOB + Bf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEG + A/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/AQYCgQH/ + AwYB/0AAA4EF/wPAKf8DwAH/A4EB/wMGAf8cAAOBA/8BBgP/AQYD/wEGAf8DwAH/A8AB/wEGAf8BBgH/ + AQYB/wEGA/8BBgP/AQYB/wEGA/8BBgP/A8AB/wPAAf8DwAH/A8AB/wPABf8DwAX/A4EB/wPAAf8DgQH/ + AwYB/xAAAwYB/wMGAf8DBgH/AwYB/xAAA4EB/wMGAf8DgQH/AQYD/wEGA/8BBgP/A8AB/wPAAf8DwAH/ + A4EB/wOBAf8DgQH/JAADgXX/AwYB/0QAA4EF/wPAKf8DwAH/A4EB/wMGAf8gAAOBA/8BBgH/A8AB/wPA + Af8BBgH/AQYB/wEGAf8BBgH/AQYB/wEGA/8BBgP/AQYB/wEGA/8BBgP/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DwAX/A8AF/wOBAf8DBgH/IAADBgH/FAADBgH/BAADgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8wAAOB + Af8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPA + Af8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/0gA + A4EF/wPAKf8DBgH/A4EB/wMGAf8gAAOBAf8DwAH/A8AB/wEGAf8BBgH/AQYB/wEGAf8BBgH/AQYD/wEG + A/8BBgP/AQYB/wEGA/8BBgP/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AF/wPABf8DBgH/IAADBgH/ + DAADBgH/AwYB/wMGAf9QAAOBBf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPAAf8BBgP/A8AB/wEGA/8DwAH/ + AQYD/wPAAf8DgQH/gAADgQX/A8Ap/wPAAf8DgQH/AwYB/yQAA4EB/wEGAf8BBgH/AQYB/wEGAf8BBgH/ + AQYB/wEGAf8BBgP/AQYD/wEGA/8BBgH/AQYD/wEGA/8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/ + A8AF/wMGAf8kAAMGAf8IAAMGAf8DBgH/AwYB/wMGAf9UAAOBBf8BBgP/A8AB/wEGA/8DwAH/AQYD/wPA + Af8BBgP/A8AB/wEGA/8DwAH/A4EB/4gAA4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/ + A4EB/wOBAf8DgQH/A4EB/wOBAf8sAAOBAf8BBgH/AQYB/wEGAf8BBgP/AQYD/wEGA/8BBgH/AQYD/wEG + A/8BBgP/A8AB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A8AB/wPAAf8DBgH/KAADBgH/AwYB/wMGAf8DBgH/ + AwYB/wMGAf8DBgH/WAADgSX/A4EB//QAA4EB/wOBAf8DgQP/AQYD/wEGAf8BBgP/AQYD/wEGA/8DwAH/ + A8AB/wPAAf8DwAH/A8AB/wPAAf8DBgH/AwYB/ywAAwYB/wMGAf8DBgH/AwYB/wMGAf9kAAOBAf8DgQH/ + A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB//8AAQADgQH/A4EB/wOBAf8BBgP/AQYD/wEGA/8DwAH/ + A8AB/wPAAf8DBgH/AwYB/wMGAf80AAMGAf8DBgH/AwYB//8AnQADgQH/A4EB/wOBAf8DgQH/A4EB/wOB + Af9AAAMGAf8DBgH/4AABQgFNAT4HAAE+AwABKAMAAYADAAFAAwABAQEAAQEGAAEEFgAD/wQAAQ8D/wEf + CwABDwL/Af4BDwsAAQcC/wH8AQ8LAAEHAv8B+AEPCwABAwL/AfABHwgAAYACAAEDAYACAAEBCAABgAIA + AQEMAAHAAgABAQwAAcAPAAHgDwAB4A8AAfAPAAHwDwAB+A8AAfgPAAP/AQcMAAP/AY8MAAP/AY8MAAP/ + AccMAAP/AccMAAH/Af4BPwHjDAAB/wH8AR8B4wwAAf8B4AEDAfEMAAH/AeABAwHhDAAB/wHwAQcBgQwA + Af8B+AEOAQcMAAH/AfwBGAEfAwABAQgAAf8B/AEAAX8DAAEDCAAB/wH8AREB/wGAAQAC/wgAAf8B/AEf + Af8BwAEBAv8IAAH/Af4BPwH/AeABAwL/CAAC/wF/Af8B8AEHAv8IAAn/AfgBDwn/AYACAAEfAf8B4AEB + Cf8DAAEPAf8BgAEAAX8I/wMAAQcB/wIAAT8BgAIAAQEBgAIAAR8DAAEDAf4CAAEfBwABDwMAAQMB/AIA + AQ8HAAEHAwABAwH8AgABDwcAAQMDAAEDAfgCAAEHBwABAwMAAQMB+AIAAQcHAAEDAwABAwHwAgABAwcA + AQMDAAEDAfACAAEDBwABAwMAAQMB8AEBAcABAwcAAQMBgAIAAQMB8AEBAcABAwcAAQEBwAIAAQEB8AEB + AcABAwgAAeACAAEBAfABAQHAAQMEAAGAAwAB/AMAAfACAAEDBAABwAMAAfwDAAHwAgABAwQAAeADAAH8 + AwAB+AIAAQcEAAL/AgAB/AMAAfgCAAEHBAAC/wIAAfwDAAH8AgABDwQAAv8CAAH8AwAB4AIAAQ8EAAL/ + AgAB/AMAAcACAAEfBAAC/wIAAfwDAAHBAgABPwQAAv8CAAH+AgABAQHBAYABAAF/BAAC/wIAAf4CAAEB + AeEB4AEBAf8DAAEBAv8CAAH/AgABAwH9AfQBDwH/AwABAwL/AgAB/wIAAQMB/QHHAv8BgAEABP8CAAH/ + AYABAAEHAf0BhwL/AcABAQT/AYABAQH/AcABAAEPAfwBBwL/AeABAwf/AeABAAEfAfwBHwL/AfABBwf/ + AfgBAAF/AfwBfwz/AQMB/wH8B/8L +</value> + </data> + <metadata name="imageListItemBackground.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>504, 17</value> + </metadata> + <data name="imageListItemBackground.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64"> + <value> + AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w + LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAW + GAAAAk1TRnQBSQFMAgEBAwEAAQQBAAEEAQAB+gEAAWQBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo + AwAB6AEDAgABZAMAAQEBAAEIBQABoAGGAQEXAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEA + AcAB3AHAAQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEA + A0IBAAM5AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIA + Af8BMwMAAWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIA + AmYCAAFmAZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHM + ATMCAAHMAWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEz + AQABZgEAATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIz + Af8BAAEzAWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEz + AQABMwGZAWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZ + AQABMwLMAQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFm + AQABMwEAAWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFm + ATMBmQEAAWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEz + AQABZgGZAWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEA + AWYBzAH/AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZ + ATMBmQEAAZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFm + AgABmQFmATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZ + AcwBAAKZAf8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIA + AZkB/wEzAQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHM + AQABmQEAAcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHM + AWYCAAHMAWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZ + AWYBAAHMApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHM + Af8CAAHMAf8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/ + AQABmQEAAcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFm + ATMBAAHMAmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZ + AQAB/wGZAcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/ + AQAC/wEzAQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/ + AQAC/wFmAQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEA + A/gBAAHwAfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wEADP8B9OHz + AfQX/wH04fMB9Bf/AfTh8wH0C//6AAn/AfIBB+XvAQcB8hH/AfIBB+XvAQcB8hH/AfIBB+XvAQcB8gj/ + +gAH/wHwA+8BBwHxAfLf8wHyAfEBBwPvAfAN/wHwA+8BBwHxAfLf8wHyAfEBBwPvAfAN/wHwA+8BBwHx + AfLf8wHyAfEBBwPvAfAG//oABf8B9APvAfLn/wHyA+8B9An/AfQD7wHy5/8B8gPvAfQJ/wH0A+8B8uf/ + AfID7wH0BP/6AAT/AfIC7wHx6/8B8QLvAfIH/wHyAu8B8ev/AfEC7wHyB/8B8gLvAfHr/wHxAu8B8gP/ + +gAD/wHzAu8B9O3/AfQC7wHzBf8B8wLvAfTt/wH0Au8B8wX/AfMC7wH07f8B9ALvAfMC//oAA/8C7/H/ + Au8F/wLv8f8C7wX/Au/x/wLvAv/6AAL/AQcB7wHz8f8B8wHvAQcD/wEHAe8B8/H/AfMB7wEHA/8BBwHv + AfPx/wHzAe8BBwH/+gAB/wH0Ae8BvPP/AbwB7wH0Af8B9AHvAbzz/wG8Ae8B9AH/AfQB7wG88/8BvAHv + AfT6AAH/AQcB7wH08/8B9AHvAQcB/wEHAe8B9PP/AfQB7wEHAf8BBwHvAfTz/wH0Ae8BB/oAAf8C7/X/ + Au8B/wLv9f8C7wH/Au/1/wLv+gAB9AHvAfD1/wHwAe8B9AHvAfD1/wHwAe8B9AHvAfD1/wHwAe/6AAHz + Ae8B8vX/AfIB7wHzAe8B8vX/AfIB7wHzAe8B8vX/AfIB7/oAAfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHv + AfMB7wHz9f8B8wHv+gAB8wHvAfP1/wHzAe8B8wHvAfP1/wHzAe8B8wHvAfP1/wHzAe/6AAHzAe8B8/X/ + AfMB7wHzAe8B8/X/AfMB7wHzAe8B8/X/AfMB7/oAAfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHvAfMB7wHz + 9f8B8wHv+gAB8wHvAfP1/wHzAe8B8wHvAfP1/wHzAe8B8wHvAfP1/wHzAe/6AAHzAe8B8/X/AfMB7wHz + Ae8B8/X/AfMB7wHzAe8B8/X/AfMB7/oAAfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHv + +gAB8wHvAfP1/wHzAe8B8wHvAfP1/wHzAe8B8wHvAfP1/wHzAe/6AAHzAe8B8/X/AfMB7wHzAe8B8/X/ + AfMB7wHzAe8B8/X/AfMB7/oAAfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHv+gAB8wHv + AfP1/wHzAe8B8wHvAfP1/wHzAe8B8wHvAfP1/wHzAe/6AAHzAe8B8/X/AfMB7wHzAe8B8/X/AfMB7wHz + Ae8B8/X/AfMB7/oAAfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHv+gAB8wHvAfP1/wHz + Ae8B8wHvAfP1/wHzAe8B8wHvAfP1/wHzAe/6AAHzAe8B8/X/AfMB7wHzAe8B8/X/AfMB7wHzAe8B8/X/ + AfMB7/oAAfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHv+gAB8wHvAfP1/wHzAe8B8wHv + AfP1/wHzAe8B8wHvAfP1/wHzAe/6AAHzAe8B8/X/AfMB7wHzAe8B8/X/AfMB7wHzAe8B8/X/AfMB7/oA + AfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHv+gAB8wHvAfP1/wHzAe8B8wHvAfP1/wHz + Ae8B8wHvAfP1/wHzAe/6AAHzAe8B8/X/AfMB7wHzAe8B8/X/AfMB7wHzAe8B8/X/AfMB7/oAAfMB7wHz + 9f8B8wHvAfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHv+gAB8wHvAfP1/wHzAe8B8wHvAfP1/wHzAe8B8wHv + AfP1/wHzAe/6AAHzAe8B8/X/AfMB7wHzAe8B8/X/AfMB7wHzAe8B8/X/AfMB7/oAAfMB7wHz9f8B8wHv + AfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHv+gAB8wHvAfP1/wHzAe8B8wHvAfP1/wHzAe8B8wHvAfP1/wHz + Ae/6AAHzAe8B8/X/AfMB7wHzAe8B8/X/AfMB7wHzAe8B8/X/AfMB7/oAAfMB7wHz9f8B8wHvAfMB7wHz + 9f8B8wHvAfMB7wHz9f8B8wHv+gAB8wHvAfP1/wHzAe8B8wHvAfP1/wHzAe8B8wHvAfP1/wHzAe/6AAHz + Ae8B8/X/AfMB7wHzAe8B8/X/AfMB7wHzAe8B8/X/AfMB7/oAAfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHv + AfMB7wHz9f8B8wHv+gAB8wHvAfP1/wHzAe8B8wHvAfP1/wHzAe8B8wHvAfP1/wHzAe/6AAHzAe8B8/X/ + AfMB7wHzAe8B8/X/AfMB7wHzAe8B8/X/AfMB7/oAAfMB7wHz9f8B8wHvAfMB7wHz9f8B8wHvAfMB7wHz + ... [truncated message content] |
From: <an...@us...> - 2007-04-02 12:54:51
|
Revision: 276 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=276&view=rev Author: and-81 Date: 2007-04-02 05:54:44 -0700 (Mon, 02 Apr 2007) Log Message: ----------- Modified Paths: -------------- trunk/plugins/MCEReplacement/AssemblyInfo.cs trunk/plugins/MCEReplacement/MCEReplacement.cs trunk/plugins/MCEReplacement/MCEReplacement.csproj trunk/plugins/TV3MceBlaster/AssemblyInfo.cs Modified: trunk/plugins/MCEReplacement/AssemblyInfo.cs =================================================================== --- trunk/plugins/MCEReplacement/AssemblyInfo.cs 2007-04-02 10:08:23 UTC (rev 275) +++ trunk/plugins/MCEReplacement/AssemblyInfo.cs 2007-04-02 12:54:44 UTC (rev 276) @@ -34,8 +34,8 @@ // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.0.2.0")] -[assembly: AssemblyFileVersionAttribute("1.0.2.0")] +[assembly: AssemblyVersion("1.0.3.0")] +[assembly: AssemblyFileVersionAttribute("1.0.3.0")] // // In order to sign your assembly you must specify a key to use. Refer to the Modified: trunk/plugins/MCEReplacement/MCEReplacement.cs =================================================================== --- trunk/plugins/MCEReplacement/MCEReplacement.cs 2007-04-02 10:08:23 UTC (rev 275) +++ trunk/plugins/MCEReplacement/MCEReplacement.cs 2007-04-02 12:54:44 UTC (rev 276) @@ -26,7 +26,7 @@ #region Constants - public const string PluginVersion = "MCE Replacement Plugin 1.0.3.0 for MediaPortal + SVN"; + public const string PluginVersion = "MCE Replacement Plugin 1.0.3.0 for MediaPortal 0.2.1.0"; public const int MessageModeCommand = 0x0018; Modified: trunk/plugins/MCEReplacement/MCEReplacement.csproj =================================================================== --- trunk/plugins/MCEReplacement/MCEReplacement.csproj 2007-04-02 10:08:23 UTC (rev 275) +++ trunk/plugins/MCEReplacement/MCEReplacement.csproj 2007-04-02 12:54:44 UTC (rev 276) @@ -152,29 +152,28 @@ <Compile Include="Win32.cs" /> </ItemGroup> <ItemGroup> - <Reference Include="Core, Version=1.0.2581.1884, Culture=neutral, processorArchitecture=MSIL"> + <Reference Include="Core, Version=1.0.2485.22312, Culture=neutral, processorArchitecture=x86"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\MediaPortal\Core\bin\Release\Core.dll</HintPath> + <HintPath>..\..\MediaPortal 0.2.1.0\Core.DLL</HintPath> <Private>False</Private> </Reference> - <Reference Include="Databases, Version=1.0.2581.1890, Culture=neutral, processorArchitecture=MSIL"> + <Reference Include="Databases, Version=1.0.2485.22313, Culture=neutral, processorArchitecture=x86"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\MediaPortal\Databases\bin\Release\Databases.dll</HintPath> + <HintPath>..\..\MediaPortal 0.2.1.0\Databases.DLL</HintPath> <Private>False</Private> </Reference> - <Reference Include="Dialogs, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL"> + <Reference Include="Dialogs, Version=0.0.0.0, Culture=neutral, processorArchitecture=x86"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\MediaPortal\Dialogs\bin\Release\Dialogs.dll</HintPath> + <HintPath>..\..\MediaPortal 0.2.1.0\Dialogs.DLL</HintPath> <Private>False</Private> </Reference> <Reference Include="Microsoft.DirectX.Direct3D, Version=1.0.2902.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\MediaPortal\xbmc\bin\Release\Microsoft.DirectX.Direct3D.dll</HintPath> - <Private>False</Private> + <HintPath>..\..\MediaPortal 0.2.1.0\Microsoft.DirectX.Direct3D.dll</HintPath> </Reference> - <Reference Include="RemotePlugins, Version=1.0.2581.1913, Culture=neutral, processorArchitecture=MSIL"> + <Reference Include="RemotePlugins, Version=1.0.2485.22315, Culture=neutral, processorArchitecture=x86"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\MediaPortal\RemotePlugins\bin\Release\RemotePlugins.dll</HintPath> + <HintPath>..\..\MediaPortal 0.2.1.0\RemotePlugins.DLL</HintPath> <Private>False</Private> </Reference> <Reference Include="System" /> @@ -182,16 +181,11 @@ <Reference Include="System.Drawing" /> <Reference Include="System.Windows.Forms" /> <Reference Include="System.Xml" /> - <Reference Include="TVCapture, Version=1.0.2581.1894, Culture=neutral, processorArchitecture=MSIL"> + <Reference Include="TVCapture, Version=1.0.2485.22314, Culture=neutral, processorArchitecture=x86"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\MediaPortal\TVCapture\bin\Release\TVCapture.dll</HintPath> + <HintPath>..\..\MediaPortal 0.2.1.0\TVCapture.DLL</HintPath> <Private>False</Private> </Reference> - <Reference Include="Utils, Version=1.0.2581.1867, Culture=neutral, processorArchitecture=MSIL"> - <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\MediaPortal\Utils\bin\Release\Utils.dll</HintPath> - <Private>False</Private> - </Reference> </ItemGroup> <ItemGroup> <EmbeddedResource Include="Forms\ExternalChannels.resx"> Modified: trunk/plugins/TV3MceBlaster/AssemblyInfo.cs =================================================================== --- trunk/plugins/TV3MceBlaster/AssemblyInfo.cs 2007-04-02 10:08:23 UTC (rev 275) +++ trunk/plugins/TV3MceBlaster/AssemblyInfo.cs 2007-04-02 12:54:44 UTC (rev 276) @@ -34,8 +34,8 @@ // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.0.2.0")] -[assembly: AssemblyFileVersionAttribute("1.0.2.0")] +[assembly: AssemblyVersion("1.0.3.0")] +[assembly: AssemblyFileVersionAttribute("1.0.3.0")] // // In order to sign your assembly you must specify a key to use. Refer to the This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <hap...@us...> - 2007-04-02 10:08:47
|
Revision: 275 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=275&view=rev Author: happytalk Date: 2007-04-02 03:08:23 -0700 (Mon, 02 Apr 2007) Log Message: ----------- fixed various bugs concerning position memory. Remembers exact position across user_config/view changes/restart Modified Paths: -------------- trunk/plugins/MyFilms/MesFilms.cs Modified: trunk/plugins/MyFilms/MesFilms.cs =================================================================== --- trunk/plugins/MyFilms/MesFilms.cs 2007-04-01 16:38:52 UTC (rev 274) +++ trunk/plugins/MyFilms/MesFilms.cs 2007-04-02 10:08:23 UTC (rev 275) @@ -720,7 +720,6 @@ l_index = 0; GUIControl.SelectItemControl(GetID, (int)Controls.CTRL_List, (int)l_index); GUIPropertyManager.SetProperty("#nbobjects", lsCtlFilm.Count.ToString() + " " + GUILocalizeStrings.Get(127)); - l_index = 0; return !(lsCtlFilm.Count == 1 && item.IsFolder); //ret false if single folder found } @@ -1090,7 +1089,7 @@ xmlwriter.SetValue(CurrentConfig, "StrSort", StrSort.ToString()); xmlwriter.SetValue(CurrentConfig, "CurrentSortMethod", CurrentSortMethod.ToString()); xmlwriter.SetValue(CurrentConfig, "StrSortSens", StrSortSens.ToString()); - xmlwriter.SetValue(CurrentConfig, "Selection", TxtSelect.Label.ToString()); + xmlwriter.SetValue(CurrentConfig, "Selection", StrTxtSelect); xmlwriter.SetValue(CurrentConfig, "IndexItem", (lsCtlFilm.SelectedListItemIndex > -1) ? lsCtlFilm.SelectedListItem.ItemId.ToString() : "-1"); //may need to check if there is no item selected and so save -1 xmlwriter.SetValueAsBool(CurrentConfig, "boolselect", boolselect); xmlwriter.SetValue(CurrentConfig, "WStrSort", WStrSort); @@ -1157,20 +1156,21 @@ } StrSelect = xmlreader.GetValueAsString(CurrentConfig, "StrSelect", ""); StrActors = xmlreader.GetValueAsString(CurrentConfig, "StrActors", ""); + StrTitleSelect = xmlreader.GetValueAsString(CurrentConfig, "StrTitleSelect", ""); + StrFilmSelect = xmlreader.GetValueAsString(CurrentConfig, "StrFilmSelect", ""); StrDfltSelect = xmlreader.GetValueAsString(CurrentConfig, "StrDfltSelect", ""); - StrTitleSelect = xmlreader.GetValueAsString(CurrentConfig, "StrTitleSelect", ""); StrSort = xmlreader.GetValueAsString(CurrentConfig, "StrSort", ""); CurrentSortMethod = xmlreader.GetValueAsString(CurrentConfig, "CurrentSortMethod", ""); - TxtSelect.Label = xmlreader.GetValueAsString(CurrentConfig, "Selection", ""); StrSortSens = xmlreader.GetValueAsString(CurrentConfig, "StrSortSens", ""); + StrTxtSelect = xmlreader.GetValueAsString(CurrentConfig, "Selection", ""); l_index = xmlreader.GetValueAsInt(CurrentConfig, "IndexItem", -1); - StrViewDfltItem = xmlreader.GetValueAsString(CurrentConfig, "ViewDfltItem", ""); - StrViewDfltText = xmlreader.GetValueAsString(CurrentConfig, "ViewDfltText", ""); - TitleDelim = xmlreader.GetValueAsString(CurrentConfig, "TitleDelim", "."); boolselect = xmlreader.GetValueAsBool(CurrentConfig, "boolselect", false); WStrSort = xmlreader.GetValueAsString(CurrentConfig, "WStrSort", ""); Wstar = xmlreader.GetValueAsString(CurrentConfig, "Wstar", ""); LastID = xmlreader.GetValueAsInt(CurrentConfig, "LastID", -1); + StrViewDfltItem = xmlreader.GetValueAsString(CurrentConfig, "ViewDfltItem", ""); + StrViewDfltText = xmlreader.GetValueAsString(CurrentConfig, "ViewDfltText", ""); + TitleDelim = xmlreader.GetValueAsString(CurrentConfig, "TitleDelim", "."); } } //-------------------------------------------------------------------------------------------- @@ -1178,6 +1178,8 @@ //-------------------------------------------------------------------------------------------- private string Choice_Config() { + string newConfig = ""; + GUIDialogMenu dlg = (GUIDialogMenu)GUIWindowManager.GetWindow((int)GUIWindow.Window.WINDOW_DIALOG_MENU); if (dlg == null) { @@ -1202,9 +1204,9 @@ } using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings("MyFilms.xml")) { - CurrentConfig = xmlreader.GetValueAsString("MyFilms", "ConfigName" + dlg.SelectedLabel, ""); + newConfig = xmlreader.GetValueAsString("MyFilms", "ConfigName" + dlg.SelectedLabel, ""); } - return CurrentConfig; + return newConfig; } //-------------------------------------------------------------------------------------------- // Initial Windows load. If LoadDfltSlct = true => load default select if any @@ -1394,15 +1396,15 @@ } if (choice_view == "Config") { - string oldConfig = CurrentConfig; - string newView = Choice_Config(); - if (newView != "" && newView != oldConfig) // if user escapes dialog or bad value leave system unchanged + string newConfig = Choice_Config(); + if (newConfig != "" && newConfig != CurrentConfig) // if user escapes dialog or bad value leave system unchanged { //Change "Config": save_config_values(); mydivx.Clear(); - Load_Config(newView, true); - Fin_Charge_Init(true); + CurrentConfig = newConfig; + Load_Config(newConfig, true); + Fin_Charge_Init(false); //need to load current selection as reloaded from myfilms.xml file to remember position } return; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <du...@us...> - 2007-04-01 16:38:55
|
Revision: 274 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=274&view=rev Author: dukus Date: 2007-04-01 09:38:52 -0700 (Sun, 01 Apr 2007) Log Message: ----------- Upload option Modified Paths: -------------- trunk/plugins/mpinstaler/MPInstaler/Build dialog.Designer.cs trunk/plugins/mpinstaler/MPInstaler/Build dialog.cs trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj trunk/plugins/mpinstaler/MPInstaler/Properties/Resources.Designer.cs trunk/plugins/mpinstaler/MPInstaler/Properties/Settings.Designer.cs trunk/plugins/mpinstaler/MPInstaler/download_form.cs Modified: trunk/plugins/mpinstaler/MPInstaler/Build dialog.Designer.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Build dialog.Designer.cs 2007-04-01 16:24:32 UTC (rev 273) +++ trunk/plugins/mpinstaler/MPInstaler/Build dialog.Designer.cs 2007-04-01 16:38:52 UTC (rev 274) @@ -37,6 +37,13 @@ this.button3 = new System.Windows.Forms.Button(); this.listBox1 = new System.Windows.Forms.ListBox(); this.progressBar1 = new System.Windows.Forms.ProgressBar(); + this.button4 = new System.Windows.Forms.Button(); + this.textBox2 = new System.Windows.Forms.TextBox(); + this.label2 = new System.Windows.Forms.Label(); + this.textBox3 = new System.Windows.Forms.TextBox(); + this.label3 = new System.Windows.Forms.Label(); + this.textBox4 = new System.Windows.Forms.TextBox(); + this.label4 = new System.Windows.Forms.Label(); this.SuspendLayout(); // // saveFileDialog1 @@ -48,7 +55,7 @@ // this.textBox1.Location = new System.Drawing.Point(12, 23); this.textBox1.Name = "textBox1"; - this.textBox1.Size = new System.Drawing.Size(452, 20); + this.textBox1.Size = new System.Drawing.Size(334, 20); this.textBox1.TabIndex = 0; // // label1 @@ -62,7 +69,7 @@ // // button1 // - this.button1.Location = new System.Drawing.Point(469, 20); + this.button1.Location = new System.Drawing.Point(354, 20); this.button1.Name = "button1"; this.button1.Size = new System.Drawing.Size(27, 23); this.button1.TabIndex = 2; @@ -82,7 +89,7 @@ // // button3 // - this.button3.Location = new System.Drawing.Point(421, 220); + this.button3.Location = new System.Drawing.Point(306, 220); this.button3.Name = "button3"; this.button3.Size = new System.Drawing.Size(75, 23); this.button3.TabIndex = 4; @@ -92,29 +99,92 @@ // // listBox1 // - this.listBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); this.listBox1.FormattingEnabled = true; this.listBox1.HorizontalScrollbar = true; this.listBox1.Location = new System.Drawing.Point(12, 54); this.listBox1.Name = "listBox1"; - this.listBox1.Size = new System.Drawing.Size(484, 134); + this.listBox1.Size = new System.Drawing.Size(369, 134); this.listBox1.TabIndex = 5; // // progressBar1 // - this.progressBar1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); + this.progressBar1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.progressBar1.Location = new System.Drawing.Point(12, 198); this.progressBar1.Name = "progressBar1"; - this.progressBar1.Size = new System.Drawing.Size(484, 16); + this.progressBar1.Size = new System.Drawing.Size(369, 16); this.progressBar1.TabIndex = 6; // + // button4 + // + this.button4.Location = new System.Drawing.Point(147, 220); + this.button4.Name = "button4"; + this.button4.Size = new System.Drawing.Size(95, 23); + this.button4.TabIndex = 7; + this.button4.Text = "Build && Upload"; + this.button4.UseVisualStyleBackColor = true; + this.button4.Click += new System.EventHandler(this.button4_Click); + // + // textBox2 + // + this.textBox2.Location = new System.Drawing.Point(403, 54); + this.textBox2.Name = "textBox2"; + this.textBox2.Size = new System.Drawing.Size(249, 20); + this.textBox2.TabIndex = 8; + this.textBox2.Text = "ftp://ftp.extra.hu/wwwroot"; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Location = new System.Drawing.Point(400, 38); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(41, 13); + this.label2.TabIndex = 9; + this.label2.Text = "Server "; + // + // textBox3 + // + this.textBox3.Location = new System.Drawing.Point(403, 97); + this.textBox3.Name = "textBox3"; + this.textBox3.Size = new System.Drawing.Size(249, 20); + this.textBox3.TabIndex = 10; + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Location = new System.Drawing.Point(400, 81); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(58, 13); + this.label3.TabIndex = 11; + this.label3.Text = "User name"; + // + // textBox4 + // + this.textBox4.Location = new System.Drawing.Point(403, 138); + this.textBox4.Name = "textBox4"; + this.textBox4.Size = new System.Drawing.Size(249, 20); + this.textBox4.TabIndex = 12; + // + // label4 + // + this.label4.AutoSize = true; + this.label4.Location = new System.Drawing.Point(400, 122); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(53, 13); + this.label4.TabIndex = 13; + this.label4.Text = "Password"; + // // Build_dialog // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(502, 255); + this.ClientSize = new System.Drawing.Size(677, 255); + this.Controls.Add(this.label4); + this.Controls.Add(this.textBox4); + this.Controls.Add(this.label3); + this.Controls.Add(this.textBox3); + this.Controls.Add(this.label2); + this.Controls.Add(this.textBox2); + this.Controls.Add(this.button4); this.Controls.Add(this.progressBar1); this.Controls.Add(this.listBox1); this.Controls.Add(this.button3); @@ -144,5 +214,12 @@ private System.Windows.Forms.Button button3; private System.Windows.Forms.ListBox listBox1; private System.Windows.Forms.ProgressBar progressBar1; + private System.Windows.Forms.Button button4; + private System.Windows.Forms.TextBox textBox2; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.TextBox textBox3; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.TextBox textBox4; + private System.Windows.Forms.Label label4; } } \ No newline at end of file Modified: trunk/plugins/mpinstaler/MPInstaler/Build dialog.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Build dialog.cs 2007-04-01 16:24:32 UTC (rev 273) +++ trunk/plugins/mpinstaler/MPInstaler/Build dialog.cs 2007-04-01 16:38:52 UTC (rev 274) @@ -4,6 +4,8 @@ using System.Data; using System.Drawing; using System.Text; +using System.IO; +using System.Net; using System.Windows.Forms; namespace MPInstaler @@ -39,8 +41,16 @@ private void button2_Click(object sender, EventArgs e) { - _struct.BuildFileName = textBox1.Text; - _struct.BuilFile(listBox1,progressBar1); + if (!String.IsNullOrEmpty(textBox1.Text)) + { + _struct.BuildFileName = textBox1.Text; + _struct.BuilFile(listBox1, progressBar1); + } + else + { + MessageBox.Show("File name is mandatory !", "Stop"); + textBox1.Focus(); + } } public void onbuild() { @@ -51,5 +61,55 @@ { listBox1.Items.Clear(); } + + + private void button4_Click(object sender, EventArgs e) + { + this.Cursor = Cursors.WaitCursor; + if (!String.IsNullOrEmpty(textBox1.Text)) + { + _struct.BuildFileName = textBox1.Text; + _struct.BuilFile(listBox1, progressBar1); + listBox1.Items.Add("Upload begin..."); + listBox1.SelectedIndex = listBox1.Items.Count - 1; + listBox1.Refresh(); + listBox1.Update(); + if (download_form.FtpUpload(textBox1.Text, textBox2.Text, textBox3.Text, textBox4.Text)) + { + listBox1.Items.Add("Upload done."); + listBox1.Refresh(); + listBox1.Update(); + string tempfile = Path.GetTempPath() + @"\MPExtensionFileList.xml"; + string configfile = textBox2.Text+"/MPExtensionFileList.xml"; + if (download_form.FtpDownload(configfile, tempfile, textBox3.Text, textBox4.Text)) + { + listBox1.Items.Add("List file downloaded !"); + listBox1.SelectedIndex = listBox1.Items.Count - 1; + listBox1.Refresh(); + listBox1.Update(); + MPInstallHelper temp_mpih = new MPInstallHelper(); + temp_mpih.LoadFromFile(tempfile); + MPpackageStruct pk = new MPpackageStruct(); + pk.LoadFromFile(textBox1.Text); + temp_mpih.Add(pk); + temp_mpih.SaveToFile(); + download_form.FtpRenam(configfile, "MPExtensionFileList_old.xml", textBox3.Text, textBox4.Text); + listBox1.Items.Add("List file renamed !"); + listBox1.Refresh(); + listBox1.Update(); + download_form.FtpUpload(tempfile, textBox2.Text, textBox3.Text, textBox4.Text); + listBox1.Items.Add("List file uploaded !"); + listBox1.Refresh(); + listBox1.Update(); + } + } + } + else + { + MessageBox.Show("File name is mandatory !", "Stop"); + textBox1.Focus(); + } + this.Cursor = Cursors.Arrow; + } } } \ No newline at end of file Modified: trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj 2007-04-01 16:24:32 UTC (rev 273) +++ trunk/plugins/mpinstaler/MPInstaler/MPInstaler.csproj 2007-04-01 16:38:52 UTC (rev 274) @@ -147,6 +147,7 @@ <Compile Include="Properties\Resources.Designer.cs"> <AutoGen>True</AutoGen> <DependentUpon>Resources.resx</DependentUpon> + <DesignTime>True</DesignTime> </Compile> <None Include="app.config" /> <None Include="MPInstaler_TemporaryKey.pfx" /> Modified: trunk/plugins/mpinstaler/MPInstaler/Properties/Resources.Designer.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Properties/Resources.Designer.cs 2007-04-01 16:24:32 UTC (rev 273) +++ trunk/plugins/mpinstaler/MPInstaler/Properties/Resources.Designer.cs 2007-04-01 16:38:52 UTC (rev 274) @@ -8,10 +8,10 @@ // </auto-generated> //------------------------------------------------------------------------------ -namespace MPInstaler.Properties -{ - - +namespace MPInstaler.Properties { + using System; + + /// <summary> /// A strongly-typed resource class, for looking up localized strings, etc. /// </summary> @@ -22,48 +22,40 @@ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources - { - + internal class Resources { + private static global::System.Resources.ResourceManager resourceMan; - + private static global::System.Globalization.CultureInfo resourceCulture; - + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Resources() - { + internal Resources() { } - + /// <summary> /// Returns the cached ResourceManager instance used by this class. /// </summary> [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager - { - get - { - if ((resourceMan == null)) - { + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("MPInstaler.Properties.Resources", typeof(Resources).Assembly); resourceMan = temp; } return resourceMan; } } - + /// <summary> /// Overrides the current thread's CurrentUICulture property for all /// resource lookups using this strongly typed resource class. /// </summary> [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture - { - get - { + internal static global::System.Globalization.CultureInfo Culture { + get { return resourceCulture; } - set - { + set { resourceCulture = value; } } Modified: trunk/plugins/mpinstaler/MPInstaler/Properties/Settings.Designer.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/Properties/Settings.Designer.cs 2007-04-01 16:24:32 UTC (rev 273) +++ trunk/plugins/mpinstaler/MPInstaler/Properties/Settings.Designer.cs 2007-04-01 16:38:52 UTC (rev 274) @@ -8,21 +8,17 @@ // </auto-generated> //------------------------------------------------------------------------------ -namespace MPInstaler.Properties -{ - - +namespace MPInstaler.Properties { + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "8.0.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase - { - + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default - { - get - { + + public static Settings Default { + get { return defaultInstance; } } Modified: trunk/plugins/mpinstaler/MPInstaler/download_form.cs =================================================================== --- trunk/plugins/mpinstaler/MPInstaler/download_form.cs 2007-04-01 16:24:32 UTC (rev 273) +++ trunk/plugins/mpinstaler/MPInstaler/download_form.cs 2007-04-01 16:38:52 UTC (rev 274) @@ -15,6 +15,7 @@ string source = string.Empty; string dest = string.Empty; WebClient client = new WebClient(); + public int direction = 0; public download_form(string s, string d) { InitializeComponent(); @@ -22,6 +23,8 @@ dest = d; client.DownloadProgressChanged += new DownloadProgressChangedEventHandler(DownloadProgressCallback); client.DownloadFileCompleted += new AsyncCompletedEventHandler(DownloadEnd); + client.UploadProgressChanged+= new UploadProgressChangedEventHandler(UploadProgressCallback); + client.UploadFileCompleted += new UploadFileCompletedEventHandler(DownloadEnd); progressBar1.Minimum = 0; progressBar1.Maximum = 100; progressBar1.Value = 0; @@ -31,7 +34,12 @@ { if (!String.IsNullOrEmpty(source) && !String.IsNullOrEmpty(dest)) { - client.DownloadFileAsync(new System.Uri(source), dest); + if (direction == 0) + client.DownloadFileAsync(new System.Uri(source), dest); + else + { + client.UploadFileAsync(new System.Uri(source), dest); + } //client.DownloadFile(new System.Uri(source), dest); } } @@ -45,6 +53,11 @@ // e.ProgressPercentage); progressBar1.Value = e.ProgressPercentage; } + + private void UploadProgressCallback(object sender, UploadProgressChangedEventArgs e) + { + progressBar1.Value = e.ProgressPercentage; + } private void DownloadEnd(object sender, AsyncCompletedEventArgs e) { if (e.Error != null) @@ -57,6 +70,112 @@ this.Close(); } + public static bool FtpDownload(string source, string dest, string user, string pwd) + { + FtpWebRequest reqFTP; + try + { + //filePath = <<The full path where the file is to be created.>>, + //fileName = <<Name of the file to be created(Need not be the name of the file on FTP server).>> + FileStream outputStream = new FileStream(dest, FileMode.Create); + + reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(source)); + reqFTP.Method = WebRequestMethods.Ftp.DownloadFile; + reqFTP.UseBinary = true; + reqFTP.Credentials = new NetworkCredential(user, pwd); + FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse(); + Stream ftpStream = response.GetResponseStream(); + long cl = response.ContentLength; + int bufferSize = 2048; + int readCount; + byte[] buffer = new byte[bufferSize]; + + readCount = ftpStream.Read(buffer, 0, bufferSize); + while (readCount > 0) + { + outputStream.Write(buffer, 0, readCount); + readCount = ftpStream.Read(buffer, 0, bufferSize); + } + + ftpStream.Close(); + outputStream.Close(); + response.Close(); + if (response.StatusCode == FtpStatusCode.ClosingData) + return true; + else + return false; + } + catch (Exception ex) + { + MessageBox.Show(ex.Message); + return false; + } + } + + public static bool FtpUpload(string source, string dest, string user, string pwd) + { + try + { + if (!dest.EndsWith("/")) dest += "/"; + dest += Path.GetFileName(source); + FtpWebRequest request = (FtpWebRequest)WebRequest.Create(dest); + request.Method = WebRequestMethods.Ftp.UploadFile; + // This example assumes the FTP site uses anonymous logon. + request.Credentials = new NetworkCredential(user, pwd); + request.UseBinary = true; + // Copy the contents of the file to the request stream. + StreamReader sourceStream = new StreamReader(source); + byte[] fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd()); + sourceStream.Close(); + request.ContentLength = fileContents.Length; + + Stream requestStream = request.GetRequestStream(); + requestStream.Write(fileContents, 0, fileContents.Length); + requestStream.Close(); + + FtpWebResponse response = (FtpWebResponse)request.GetResponse(); + response.Close(); + if (response.StatusCode == FtpStatusCode.ClosingData) + return true; + else + return false; + } + catch(Exception ex) + { + MessageBox.Show("Error :"+ex.Message); + return false; + } + } + + public static bool FtpRenam(string source, string newFilename, string user, string pwd) + { + FtpWebRequest reqFTP; + try + { + MessageBox.Show(newFilename); + reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(source)); + reqFTP.Method = WebRequestMethods.Ftp.Rename; + reqFTP.RenameTo = newFilename; + reqFTP.UseBinary = true; + reqFTP.Credentials = new NetworkCredential(user , pwd); + FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse(); + Stream ftpStream = response.GetResponseStream(); + + ftpStream.Close(); + response.Close(); + if (response.StatusCode == FtpStatusCode.ClosingData) + return true; + else + return false; + } + catch (Exception ex) + { + MessageBox.Show(ex.Message); + return false; + } + } + + private void button1_Click(object sender, EventArgs e) { client.CancelAsync(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ze...@us...> - 2007-04-01 16:24:35
|
Revision: 273 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=273&view=rev Author: zebons Date: 2007-04-01 09:24:32 -0700 (Sun, 01 Apr 2007) Log Message: ----------- Section for ANT Updating Item in wrong xml file. Modified Paths: -------------- trunk/plugins/MyFilms/MesFilms.csproj trunk/plugins/MyFilms/MesFilmsDetail.cs trunk/plugins/MyFilms/MesFilmsSetup.cs Modified: trunk/plugins/MyFilms/MesFilms.csproj =================================================================== --- trunk/plugins/MyFilms/MesFilms.csproj 2007-04-01 16:15:16 UTC (rev 272) +++ trunk/plugins/MyFilms/MesFilms.csproj 2007-04-01 16:24:32 UTC (rev 273) @@ -29,9 +29,9 @@ <WarningLevel>4</WarningLevel> </PropertyGroup> <ItemGroup> - <Reference Include="Core, Version=1.0.2576.34540, Culture=neutral, processorArchitecture=x86"> + <Reference Include="Core, Version=1.0.2548.1824, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\mediaportal_plugin\MesFilms\Core_Svn\Core.dll</HintPath> + <HintPath>..\..\mediaportal_plugin\MesFilms\Core_Stable\Core.DLL</HintPath> </Reference> <Reference Include="Databases, Version=1.0.2548.1828, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> @@ -48,9 +48,9 @@ <Reference Include="System.Drawing" /> <Reference Include="System.Windows.Forms" /> <Reference Include="System.Xml" /> - <Reference Include="Utils, Version=1.0.2576.34538, Culture=neutral, processorArchitecture=x86"> + <Reference Include="Utils, Version=1.0.2548.1816, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\mediaportal_plugin\MesFilms\Core_Svn\Utils.dll</HintPath> + <HintPath>..\..\mediaportal_plugin\MesFilms\Core_Stable\Utils.DLL</HintPath> </Reference> </ItemGroup> <ItemGroup> Modified: trunk/plugins/MyFilms/MesFilmsDetail.cs =================================================================== --- trunk/plugins/MyFilms/MesFilmsDetail.cs 2007-04-01 16:15:16 UTC (rev 272) +++ trunk/plugins/MyFilms/MesFilmsDetail.cs 2007-04-01 16:24:32 UTC (rev 273) @@ -342,14 +342,14 @@ int ItemID; dlg.Reset(); - using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings("MediaPortal.xml")) + using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings("MyFilms.xml")) { - StrUpdItem1 = xmlreader.GetValueAsString("MesFilms", "AntUpdItem1", ""); - StrUpdText1 = xmlreader.GetValueAsString("MesFilms", "AntUpdText1", ""); - StrUpdDflT1 = xmlreader.GetValueAsString("MesFilms", "AntUpdDflT1", ""); - StrUpdItem2 = xmlreader.GetValueAsString("MesFilms", "AntUpdItem2", ""); - StrUpdText2 = xmlreader.GetValueAsString("MesFilms", "AntUpdText2", ""); - StrUpdDflT2 = xmlreader.GetValueAsString("MesFilms", "AntUpdDflT2", ""); + StrUpdItem1 = xmlreader.GetValueAsString(CurrentConfig, "AntUpdItem1", ""); + StrUpdText1 = xmlreader.GetValueAsString(CurrentConfig, "AntUpdText1", ""); + StrUpdDflT1 = xmlreader.GetValueAsString(CurrentConfig, "AntUpdDflT1", ""); + StrUpdItem2 = xmlreader.GetValueAsString(CurrentConfig, "AntUpdItem2", ""); + StrUpdText2 = xmlreader.GetValueAsString(CurrentConfig, "AntUpdText2", ""); + StrUpdDflT2 = xmlreader.GetValueAsString(CurrentConfig, "AntUpdDflT2", ""); } dlg.SetHeading(924); // menu dlg.Add(GUILocalizeStrings.Get(931));//rating @@ -358,7 +358,7 @@ boolfile = true; dlg.Add(GUILocalizeStrings.Get(863));//file } - if (!(StrUpdItem1 == "(none)")) + if (!(StrUpdItem1 == "(none)")) if (StrUpdText1.Length > 0) dlg.Add(StrUpdText1); //Specific Item1 label to update else Modified: trunk/plugins/MyFilms/MesFilmsSetup.cs =================================================================== --- trunk/plugins/MyFilms/MesFilmsSetup.cs 2007-04-01 16:15:16 UTC (rev 272) +++ trunk/plugins/MyFilms/MesFilmsSetup.cs 2007-04-01 16:24:32 UTC (rev 273) @@ -224,6 +224,22 @@ AntTSort.Focus(); return; } + if (AntUpdItem1.Text.Length == 0) + AntUpdItem1.Text = "(none)"; + if (!(AntUpdItem1.Text == "(none)") && (AntUpdText1.Text.Length == 0)) + { + System.Windows.Forms.MessageBox.Show("The Button Label is mandatory with the corresponding Update Field Item !", "Configuration", MessageBoxButtons.OK, MessageBoxIcon.Stop); + AntUpdText1.Focus(); + return; + } + if (AntUpdItem2.Text.Length == 0) + AntUpdItem2.Text = "(none)"; + if (!(AntUpdItem2.Text == "(none)") && (AntUpdText2.Text.Length == 0)) + { + System.Windows.Forms.MessageBox.Show("The Button Label is mandatory with the corresponding Update Field Item !", "Configuration", MessageBoxButtons.OK, MessageBoxIcon.Stop); + AntUpdText2.Focus(); + return; + } StrDfltSelect = ""; string wAntFilterSign; if (AntFilterSign1.Text == "#") @@ -250,19 +266,15 @@ else StrDfltSelect = "(" + StrDfltSelect + "(" + AntFilterItem2.Text + " " + wAntFilterSign + " '" + AntFilterText2.Text + "' or " + AntFilterItem2.Text + " is null)) AND "; Verify_Config(); - string currentLanguage = String.Empty; - using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "MediaPortal.xml"))) - { - currentLanguage = xmlreader.GetValueAsString("skin", "language", "English"); - } - string LanguageDirectory = Config.GetFolder(Config.Dir.Language); + //string currentLanguage = String.Empty; + //using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings(Config.GetFile(Config.Dir.Config, "MediaPortal.xml"))) + //{ + // currentLanguage = xmlreader.GetValueAsString("skin", "language", "English"); + //} + //string LanguageDirectory = Config.GetFolder(Config.Dir.Language); if (AntTitle2.Text.Length == 0) AntTitle2.Text = "(none)"; - if (AntUpdItem1.Text.Length == 0) - AntUpdItem1.Text = "(none)"; - if (AntUpdItem2.Text.Length == 0) - AntUpdItem2.Text = "(none)"; if (Config_Dflt.Checked) { MyFilms_xmlwriter.SetValue("MyFilms", "Default_Config", Config_Name.Text.ToString()); @@ -323,7 +335,7 @@ Config_Name.Items.Add(w_Config_Name); Config_Name.Text = w_Config_Name; // Config_Name.ResetText(); - Refresh_Items(false); +// Refresh_Items(false); } private void butPath_Click(object sender, EventArgs e) @@ -408,7 +420,6 @@ CatalogType.SelectedIndex = 0; StrDfltSelect = ""; mydivx.Clear(); - Config_Dflt.Checked = false; View_Dflt_Item.Items.Clear(); View_Dflt_Item.Items.Add("(none)"); View_Dflt_Item.Items.Add("Year"); @@ -416,6 +427,7 @@ View_Dflt_Item.Items.Add("Country"); if (!all) return; + Config_Dflt.Checked = false; MesFilmsCat.ResetText(); MesFilmsImg.ResetText(); AntStorage.ResetText(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |