private void ListDirectory(String project, DirectoryInfo Dir, SPListItem item, ref String path) { SPListItem add_file = item.AddItem("Add File", new Uri("spotdev:project:" + project + ":" + path + "#AddFile"), Resources.ic_add); SPListItem add_folder = item.AddItem("Add Folder", new Uri("spotdev:project:" + project + ":" + path + "#AddFile"), Resources.ic_add); // Show all directories foreach (DirectoryInfo directory in Dir.GetDirectories()) { String sub_path = path + ":" + directory.Name; SPListItem dir = item.AddItem(directory.Name, new Uri("spotdev:project:" + project + ":" + sub_path + ":"), Resources.folder); ListDirectory(project, directory, dir, ref sub_path); } // Show all directories foreach (FileInfo file in Dir.GetFiles()) { String sub_path = path + ":" + file.Name; SPListItem dir = item.AddItem(file.Name, new Uri("spotdev:project:" + project + ":" + sub_path + ":"), Resources.folder); switch (file.Extension) { case ".js": dir.Icon = Resources.script; break; case ".json": dir.Icon = Resources.ic_settings; break; default: dir.Icon = Resources.ic_doc_spotify; break; } } }
public void BuildMenu() { this.spListView1.Items.Clear(); projects = new List <project>(); // Add prexisisting AddItem("", new Uri("http://static.cobresia.webfactional.com/spotdev/index.html")); AddItem("#Start", new Uri("http://static.cobresia.webfactional.com/spotdev/index.html")); SPListItem i = AddItem("Start", new Uri("http://static.cobresia.webfactional.com/spotdev/index.html"), Resources.world); i.Selected = true; AddItem("", new Uri("spotdev:start")); AddItem("#Resources", new Uri("spotdev:start"), Resources.world); AddItem("App Concept Submission", new Uri("http://developer.spotify.com/en/spotify-apps-api/appconcept/"), Resources.world); AddItem("Guidelines", new Uri("http://developer.spotify.com/download/spotify-apps-api/guidelines/"), Resources.world); AddItem("Terms of Use", new Uri("spotdev:concept:submit"), Resources.world); AddItem("Stack Overflow", new Uri("spotdev:concept:submit"), Resources.world); AddItem("", new Uri("spotdev:start")); AddItem("#Tech reference", new Uri("spotdev:concept:submit"), Resources.world); SPListItem spa_reference = AddItem("Spotify Apps", new Uri("http://developer.spotify.com/download/spotify-apps-api/reference/"), Resources.world); spa_reference.AddItem("Preview JS reference", new Uri("http://developer.spotify.com/download/spotify-apps-api/preview/reference/"), Resources.world); spa_reference.AddItem("Production JS reference", new Uri("http://developer.spotify.com/download/spotify-apps-api/reference/"), Resources.world); AddItem("", new Uri("spotdev:start")); AddItem("#Social", new Uri("spotdev:concept:submit")); AddItem("Twitter", new Uri("http://www.twitter.com/SpotifyPlatform"), Resources.world); AddItem("IRC (join #Spotify)", new Uri("http://webchat.quakenet.org/"), Resources.world); AddItem("", new Uri("spotdev:start")); AddItem("#Projects", new Uri("spotdev:start")); SPListItem item = AddItem("New Project", new Uri("spotdev:create:app")); item.Icon = Resources.ic_add; item.Color = Color.FromArgb(127, 255, 127); String workDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\Spotify"; // Load Dirs if (!Directory.Exists(workDirectory)) { Directory.CreateDirectory(workDirectory); } DirectoryInfo c = new DirectoryInfo(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\Spotify"); foreach (DirectoryInfo di in c.GetDirectories()) { LoadProject(di); } Program.me.RuntimeMachine.SetVariable("projects", projects.ToArray()); }
private void ListDirectory(String project, DirectoryInfo Dir, SPListItem item,ref String path) { SPListItem add_file = item.AddItem("Add File", new Uri("spotdev:project:" + project + ":" + path + "#AddFile"), Resources.ic_add); SPListItem add_folder = item.AddItem("Add Folder", new Uri("spotdev:project:" + project + ":" + path + "#AddFile"), Resources.ic_add); // Show all directories foreach (DirectoryInfo directory in Dir.GetDirectories()) { String sub_path = path + ":" + directory.Name; SPListItem dir = item.AddItem(directory.Name, new Uri("spotdev:project:" + project + ":" + sub_path + ":"), Resources.folder); ListDirectory(project, directory, dir, ref sub_path); } // Show all directories foreach (FileInfo file in Dir.GetFiles()) { String sub_path = path + ":" + file.Name; SPListItem dir = item.AddItem(file.Name, new Uri("spotdev:project:" + project + ":" + sub_path + ":"), Resources.folder); switch (file.Extension) { case ".js": dir.Icon = Resources.script; break; case ".json": dir.Icon = Resources.ic_settings; break; default: dir.Icon = Resources.ic_doc_spotify; break; } } }