public static IEnumerable <TasqueCategoryItem> GetCategoryItems() { IEnumerable <string> categories; try { TasqueDBus tasque = new TasqueDBus(); categories = tasque.GetCategoryNames(); } catch (Exception e) { Log.Error("Could not read Tasque's category: {0}", e.Message); Log.Debug(e.StackTrace); categories = new string[] {}; } return(categories.Select(category => new TasqueCategoryItem(category))); }
protected Item[] TextItemPerform(ITextItem item, TasqueCategoryItem category) { string defaultCategory; GConf.Client conf = new GConf.Client(); TasqueDBus tasque = new TasqueDBus(); try { defaultCategory = conf.Get("/apps/gnome-do/plugins/tasque/default_category") as string; } catch (GConf.NoSuchKeyException) { conf.Set("/apps/gnome-do/plugins/tasque/default_category", ""); return(null); } if (category.Name != "") { tasque.CreateTask(category.Name, item.Text); } else if (defaultCategory == String.Empty) { string[] split = item.Text.Split(':'); if (split [0] == item.Text) { IEnumerable <string> categories = tasque.GetCategoryNames(); tasque.CreateTask(categories.First(), item.Text); } else { tasque.CreateTask(split [0], split [1]); } } else { string[] split = item.Text.Split(':'); if (split [0] == item.Text) { tasque.CreateTask(defaultCategory, item.Text); } else { tasque.CreateTask(split [0], split [1]); } } return(null); }
protected Item[] TextItemPerform(ITextItem item, TasqueCategoryItem category) { string defaultCategory; GConf.Client conf = new GConf.Client (); TasqueDBus tasque = new TasqueDBus (); try { defaultCategory = conf.Get ("/apps/gnome-do/plugins/tasque/default_category") as string; } catch (GConf.NoSuchKeyException) { conf.Set ("/apps/gnome-do/plugins/tasque/default_category", ""); return null; } if (category.Name != "" ) { tasque.CreateTask(category.Name, item.Text); } else if (defaultCategory == String.Empty) { string[] split = item.Text.Split (':'); if (split [0] == item.Text) { IEnumerable<string> categories = tasque.GetCategoryNames (); tasque.CreateTask (categories.First (), item.Text); } else { tasque.CreateTask (split [0], split [1]); } } else { string[] split = item.Text.Split (':'); if (split [0] == item.Text) tasque.CreateTask (defaultCategory, item.Text); else tasque.CreateTask (split [0], split [1]); } return null; }