1
/* LaunchpadAnswersItem.cs
3
* GNOME Do is the legal property of its developers. Please refer to the
4
* COPYRIGHT file distributed with this source distribution.
6
* This program is free software: you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation, either version 3 of the License, or
9
* (at your option) any later version.
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
16
* You should have received a copy of the GNU General Public License
17
* along with this program. If not, see <http://www.gnu.org/licenses/>.
20
using System.Text.RegularExpressions;
25
namespace Do.Launchpad
27
public class LaunchpadAnswerSearchItem : LaunchpadItem
29
public LaunchpadAnswerSearchItem() { }
30
public string Name { get { return "Answers Search"; } }
31
public string Description { get { return "Search for answers at Launchpad"; } }
34
get { return LaunchpadIcons.Instance.GetIconPath("LaunchpadAnswers.png"); }
37
public bool SupportsItems(IItem[] items)
42
public void Perform (IItem item)
44
Regex spaces = new Regex(@"\s+");
45
string query = (item as ITextItem).Text;
46
string[] qwords = spaces.Split(query);
47
Util.Environment.Open("https://answers.launchpad.net/questions/+questions?field.search_text=" + string.Join("+", qwords));
51
public class LaunchpadProjectAnswersItem : LaunchpadItem
53
public LaunchpadProjectAnswersItem() { }
54
public string Name { get { return "Answers"; } }
55
public string Description { get { return "Launchpad Answers"; } }
59
get { return LaunchpadIcons.Instance.GetIconPath("LaunchpadAnswers.png"); }
62
public bool SupportsItems(IItem[] items)
64
//Package name can't have a space
65
Regex numbers = new Regex(@"\s+");
66
return !numbers.IsMatch((items[0] as ITextItem).Text);
69
public void Perform (IItem item)
71
Util.Environment.Open(string.Format("https://answers.launchpad.net/{0}", (item as ITextItem).Text));