public bool LoadXMLConfiguration()
{
- bool gotConfig = false;
- string xbmcDir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\XBMC\userdata\peripheral_data";
- string defaultDir = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
- string file = defaultDir + @"\usb_2548_1001.xml";
- if (File.Exists(xbmcDir + @"\usb_2548_1001.xml"))
- file = xbmcDir + @"\usb_2548_1001.xml";
+ var xbmcDir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\XBMC\userdata\peripheral_data";
+ return LoadXMLConfiguration(xbmcDir + string.Format(@"\usb_{0:X}_{1:X}.xml", Program.Instance.Controller.AdapterVendorId, Program.Instance.Controller.AdapterProductId)) ||
+ LoadXMLConfiguration(xbmcDir + @"\usb_2548_1001.xml") ||
+ LoadXMLConfiguration(xbmcDir + @"\usb_2548_1002.xml");
+ }
- if (File.Exists(file))
+ public bool LoadXMLConfiguration(string filename)
+ {
+ bool gotConfig = false;
+ if (File.Exists(filename))
{
- XmlTextReader reader = new XmlTextReader(file);
+ XmlTextReader reader = new XmlTextReader(filename);
while (reader.Read())
{
gotConfig = true;
{
Settings.Persist();
- string xbmcDir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\XBMC\userdata\peripheral_data";
- string defaultDir = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
+ var xbmcDir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\XBMC\userdata\peripheral_data";
+ if (!Directory.Exists(xbmcDir))
+ Directory.CreateDirectory(xbmcDir);
+
+ if (!Directory.Exists(xbmcDir))
+ {
+ // couldn't create directory
+ MessageBox.Show(string.Format(Resources.could_not_create_directory, xbmcDir), Resources.error,
+ MessageBoxButtons.OK, MessageBoxIcon.Error);
+ return;
+ }
SaveFileDialog dialog = new SaveFileDialog
- {
+ {
Title = Resources.store_settings_where,
- InitialDirectory = Directory.Exists(xbmcDir) ? xbmcDir : defaultDir,
- FileName = "usb_2548_1001.xml",
+ InitialDirectory = xbmcDir,
+ FileName = string.Format("usb_{0:X}_{1:X}.xml", Program.Instance.Controller.AdapterVendorId, Program.Instance.Controller.AdapterProductId),
Filter = Resources.xml_file_filter,
FilterIndex = 1
};