Added DSi Database support (dsidatabase.xml)

This commit is contained in:
givememystuffplease 2011-01-15 00:37:44 +00:00
parent 6e9d496d41
commit d83aee8874
7 changed files with 711 additions and 191 deletions

View File

@ -21,6 +21,9 @@ namespace NUS_Downloader
private string WwTag = "WW"; private string WwTag = "WW";
private string UpdateTag = "UPD"; private string UpdateTag = "UPD";
private string DSiSystemTag = "DSISYSTEM";
private string DSiWareTag = "DSIWARE";
private string[] VcConsoles = new string[11] { "C64", "GEN", "MSX", "N64", "NEO", "NES", private string[] VcConsoles = new string[11] { "C64", "GEN", "MSX", "N64", "NEO", "NES",
"SMS", "SNES", "TG16", "TGCD", "ARC" }; "SMS", "SNES", "TG16", "TGCD", "ARC" };
@ -619,5 +622,213 @@ namespace NUS_Downloader
return scriptCollection; return scriptCollection;
} }
public ToolStripMenuItem[] LoadDSiSystemTitles()
{
if (databaseString.Length < 1)
{
throw new Exception("Load the database into a memory stream first!");
}
XmlDocument xDoc = new XmlDocument();
xDoc.LoadXml(databaseString);
XmlNodeList DSiSystemTitlesXMLNodes = xDoc.GetElementsByTagName(DSiSystemTag);
ToolStripMenuItem[] dsiSystemTitleCollection = new ToolStripMenuItem[DSiSystemTitlesXMLNodes.Count];
for (int x = 0; x < DSiSystemTitlesXMLNodes.Count; x++)
{
ToolStripMenuItem XMLToolStripItem = new ToolStripMenuItem();
XmlAttributeCollection XMLAttributes = DSiSystemTitlesXMLNodes[x].Attributes;
string titleID = "";
string descname = "";
bool dangerous = false;
bool ticket = true;
XmlNodeList ChildrenOfTheNode = DSiSystemTitlesXMLNodes[x].ChildNodes;
for (int z = 0; z < ChildrenOfTheNode.Count; z++)
{
switch (ChildrenOfTheNode[z].Name)
{
case "name":
descname = ChildrenOfTheNode[z].InnerText;
break;
case "titleID":
titleID = ChildrenOfTheNode[z].InnerText;
break;
case "version":
string[] versions = ChildrenOfTheNode[z].InnerText.Split(',');
// Add to region things?
if (XMLToolStripItem.DropDownItems.Count > 0)
{
for (int b = 0; b < XMLToolStripItem.DropDownItems.Count; b++)
{
if (ChildrenOfTheNode[z].InnerText != "")
{
ToolStripMenuItem regitem =
(ToolStripMenuItem)XMLToolStripItem.DropDownItems[b];
regitem.DropDownItems.Add("Latest Version");
for (int y = 0; y < versions.Length; y++)
{
regitem.DropDownItems.Add("v" + versions[y]);
}
//regitem.DropDownItemClicked += new ToolStripItemClickedEventHandler(deepitem_clicked);
}
}
}
else
{
XMLToolStripItem.DropDownItems.Add("Latest Version");
if (ChildrenOfTheNode[z].InnerText != "")
{
for (int y = 0; y < versions.Length; y++)
{
XMLToolStripItem.DropDownItems.Add("v" + versions[y]);
}
}
}
break;
case "region":
string[] regions = ChildrenOfTheNode[z].InnerText.Split(',');
if (ChildrenOfTheNode[z].InnerText != "")
{
for (int y = 0; y < regions.Length; y++)
{
XMLToolStripItem.DropDownItems.Add(RegionFromIndex(Convert.ToInt32(regions[y])));
}
}
break;
default:
break;
case "ticket":
ticket = Convert.ToBoolean(ChildrenOfTheNode[z].InnerText);
break;
case "danger":
dangerous = true;
XMLToolStripItem.ToolTipText = ChildrenOfTheNode[z].InnerText;
break;
}
XMLToolStripItem.Image = SelectItemImage(ticket, dangerous);
if (titleID != "")
{
XMLToolStripItem.Text = String.Format("{0} - {1}", titleID, descname);
}
else
{ // Wait what?
XMLToolStripItem.Text = descname;
}
}
dsiSystemTitleCollection[x] = XMLToolStripItem;
}
return dsiSystemTitleCollection;
}
public ToolStripMenuItem[] LoadDsiWareTitles()
{
if (databaseString.Length < 1)
{
throw new Exception("Load the database into a memory stream first!");
}
XmlDocument xDoc = new XmlDocument();
xDoc.LoadXml(databaseString);
XmlNodeList DSiWareTitlesXMLNodes = xDoc.GetElementsByTagName(DSiWareTag);
ToolStripMenuItem[] DSiWareTitleCollection = new ToolStripMenuItem[DSiWareTitlesXMLNodes.Count];
for (int x = 0; x < DSiWareTitlesXMLNodes.Count; x++)
{
ToolStripMenuItem XMLToolStripItem = new ToolStripMenuItem();
XmlAttributeCollection XMLAttributes = DSiWareTitlesXMLNodes[x].Attributes;
string titleID = "";
string descname = "";
bool dangerous = false;
bool ticket = true;
XmlNodeList ChildrenOfTheNode = DSiWareTitlesXMLNodes[x].ChildNodes;
for (int z = 0; z < ChildrenOfTheNode.Count; z++)
{
switch (ChildrenOfTheNode[z].Name)
{
case "name":
descname = ChildrenOfTheNode[z].InnerText;
break;
case "titleID":
titleID = ChildrenOfTheNode[z].InnerText;
break;
case "version":
string[] versions = ChildrenOfTheNode[z].InnerText.Split(',');
// Add to region things?
if (XMLToolStripItem.DropDownItems.Count > 0)
{
for (int b = 0; b < XMLToolStripItem.DropDownItems.Count; b++)
{
if (ChildrenOfTheNode[z].InnerText != "")
{
ToolStripMenuItem regitem =
(ToolStripMenuItem)XMLToolStripItem.DropDownItems[b];
regitem.DropDownItems.Add("Latest Version");
for (int y = 0; y < versions.Length; y++)
{
regitem.DropDownItems.Add("v" + versions[y]);
}
//regitem.DropDownItemClicked += new ToolStripItemClickedEventHandler(deepitem_clicked);
}
}
}
else
{
XMLToolStripItem.DropDownItems.Add("Latest Version");
if (ChildrenOfTheNode[z].InnerText != "")
{
for (int y = 0; y < versions.Length; y++)
{
XMLToolStripItem.DropDownItems.Add("v" + versions[y]);
}
}
}
break;
case "region":
string[] regions = ChildrenOfTheNode[z].InnerText.Split(',');
if (ChildrenOfTheNode[z].InnerText != "")
{
for (int y = 0; y < regions.Length; y++)
{
XMLToolStripItem.DropDownItems.Add(RegionFromIndex(Convert.ToInt32(regions[y])));
}
}
break;
default:
break;
case "ticket":
ticket = Convert.ToBoolean(ChildrenOfTheNode[z].InnerText);
break;
case "danger":
dangerous = true;
XMLToolStripItem.ToolTipText = ChildrenOfTheNode[z].InnerText;
break;
}
XMLToolStripItem.Image = SelectItemImage(ticket, dangerous);
if (titleID != "")
{
XMLToolStripItem.Text = String.Format("{0} - {1}", titleID, descname);
}
else
{ // Wait what?
XMLToolStripItem.Text = descname;
}
}
DSiWareTitleCollection[x] = XMLToolStripItem;
}
return DSiWareTitleCollection;
}
} }
} }

View File

@ -44,23 +44,12 @@ namespace NUS_Downloader
this.label1 = new System.Windows.Forms.Label(); this.label1 = new System.Windows.Forms.Label();
this.wadnamebox = new System.Windows.Forms.TextBox(); this.wadnamebox = new System.Windows.Forms.TextBox();
this.databaseStrip = new System.Windows.Forms.ContextMenuStrip(this.components); this.databaseStrip = new System.Windows.Forms.ContextMenuStrip(this.components);
this.SystemMenuList = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripSeparator5 = new System.Windows.Forms.ToolStripSeparator();
this.IOSMenuList = new System.Windows.Forms.ToolStripMenuItem(); this.dSiWareToolStripMenu = new System.Windows.Forms.ToolStripMenuItem();
this.VCMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.C64MenuList = new System.Windows.Forms.ToolStripMenuItem();
this.GenesisMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.MSXMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.N64MenuList = new System.Windows.Forms.ToolStripMenuItem();
this.NeoGeoMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.NESMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.SegaMSMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.SNESMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.TurboGrafx16MenuList = new System.Windows.Forms.ToolStripMenuItem();
this.TurboGrafxCDMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.VCArcadeMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.WiiWareMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator(); this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.RegionCodesList = new System.Windows.Forms.ToolStripMenuItem(); this.RegionCodesList = new System.Windows.Forms.ToolStripMenuItem();
this.wiiRegionCodesMenu = new System.Windows.Forms.ToolStripMenuItem();
this.dsiRegionCodesMenu = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator4 = new System.Windows.Forms.ToolStripSeparator(); this.toolStripSeparator4 = new System.Windows.Forms.ToolStripSeparator();
this.extrasStrip = new System.Windows.Forms.ContextMenuStrip(this.components); this.extrasStrip = new System.Windows.Forms.ContextMenuStrip(this.components);
this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator(); this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
@ -98,10 +87,28 @@ namespace NUS_Downloader
this.packbox = new System.Windows.Forms.CheckBox(); this.packbox = new System.Windows.Forms.CheckBox();
this.decryptbox = new System.Windows.Forms.CheckBox(); this.decryptbox = new System.Windows.Forms.CheckBox();
this.localuse = new System.Windows.Forms.CheckBox(); this.localuse = new System.Windows.Forms.CheckBox();
this.SystemMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.systemFakeMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.systemFakeMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.IOSMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.iosFakeMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.iosFakeMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.VCMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.C64MenuList = new System.Windows.Forms.ToolStripMenuItem();
this.GenesisMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.MSXMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.N64MenuList = new System.Windows.Forms.ToolStripMenuItem();
this.NeoGeoMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.NESMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.SegaMSMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.SNESMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.TurboGrafx16MenuList = new System.Windows.Forms.ToolStripMenuItem();
this.TurboGrafxCDMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.VCArcadeMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.vcFakeMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.vcFakeMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.WiiWareMenuList = new System.Windows.Forms.ToolStripMenuItem();
this.wwFakeMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.wwFakeMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.dsiSystemToolStripMenu = new System.Windows.Forms.ToolStripMenuItem();
this.dsiFakeSystemToolStripMenu = new System.Windows.Forms.ToolStripMenuItem();
this.dSiWareFakeToolStripMenu = new System.Windows.Forms.ToolStripMenuItem();
this.updateDatabaseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.updateDatabaseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.loadInfoFromTMDToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.loadInfoFromTMDToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.proxySettingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.proxySettingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@ -204,118 +211,32 @@ namespace NUS_Downloader
this.vcFakeMenuItem, this.vcFakeMenuItem,
this.WiiWareMenuList, this.WiiWareMenuList,
this.wwFakeMenuItem, this.wwFakeMenuItem,
this.toolStripSeparator5,
this.dsiSystemToolStripMenu,
this.dsiFakeSystemToolStripMenu,
this.dSiWareToolStripMenu,
this.dSiWareFakeToolStripMenu,
this.toolStripSeparator1, this.toolStripSeparator1,
this.RegionCodesList, this.RegionCodesList,
this.toolStripSeparator4, this.toolStripSeparator4,
this.updateDatabaseToolStripMenuItem}); this.updateDatabaseToolStripMenuItem});
this.databaseStrip.Name = "databaseStrip"; this.databaseStrip.Name = "databaseStrip";
this.databaseStrip.ShowItemToolTips = false; this.databaseStrip.ShowItemToolTips = false;
this.databaseStrip.Size = new System.Drawing.Size(159, 236); this.databaseStrip.Size = new System.Drawing.Size(159, 352);
this.databaseStrip.Text = "Hidden"; this.databaseStrip.Text = "Hidden";
this.databaseStrip.Closed += new System.Windows.Forms.ToolStripDropDownClosedEventHandler(this.anyStrip_Closed); this.databaseStrip.Closed += new System.Windows.Forms.ToolStripDropDownClosedEventHandler(this.anyStrip_Closed);
// //
// SystemMenuList // toolStripSeparator5
// //
this.SystemMenuList.AutoSize = false; this.toolStripSeparator5.Name = "toolStripSeparator5";
this.SystemMenuList.Name = "SystemMenuList"; this.toolStripSeparator5.Size = new System.Drawing.Size(155, 6);
this.SystemMenuList.Size = new System.Drawing.Size(158, 22);
this.SystemMenuList.Text = "System";
// //
// IOSMenuList // dSiWareToolStripMenu
// //
this.IOSMenuList.Name = "IOSMenuList"; this.dSiWareToolStripMenu.Image = global::NUS_Downloader.Properties.Resources.dsi16x16;
this.IOSMenuList.Size = new System.Drawing.Size(158, 22); this.dSiWareToolStripMenu.Name = "dSiWareToolStripMenu";
this.IOSMenuList.Text = "IOS"; this.dSiWareToolStripMenu.Size = new System.Drawing.Size(158, 22);
// this.dSiWareToolStripMenu.Text = "DSiWare";
// VCMenuList
//
this.VCMenuList.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.C64MenuList,
this.GenesisMenuList,
this.MSXMenuList,
this.N64MenuList,
this.NeoGeoMenuList,
this.NESMenuList,
this.SegaMSMenuList,
this.SNESMenuList,
this.TurboGrafx16MenuList,
this.TurboGrafxCDMenuList,
this.VCArcadeMenuList});
this.VCMenuList.Name = "VCMenuList";
this.VCMenuList.Size = new System.Drawing.Size(158, 22);
this.VCMenuList.Text = "Virtual Console";
//
// C64MenuList
//
this.C64MenuList.Name = "C64MenuList";
this.C64MenuList.Size = new System.Drawing.Size(182, 22);
this.C64MenuList.Text = "Commodore 64";
//
// GenesisMenuList
//
this.GenesisMenuList.Name = "GenesisMenuList";
this.GenesisMenuList.Size = new System.Drawing.Size(182, 22);
this.GenesisMenuList.Text = "Mega Drive/Genesis";
//
// MSXMenuList
//
this.MSXMenuList.Name = "MSXMenuList";
this.MSXMenuList.Size = new System.Drawing.Size(182, 22);
this.MSXMenuList.Text = "MSX";
//
// N64MenuList
//
this.N64MenuList.Name = "N64MenuList";
this.N64MenuList.Size = new System.Drawing.Size(182, 22);
this.N64MenuList.Text = "Nintendo 64";
//
// NeoGeoMenuList
//
this.NeoGeoMenuList.Name = "NeoGeoMenuList";
this.NeoGeoMenuList.Size = new System.Drawing.Size(182, 22);
this.NeoGeoMenuList.Text = "NeoGeo";
//
// NESMenuList
//
this.NESMenuList.Name = "NESMenuList";
this.NESMenuList.Size = new System.Drawing.Size(182, 22);
this.NESMenuList.Text = "NES";
//
// SegaMSMenuList
//
this.SegaMSMenuList.Name = "SegaMSMenuList";
this.SegaMSMenuList.Size = new System.Drawing.Size(182, 22);
this.SegaMSMenuList.Text = "Sega Master System";
//
// SNESMenuList
//
this.SNESMenuList.Name = "SNESMenuList";
this.SNESMenuList.Size = new System.Drawing.Size(182, 22);
this.SNESMenuList.Text = "SNES";
//
// TurboGrafx16MenuList
//
this.TurboGrafx16MenuList.Name = "TurboGrafx16MenuList";
this.TurboGrafx16MenuList.Size = new System.Drawing.Size(182, 22);
this.TurboGrafx16MenuList.Text = "TruboGrafx-16";
//
// TurboGrafxCDMenuList
//
this.TurboGrafxCDMenuList.Name = "TurboGrafxCDMenuList";
this.TurboGrafxCDMenuList.Size = new System.Drawing.Size(182, 22);
this.TurboGrafxCDMenuList.Text = "TurboGrafx-CD";
//
// VCArcadeMenuList
//
this.VCArcadeMenuList.Name = "VCArcadeMenuList";
this.VCArcadeMenuList.Size = new System.Drawing.Size(182, 22);
this.VCArcadeMenuList.Text = "Virtual Console Arcade";
//
// WiiWareMenuList
//
this.WiiWareMenuList.Name = "WiiWareMenuList";
this.WiiWareMenuList.Size = new System.Drawing.Size(158, 22);
this.WiiWareMenuList.Text = "WiiWare";
// //
// toolStripSeparator1 // toolStripSeparator1
// //
@ -324,10 +245,26 @@ namespace NUS_Downloader
// //
// RegionCodesList // RegionCodesList
// //
this.RegionCodesList.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.wiiRegionCodesMenu,
this.dsiRegionCodesMenu});
this.RegionCodesList.Name = "RegionCodesList"; this.RegionCodesList.Name = "RegionCodesList";
this.RegionCodesList.Size = new System.Drawing.Size(158, 22); this.RegionCodesList.Size = new System.Drawing.Size(158, 22);
this.RegionCodesList.Text = "Region Codes"; this.RegionCodesList.Text = "Region Codes";
this.RegionCodesList.DropDownItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.RegionCodesList_DropDownItemClicked); //
// wiiRegionCodesMenu
//
this.wiiRegionCodesMenu.Name = "wiiRegionCodesMenu";
this.wiiRegionCodesMenu.Size = new System.Drawing.Size(89, 22);
this.wiiRegionCodesMenu.Text = "Wii";
this.wiiRegionCodesMenu.DropDownItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.wiiRegionCodesMenu_DropDownItemClicked);
//
// dsiRegionCodesMenu
//
this.dsiRegionCodesMenu.Name = "dsiRegionCodesMenu";
this.dsiRegionCodesMenu.Size = new System.Drawing.Size(89, 22);
this.dsiRegionCodesMenu.Text = "DSi";
this.dsiRegionCodesMenu.DropDownItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.dsiRegionCodesMenu_DropDownItemClicked);
// //
// toolStripSeparator4 // toolStripSeparator4
// //
@ -348,7 +285,7 @@ namespace NUS_Downloader
this.donateToolStripMenuItem, this.donateToolStripMenuItem,
this.aboutNUSDToolStripMenuItem}); this.aboutNUSDToolStripMenuItem});
this.extrasStrip.Name = "extrasStrip"; this.extrasStrip.Name = "extrasStrip";
this.extrasStrip.Size = new System.Drawing.Size(178, 170); this.extrasStrip.Size = new System.Drawing.Size(178, 148);
this.extrasStrip.Text = "Hidden"; this.extrasStrip.Text = "Hidden";
this.extrasStrip.Closed += new System.Windows.Forms.ToolStripDropDownClosedEventHandler(this.anyStrip_Closed); this.extrasStrip.Closed += new System.Windows.Forms.ToolStripDropDownClosedEventHandler(this.anyStrip_Closed);
this.extrasStrip.Opening += new System.ComponentModel.CancelEventHandler(this.extrasStrip_Opening); this.extrasStrip.Opening += new System.ComponentModel.CancelEventHandler(this.extrasStrip_Opening);
@ -767,6 +704,14 @@ namespace NUS_Downloader
this.localuse.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageBeforeText; this.localuse.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageBeforeText;
this.localuse.UseVisualStyleBackColor = true; this.localuse.UseVisualStyleBackColor = true;
// //
// SystemMenuList
//
this.SystemMenuList.AutoSize = false;
this.SystemMenuList.Image = global::NUS_Downloader.Properties.Resources.wii16x16_copy;
this.SystemMenuList.Name = "SystemMenuList";
this.SystemMenuList.Size = new System.Drawing.Size(158, 22);
this.SystemMenuList.Text = "System";
//
// systemFakeMenuItem // systemFakeMenuItem
// //
this.systemFakeMenuItem.Image = global::NUS_Downloader.Properties.Resources.arrow_ticker; this.systemFakeMenuItem.Image = global::NUS_Downloader.Properties.Resources.arrow_ticker;
@ -775,6 +720,13 @@ namespace NUS_Downloader
this.systemFakeMenuItem.Text = "System"; this.systemFakeMenuItem.Text = "System";
this.systemFakeMenuItem.Visible = false; this.systemFakeMenuItem.Visible = false;
// //
// IOSMenuList
//
this.IOSMenuList.Image = global::NUS_Downloader.Properties.Resources.wii16x16_copy;
this.IOSMenuList.Name = "IOSMenuList";
this.IOSMenuList.Size = new System.Drawing.Size(158, 22);
this.IOSMenuList.Text = "IOS";
//
// iosFakeMenuItem // iosFakeMenuItem
// //
this.iosFakeMenuItem.Image = global::NUS_Downloader.Properties.Resources.arrow_ticker; this.iosFakeMenuItem.Image = global::NUS_Downloader.Properties.Resources.arrow_ticker;
@ -783,6 +735,91 @@ namespace NUS_Downloader
this.iosFakeMenuItem.Text = "IOS"; this.iosFakeMenuItem.Text = "IOS";
this.iosFakeMenuItem.Visible = false; this.iosFakeMenuItem.Visible = false;
// //
// VCMenuList
//
this.VCMenuList.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.C64MenuList,
this.GenesisMenuList,
this.MSXMenuList,
this.N64MenuList,
this.NeoGeoMenuList,
this.NESMenuList,
this.SegaMSMenuList,
this.SNESMenuList,
this.TurboGrafx16MenuList,
this.TurboGrafxCDMenuList,
this.VCArcadeMenuList});
this.VCMenuList.Image = global::NUS_Downloader.Properties.Resources.wii16x16_copy;
this.VCMenuList.Name = "VCMenuList";
this.VCMenuList.Size = new System.Drawing.Size(158, 22);
this.VCMenuList.Text = "Virtual Console";
//
// C64MenuList
//
this.C64MenuList.Name = "C64MenuList";
this.C64MenuList.Size = new System.Drawing.Size(182, 22);
this.C64MenuList.Text = "Commodore 64";
//
// GenesisMenuList
//
this.GenesisMenuList.Name = "GenesisMenuList";
this.GenesisMenuList.Size = new System.Drawing.Size(182, 22);
this.GenesisMenuList.Text = "Mega Drive/Genesis";
//
// MSXMenuList
//
this.MSXMenuList.Name = "MSXMenuList";
this.MSXMenuList.Size = new System.Drawing.Size(182, 22);
this.MSXMenuList.Text = "MSX";
//
// N64MenuList
//
this.N64MenuList.Name = "N64MenuList";
this.N64MenuList.Size = new System.Drawing.Size(182, 22);
this.N64MenuList.Text = "Nintendo 64";
//
// NeoGeoMenuList
//
this.NeoGeoMenuList.Name = "NeoGeoMenuList";
this.NeoGeoMenuList.Size = new System.Drawing.Size(182, 22);
this.NeoGeoMenuList.Text = "NeoGeo";
//
// NESMenuList
//
this.NESMenuList.Name = "NESMenuList";
this.NESMenuList.Size = new System.Drawing.Size(182, 22);
this.NESMenuList.Text = "NES";
//
// SegaMSMenuList
//
this.SegaMSMenuList.Name = "SegaMSMenuList";
this.SegaMSMenuList.Size = new System.Drawing.Size(182, 22);
this.SegaMSMenuList.Text = "Sega Master System";
//
// SNESMenuList
//
this.SNESMenuList.Name = "SNESMenuList";
this.SNESMenuList.Size = new System.Drawing.Size(182, 22);
this.SNESMenuList.Text = "SNES";
//
// TurboGrafx16MenuList
//
this.TurboGrafx16MenuList.Name = "TurboGrafx16MenuList";
this.TurboGrafx16MenuList.Size = new System.Drawing.Size(182, 22);
this.TurboGrafx16MenuList.Text = "TruboGrafx-16";
//
// TurboGrafxCDMenuList
//
this.TurboGrafxCDMenuList.Name = "TurboGrafxCDMenuList";
this.TurboGrafxCDMenuList.Size = new System.Drawing.Size(182, 22);
this.TurboGrafxCDMenuList.Text = "TurboGrafx-CD";
//
// VCArcadeMenuList
//
this.VCArcadeMenuList.Name = "VCArcadeMenuList";
this.VCArcadeMenuList.Size = new System.Drawing.Size(182, 22);
this.VCArcadeMenuList.Text = "Virtual Console Arcade";
//
// vcFakeMenuItem // vcFakeMenuItem
// //
this.vcFakeMenuItem.Image = global::NUS_Downloader.Properties.Resources.arrow_ticker; this.vcFakeMenuItem.Image = global::NUS_Downloader.Properties.Resources.arrow_ticker;
@ -791,6 +828,13 @@ namespace NUS_Downloader
this.vcFakeMenuItem.Text = "Virtual Console"; this.vcFakeMenuItem.Text = "Virtual Console";
this.vcFakeMenuItem.Visible = false; this.vcFakeMenuItem.Visible = false;
// //
// WiiWareMenuList
//
this.WiiWareMenuList.Image = global::NUS_Downloader.Properties.Resources.wii16x16_copy;
this.WiiWareMenuList.Name = "WiiWareMenuList";
this.WiiWareMenuList.Size = new System.Drawing.Size(158, 22);
this.WiiWareMenuList.Text = "WiiWare";
//
// wwFakeMenuItem // wwFakeMenuItem
// //
this.wwFakeMenuItem.Image = global::NUS_Downloader.Properties.Resources.arrow_ticker; this.wwFakeMenuItem.Image = global::NUS_Downloader.Properties.Resources.arrow_ticker;
@ -799,6 +843,29 @@ namespace NUS_Downloader
this.wwFakeMenuItem.Text = "WiiWare"; this.wwFakeMenuItem.Text = "WiiWare";
this.wwFakeMenuItem.Visible = false; this.wwFakeMenuItem.Visible = false;
// //
// dsiSystemToolStripMenu
//
this.dsiSystemToolStripMenu.Image = global::NUS_Downloader.Properties.Resources.dsi16x16;
this.dsiSystemToolStripMenu.Name = "dsiSystemToolStripMenu";
this.dsiSystemToolStripMenu.Size = new System.Drawing.Size(158, 22);
this.dsiSystemToolStripMenu.Text = "System";
//
// dsiFakeSystemToolStripMenu
//
this.dsiFakeSystemToolStripMenu.Image = global::NUS_Downloader.Properties.Resources.arrow_ticker;
this.dsiFakeSystemToolStripMenu.Name = "dsiFakeSystemToolStripMenu";
this.dsiFakeSystemToolStripMenu.Size = new System.Drawing.Size(158, 22);
this.dsiFakeSystemToolStripMenu.Text = "System";
this.dsiFakeSystemToolStripMenu.Visible = false;
//
// dSiWareFakeToolStripMenu
//
this.dSiWareFakeToolStripMenu.Image = global::NUS_Downloader.Properties.Resources.arrow_ticker;
this.dSiWareFakeToolStripMenu.Name = "dSiWareFakeToolStripMenu";
this.dSiWareFakeToolStripMenu.Size = new System.Drawing.Size(158, 22);
this.dSiWareFakeToolStripMenu.Text = "DSiWare";
this.dSiWareFakeToolStripMenu.Visible = false;
//
// updateDatabaseToolStripMenuItem // updateDatabaseToolStripMenuItem
// //
this.updateDatabaseToolStripMenuItem.Image = global::NUS_Downloader.Properties.Resources.database_save; this.updateDatabaseToolStripMenuItem.Image = global::NUS_Downloader.Properties.Resources.database_save;
@ -1111,6 +1178,13 @@ namespace NUS_Downloader
private System.Windows.Forms.ToolStripMenuItem databaseToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem databaseToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem localTicketInventoryToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem localTicketInventoryToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem donateToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem donateToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator5;
private System.Windows.Forms.ToolStripMenuItem dsiSystemToolStripMenu;
private System.Windows.Forms.ToolStripMenuItem dsiFakeSystemToolStripMenu;
private System.Windows.Forms.ToolStripMenuItem dSiWareToolStripMenu;
private System.Windows.Forms.ToolStripMenuItem dSiWareFakeToolStripMenu;
private System.Windows.Forms.ToolStripMenuItem wiiRegionCodesMenu;
private System.Windows.Forms.ToolStripMenuItem dsiRegionCodesMenu;
} }
} }

View File

@ -50,8 +50,6 @@ namespace NUS_Downloader
private string version = "v2.0"; private string version = "v2.0";
#endif #endif
private static bool dsidecrypt = false;
// Cross-thread Windows Formsing // Cross-thread Windows Formsing
private delegate void AddToolStripItemToStripCallback( private delegate void AddToolStripItemToStripCallback(
ToolStripMenuItem menulist, ToolStripMenuItem[] additionitems); ToolStripMenuItem menulist, ToolStripMenuItem[] additionitems);
@ -73,8 +71,9 @@ namespace NUS_Downloader
private string proxy_usr; private string proxy_usr;
private string proxy_pwd; private string proxy_pwd;
// Database thread // Database threads
private BackgroundWorker fds; private BackgroundWorker databaseWorker;
private BackgroundWorker dsiDatabaseWorker;
// Scripts Thread // Scripts Thread
private BackgroundWorker scriptsWorker; private BackgroundWorker scriptsWorker;
@ -124,27 +123,7 @@ namespace NUS_Downloader
else else
{ {
BootChecks(); BootChecks();
} }
/* Fix proxy entry.
if (!(String.IsNullOrEmpty(proxy_url)))
while (String.IsNullOrEmpty(proxy_pwd))
Thread.Sleep(1000);
if ((args.Length == 1) && (args[0] == "folderfix"))
{
// Organizing folders from past NUSD releases...
BackgroundWorker folder_fixer = new BackgroundWorker();
folder_fixer.DoWork += new DoWorkEventHandler(ReorganizePreviousFolderStructure);
folder_fixer.RunWorkerCompleted += new RunWorkerCompletedEventHandler(ReorganizePreviousFolderStructure_Completed);
Debug.WriteLine("folderfix active");
WriteStatus("Organizing your old folder structure...");
folder_fixer.RunWorkerAsync();
}*/
} }
private void RunCommandMode(string[] args) private void RunCommandMode(string[] args)
@ -249,12 +228,19 @@ namespace NUS_Downloader
WriteStatus("\r\n"); WriteStatus("\r\n");
} }
// Database BGLoader // Database BackgroundWorker
this.fds = new BackgroundWorker(); this.databaseWorker = new BackgroundWorker();
this.fds.DoWork += new DoWorkEventHandler(DoAllDatabaseyStuff); this.databaseWorker.DoWork += new DoWorkEventHandler(DoAllDatabaseyStuff);
this.fds.RunWorkerCompleted += new RunWorkerCompletedEventHandler(DoAllDatabaseyStuff_Completed); this.databaseWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(DoAllDatabaseyStuff_Completed);
this.fds.ProgressChanged += new ProgressChangedEventHandler(DoAllDatabaseyStuff_ProgressChanged); this.databaseWorker.ProgressChanged += new ProgressChangedEventHandler(DoAllDatabaseyStuff_ProgressChanged);
this.fds.WorkerReportsProgress = true; this.databaseWorker.WorkerReportsProgress = true;
// DSi Database BackgroundWorker
this.dsiDatabaseWorker = new BackgroundWorker();
this.dsiDatabaseWorker.DoWork += new DoWorkEventHandler(DSiDatabaseWork);
this.dsiDatabaseWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(DSiDatabaseWork_Completed);
this.dsiDatabaseWorker.ProgressChanged += new ProgressChangedEventHandler(DSiDatabaseWork_ProgressChanged);
this.dsiDatabaseWorker.WorkerReportsProgress = true;
// Scripts BGLoader // Scripts BGLoader
this.scriptsWorker = new BackgroundWorker(); this.scriptsWorker = new BackgroundWorker();
@ -289,20 +275,17 @@ namespace NUS_Downloader
return; return;
} }
// Check for DSi common key bin file... /* Check for DSi common key bin file...
if (NUSDFileExists("dsikey.bin") == true) if (NUSDFileExists("dsikey.bin") == true)
{ {
WriteStatus("DSi Common Key detected."); WriteStatus("DSi Common Key detected.");
dsidecrypt = true; dsidecrypt = true;
} }*/
/*
// Check for database.xml // Check for database.xml
if (NUSDFileExists("database.xml") == false) if (NUSDFileExists("database.xml") == false)
{ {
WriteStatus("Database.xml not found. Title database not usable!"); WriteStatus("Database.xml not found. Title database not usable!");
/*databaseButton.Click -= new System.EventHandler(this.button4_Click);
databaseButton.Click += new System.EventHandler(this.updateDatabaseToolStripMenuItem_Click);
databaseButton.Text = "Download DB"; */
DatabaseEnabled(false); DatabaseEnabled(false);
updateDatabaseToolStripMenuItem.Enabled = true; updateDatabaseToolStripMenuItem.Enabled = true;
updateDatabaseToolStripMenuItem.Visible = true; updateDatabaseToolStripMenuItem.Visible = true;
@ -324,6 +307,59 @@ namespace NUS_Downloader
this.fds.RunWorkerAsync(); this.fds.RunWorkerAsync();
} }
// Check for database.xml
if (NUSDFileExists("dsidatabase.xml") == false)
{
WriteStatus("DSiDatabase.xml not found. DSi database not usable!");
DatabaseEnabled(false);
updateDatabaseToolStripMenuItem.Enabled = true;
updateDatabaseToolStripMenuItem.Visible = true;
updateDatabaseToolStripMenuItem.Text = "Download Database";
}
else
{
Database db = new Database();
db.LoadDatabaseToStream(Path.Combine(CURRENT_DIR, "database.xml"));
string version = db.GetDatabaseVersion();
WriteStatus("Database.xml detected.");
WriteStatus(" - Version: " + version);
updateDatabaseToolStripMenuItem.Text = "Update Database";
//databaseButton.Enabled = false;
//databaseButton.Text = "DB Loading";
databaseButton.Text = " [ ]";
databaseButton.Image = Properties.Resources.arrow_ticker;
// Load it up...
this.fds.RunWorkerAsync();
}*/
if (NUSDFileExists("database.xml") == true)
{
Database db = new Database();
db.LoadDatabaseToStream(Path.Combine(CURRENT_DIR, "database.xml"));
string version = db.GetDatabaseVersion();
WriteStatus("Database.xml detected.");
WriteStatus(" - Version: " + version);
updateDatabaseToolStripMenuItem.Text = "Update Database";
databaseButton.Text = " [ ]";
databaseButton.Image = Properties.Resources.arrow_ticker;
// Load it up...
this.databaseWorker.RunWorkerAsync();
}
if (NUSDFileExists("dsidatabase.xml") == true)
{
Database db = new Database();
db.LoadDatabaseToStream(Path.Combine(CURRENT_DIR, "dsidatabase.xml"));
string version = db.GetDatabaseVersion();
WriteStatus("DSiDatabase.xml detected.");
WriteStatus(" - Version: " + version);
updateDatabaseToolStripMenuItem.Text = "Update Database";
databaseButton.Text = " [ ]";
databaseButton.Image = Properties.Resources.arrow_ticker;
// Load it up...
this.dsiDatabaseWorker.RunWorkerAsync();
}
// Load scripts (local) // Load scripts (local)
RunScriptOrganizer(); RunScriptOrganizer();
@ -818,14 +854,6 @@ namespace NUS_Downloader
// Cannot Pack WADs // Cannot Pack WADs
packbox.Checked = false; packbox.Checked = false;
packbox.Enabled = false; packbox.Enabled = false;
// Can decrypt if dsikey exists...
if (dsidecrypt == false)
{
decryptbox.Checked = false;
decryptbox.Enabled = false;
}
wadnamebox.Enabled = false; wadnamebox.Enabled = false;
wadnamebox.Text = ""; wadnamebox.Text = "";
} }
@ -969,7 +997,10 @@ namespace NUS_Downloader
C64MenuList, NeoGeoMenuList, NESMenuList, C64MenuList, NeoGeoMenuList, NESMenuList,
SNESMenuList, N64MenuList, TurboGrafx16MenuList, SNESMenuList, N64MenuList, TurboGrafx16MenuList,
TurboGrafxCDMenuList, MSXMenuList, SegaMSMenuList, TurboGrafxCDMenuList, MSXMenuList, SegaMSMenuList,
GenesisMenuList, VCArcadeMenuList GenesisMenuList, VCArcadeMenuList,
// DSi Entries
dsiSystemToolStripMenu, dSiWareToolStripMenu
}; };
foreach (System.Windows.Forms.ToolStripMenuItem tsmiclear in thingstoclear) foreach (System.Windows.Forms.ToolStripMenuItem tsmiclear in thingstoclear)
@ -1100,6 +1131,74 @@ namespace NUS_Downloader
worker.ReportProgress(100); worker.ReportProgress(100);
} }
/// <summary>
/// Fills the database strip with the local database.xml file.
/// </summary>
private void FillDSiDatabaseStrip(BackgroundWorker worker)
{
// Set fake items visible and real ones not. Only way to stop buggy enabled stuff.
SetPropertyThreadSafe(dsiSystemToolStripMenu, false, "Visible");
SetPropertyThreadSafe(dSiWareToolStripMenu, false, "Visible");
SetPropertyThreadSafe(dsiFakeSystemToolStripMenu, true, "Visible");
SetPropertyThreadSafe(dSiWareFakeToolStripMenu, true, "Visible");
Database databaseObj = new Database();
databaseObj.LoadDatabaseToStream(Path.Combine(CURRENT_DIR, "dsidatabase.xml"));
ToolStripMenuItem[] systemItems = databaseObj.LoadDSiSystemTitles();
for (int a = 0; a < systemItems.Length; a++)
{
systemItems[a].DropDownItemClicked += new ToolStripItemClickedEventHandler(DatabaseItem_Clicked);
for (int b = 0; b < systemItems[a].DropDownItems.Count; b++)
{
ToolStripMenuItem syslowerentry = (ToolStripMenuItem)systemItems[a].DropDownItems[b];
if (syslowerentry.DropDownItems.Count > 0)
{
syslowerentry.DropDownItemClicked += new ToolStripItemClickedEventHandler(DatabaseItem_Clicked);
}
}
}
Array.Sort(systemItems, delegate(ToolStripMenuItem tsmi1, ToolStripMenuItem tsmi2)
{
return tsmi1.Text
.Substring(18, tsmi1.Text.Length - 19).CompareTo(tsmi2.Text.Substring(18, tsmi2.Text.Length - 19));
});
AddToolStripItemToStrip(dsiSystemToolStripMenu, systemItems);
SetPropertyThreadSafe(dsiFakeSystemToolStripMenu, false, "Visible");
SetPropertyThreadSafe(dsiSystemToolStripMenu, true, "Visible");
Debug.WriteLine("Database: DSiSysTitles added");
worker.ReportProgress(50);
ToolStripMenuItem[] dsiWareItems = databaseObj.LoadDsiWareTitles();
for (int a = 0; a < dsiWareItems.Length; a++)
{
dsiWareItems[a].DropDownItemClicked += new ToolStripItemClickedEventHandler(DatabaseItem_Clicked);
for (int b = 0; b < dsiWareItems[a].DropDownItems.Count; b++)
{
ToolStripMenuItem lowerentry = (ToolStripMenuItem)dsiWareItems[a].DropDownItems[b];
if (lowerentry.DropDownItems.Count > 0)
{
lowerentry.DropDownItemClicked += new ToolStripItemClickedEventHandler(DatabaseItem_Clicked);
}
}
}
Array.Sort(dsiWareItems, delegate(ToolStripMenuItem tsmi1, ToolStripMenuItem tsmi2)
{
return tsmi1.Text
.Substring(18, tsmi1.Text.Length - 19).CompareTo(tsmi2.Text.Substring(18, tsmi2.Text.Length - 19));
});
AddToolStripItemToStrip(dSiWareToolStripMenu, dsiWareItems);
SetPropertyThreadSafe(dSiWareFakeToolStripMenu, false, "Visible");
SetPropertyThreadSafe(dSiWareToolStripMenu, true, "Visible");
Debug.WriteLine("Database: DSiWareTitles added");
worker.ReportProgress(100);
}
/// <summary> /// <summary>
/// Adds the tool strip item to strip. /// Adds the tool strip item to strip.
/// </summary> /// </summary>
@ -1228,6 +1327,13 @@ namespace NUS_Downloader
Regex RegionEntry = new Regex(@"[0-9A-Z][0-9A-Z] \(.*\)"); Regex RegionEntry = new Regex(@"[0-9A-Z][0-9A-Z] \(.*\)");
Regex VersionEntry = new Regex(@"v[0-9]*.*"); Regex VersionEntry = new Regex(@"v[0-9]*.*");
object[] wiiMenuLists = new object[] {
SystemMenuList, IOSMenuList, WiiWareMenuList, VCMenuList
};
object[] dsiMenuLists = new object[] {
dsiSystemToolStripMenu, dSiWareToolStripMenu
};
// This item is a Titleid - Descname entry // This item is a Titleid - Descname entry
if (IdandTitle.IsMatch(e.ClickedItem.Text)) if (IdandTitle.IsMatch(e.ClickedItem.Text))
{ {
@ -1247,6 +1353,18 @@ namespace NUS_Downloader
// Check for danger item // Check for danger item
if ((e.ClickedItem.Image) == (Database.redgreen) || (e.ClickedItem.Image) == (Database.redorange)) if ((e.ClickedItem.Image) == (Database.redgreen) || (e.ClickedItem.Image) == (Database.redorange))
WriteStatus("\n" + e.ClickedItem.ToolTipText); WriteStatus("\n" + e.ClickedItem.ToolTipText);
// Set server selection
foreach (System.Windows.Forms.ToolStripMenuItem tsmi in wiiMenuLists)
{
if (tsmi.Name == e.ClickedItem.OwnerItem.Name)
consoleCBox.SelectedIndex = 0;
}
foreach (System.Windows.Forms.ToolStripMenuItem tsmi in dsiMenuLists)
{
if (tsmi.Name == e.ClickedItem.OwnerItem.Name)
consoleCBox.SelectedIndex = 1;
}
} }
// Region ClickedItem // Region ClickedItem
@ -1271,6 +1389,18 @@ namespace NUS_Downloader
// Check for danger item // Check for danger item
if ((e.ClickedItem.OwnerItem.Image) == (Database.redgreen) || (e.ClickedItem.OwnerItem.Image) == (Database.redorange)) if ((e.ClickedItem.OwnerItem.Image) == (Database.redgreen) || (e.ClickedItem.OwnerItem.Image) == (Database.redorange))
WriteStatus("\n" + e.ClickedItem.OwnerItem.ToolTipText); WriteStatus("\n" + e.ClickedItem.OwnerItem.ToolTipText);
// Set server selection
foreach (System.Windows.Forms.ToolStripMenuItem tsmi in wiiMenuLists)
{
if (tsmi.Name == e.ClickedItem.OwnerItem.OwnerItem.Name)
consoleCBox.SelectedIndex = 0;
}
foreach (System.Windows.Forms.ToolStripMenuItem tsmi in dsiMenuLists)
{
if (tsmi.Name == e.ClickedItem.OwnerItem.OwnerItem.Name)
consoleCBox.SelectedIndex = 1;
}
} }
// Version ClickedItem // Version ClickedItem
@ -1315,6 +1445,18 @@ namespace NUS_Downloader
// Check for danger item // Check for danger item
if ((e.ClickedItem.OwnerItem.OwnerItem.Image) == (Database.redgreen) || (e.ClickedItem.OwnerItem.OwnerItem.Image) == (Database.redorange)) if ((e.ClickedItem.OwnerItem.OwnerItem.Image) == (Database.redgreen) || (e.ClickedItem.OwnerItem.OwnerItem.Image) == (Database.redorange))
WriteStatus("\n" + e.ClickedItem.OwnerItem.OwnerItem.ToolTipText); WriteStatus("\n" + e.ClickedItem.OwnerItem.OwnerItem.ToolTipText);
// Set server selection
foreach (System.Windows.Forms.ToolStripMenuItem tsmi in wiiMenuLists)
{
if (tsmi.Name == e.ClickedItem.OwnerItem.OwnerItem.OwnerItem.Name)
consoleCBox.SelectedIndex = 0;
}
foreach (System.Windows.Forms.ToolStripMenuItem tsmi in dsiMenuLists)
{
if (tsmi.Name == e.ClickedItem.OwnerItem.OwnerItem.OwnerItem.Name)
consoleCBox.SelectedIndex = 1;
}
} }
else else
{ {
@ -1328,6 +1470,18 @@ namespace NUS_Downloader
// Check for danger item // Check for danger item
if ((e.ClickedItem.OwnerItem.Image) == (Database.redgreen) || (e.ClickedItem.OwnerItem.Image) == (Database.redorange)) if ((e.ClickedItem.OwnerItem.Image) == (Database.redgreen) || (e.ClickedItem.OwnerItem.Image) == (Database.redorange))
WriteStatus("\n" + e.ClickedItem.OwnerItem.ToolTipText); WriteStatus("\n" + e.ClickedItem.OwnerItem.ToolTipText);
// Set server selection
foreach (System.Windows.Forms.ToolStripMenuItem tsmi in wiiMenuLists)
{
if (tsmi.Name == e.ClickedItem.OwnerItem.OwnerItem.Name)
consoleCBox.SelectedIndex = 0;
}
foreach (System.Windows.Forms.ToolStripMenuItem tsmi in dsiMenuLists)
{
if (tsmi.Name == e.ClickedItem.OwnerItem.OwnerItem.Name)
consoleCBox.SelectedIndex = 1;
}
} }
} }
} }
@ -1388,6 +1542,9 @@ namespace NUS_Downloader
return; return;
} }
wiiRegionCodesMenu.DropDownItems.Clear();
dsiRegionCodesMenu.DropDownItems.Clear();
Database databaseObj = new Database(); Database databaseObj = new Database();
databaseObj.LoadDatabaseToStream(Path.Combine(CURRENT_DIR, "database.xml")); databaseObj.LoadDatabaseToStream(Path.Combine(CURRENT_DIR, "database.xml"));
@ -1396,16 +1553,21 @@ namespace NUS_Downloader
// For each child node (region node) // For each child node (region node)
for (int z = 0; z < regionItems.Length; z++) for (int z = 0; z < regionItems.Length; z++)
{ {
RegionCodesList.DropDownItems.Add(regionItems[z].Text); wiiRegionCodesMenu.DropDownItems.Add(regionItems[z].Text);
}
Database dsiDatabaseObj = new Database();
dsiDatabaseObj.LoadDatabaseToStream(Path.Combine(CURRENT_DIR, "dsidatabase.xml"));
ToolStripMenuItem[] dsiRegionItems = dsiDatabaseObj.LoadRegionCodes();
// For each child node (region node)
for (int z = 0; z < dsiRegionItems.Length; z++)
{
dsiRegionCodesMenu.DropDownItems.Add(dsiRegionItems[z].Text);
} }
} }
private void RegionCodesList_DropDownItemClicked(object sender, ToolStripItemClickedEventArgs e)
{
if (titleidbox.Text.Length == 16)
titleidbox.Text = titleidbox.Text.Substring(0, 14) + e.ClickedItem.Text.Substring(0, 2);
}
/// <summary> /// <summary>
/// Removes the illegal characters. /// Removes the illegal characters.
/// </summary> /// </summary>
@ -1671,7 +1833,7 @@ namespace NUS_Downloader
} }
// Load it up... // Load it up...
this.fds.RunWorkerAsync(); this.databaseWorker.RunWorkerAsync();
if (isCreation) if (isCreation)
{ {
@ -2755,5 +2917,45 @@ namespace NUS_Downloader
//TODO: Organize how this will work... //TODO: Organize how this will work...
Process.Start("http://wb3000.atspace.name/donations.html"); Process.Start("http://wb3000.atspace.name/donations.html");
} }
private void DSiDatabaseWork(object sender, System.ComponentModel.DoWorkEventArgs e)
{
while (databaseWorker.IsBusy)
{
Thread.Sleep(1000);
}
BackgroundWorker worker = sender as BackgroundWorker;
FillDSiDatabaseStrip(worker);
LoadRegionCodes();
//FillDatabaseScripts();
ShowInnerToolTips(false);
}
private void DSiDatabaseWork_Completed(object sender, System.ComponentModel.RunWorkerCompletedEventArgs e)
{
this.databaseButton.Text = "Database...";
this.databaseButton.Image = null;
}
private void DSiDatabaseWork_ProgressChanged(object sender, System.ComponentModel.ProgressChangedEventArgs e)
{
if (e.ProgressPercentage == 50)
databaseButton.Text = " [. ]";
else if (e.ProgressPercentage == 100)
databaseButton.Text = " [..]";
}
private void wiiRegionCodesMenu_DropDownItemClicked(object sender, ToolStripItemClickedEventArgs e)
{
if (titleidbox.Text.Length == 16)
titleidbox.Text = titleidbox.Text.Substring(0, 14) + e.ClickedItem.Text.Substring(0, 2);
}
private void dsiRegionCodesMenu_DropDownItemClicked(object sender, ToolStripItemClickedEventArgs e)
{
if (titleidbox.Text.Length == 16)
titleidbox.Text = titleidbox.Text.Substring(0, 14) + e.ClickedItem.Text.Substring(0, 2);
}
} }
} }

View File

@ -142,6 +142,8 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Content Include="Crystal_Clear_app_ark2.ico" /> <Content Include="Crystal_Clear_app_ark2.ico" />
<None Include="Resources\wii16x16 copy.png" />
<None Include="Resources\wii16x16.png" />
<None Include="Resources\money.png" /> <None Include="Resources\money.png" />
<None Include="Resources\wrench.png" /> <None Include="Resources\wrench.png" />
<None Include="Resources\script_start.png" /> <None Include="Resources\script_start.png" />
@ -165,6 +167,7 @@
<None Include="Resources\bullet_orange-blue.png" /> <None Include="Resources\bullet_orange-blue.png" />
<None Include="Resources\bullet_redgreen-blue.png" /> <None Include="Resources\bullet_redgreen-blue.png" />
<None Include="Resources\bullet_redorange-blue.png" /> <None Include="Resources\bullet_redorange-blue.png" />
<None Include="Resources\dsi16x16.png" />
<Content Include="Resources\key.png" /> <Content Include="Resources\key.png" />
<None Include="Resources\page_white_magnify.png" /> <None Include="Resources\page_white_magnify.png" />
<None Include="Resources\server_link.png" /> <None Include="Resources\server_link.png" />

View File

@ -179,6 +179,13 @@ namespace NUS_Downloader.Properties {
} }
} }
internal static System.Drawing.Bitmap dsi16x16 {
get {
object obj = ResourceManager.GetObject("dsi16x16", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
internal static System.Drawing.Bitmap folder { internal static System.Drawing.Bitmap folder {
get { get {
object obj = ResourceManager.GetObject("folder", resourceCulture); object obj = ResourceManager.GetObject("folder", resourceCulture);
@ -305,6 +312,20 @@ namespace NUS_Downloader.Properties {
} }
} }
internal static System.Drawing.Bitmap wii16x16 {
get {
object obj = ResourceManager.GetObject("wii16x16", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
internal static System.Drawing.Bitmap wii16x16_copy {
get {
object obj = ResourceManager.GetObject("wii16x16 copy", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
internal static System.Drawing.Bitmap wrench { internal static System.Drawing.Bitmap wrench {
get { get {
object obj = ResourceManager.GetObject("wrench", resourceCulture); object obj = ResourceManager.GetObject("wrench", resourceCulture);

View File

@ -121,9 +121,15 @@
<data name="server_connect" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="server_connect" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\server_connect.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\server_connect.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="package_delete" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\package_delete.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bullet_redorange" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="bullet_redorange" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_redorange.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\bullet_redorange.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="wii16x16 copy" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\wii16x16 copy.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bullet_redgreen" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="bullet_redgreen" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_redgreen.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\bullet_redgreen.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
@ -133,8 +139,8 @@
<data name="script_go" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="script_go" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\script_go.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\script_go.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="bullet_green_blue" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="package_green" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_green-blue.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\package_green.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="help" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="help" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\help.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\help.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -145,8 +151,8 @@
<data name="page_white_magnify" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="page_white_magnify" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\page_white_magnify.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\page_white_magnify.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="box" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="money" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\box.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\money.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="script_code_red" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="script_code_red" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\script_code_red.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\script_code_red.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -181,50 +187,53 @@
<data name="package" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="package" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\package.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\package.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="folder_table" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\folder_table.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="database_save" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="database_save" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\database_save.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\database_save.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="wii16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\wii16x16.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bullet_green" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="bullet_green" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_green.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\bullet_green.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="script_code" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\script_code.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bullet_orange" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="bullet_orange" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_orange.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\bullet_orange.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="folder_table" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="box" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\folder_table.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\box.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="picture_empty" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="picture_empty" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\picture_empty.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\picture_empty.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="package_green" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="bullet_green_blue" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\package_green.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\bullet_green-blue.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="bug_add" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="bug_add" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bug_add.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\bug_add.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="bullet_orange_blue" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_orange-blue.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="wrench" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="wrench" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\wrench.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\wrench.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="package_delete" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="script_code" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\package_delete.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\script_code.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="drive_disk" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="bullet_orange_blue" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\drive_disk.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\bullet_orange-blue.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="package_add" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="package_add" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\package_add.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\package_add.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="drive_disk" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\drive_disk.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="information" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="information" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\information.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\information.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="money" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="dsi16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\money.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\dsi16x16.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
</root> </root>