summaryrefslogtreecommitdiff
path: root/src/actionGroups/bookmarkGroup.vala
diff options
context:
space:
mode:
Diffstat (limited to 'src/actionGroups/bookmarkGroup.vala')
-rw-r--r--src/actionGroups/bookmarkGroup.vala80
1 files changed, 40 insertions, 40 deletions
diff --git a/src/actionGroups/bookmarkGroup.vala b/src/actionGroups/bookmarkGroup.vala
index 0a560c5..791d609 100644
--- a/src/actionGroups/bookmarkGroup.vala
+++ b/src/actionGroups/bookmarkGroup.vala
@@ -1,36 +1,36 @@
-/*
-Copyright (c) 2011 by Simon Schneegans
-
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU General Public License as published by the Free
-Software Foundation, either version 3 of the License, or (at your option)
-any later version.
-
-This program is distributed in the hope that it will be useful, but WITHOUT
-ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
-more details.
-
-You should have received a copy of the GNU General Public License along with
-this program. If not, see <http://www.gnu.org/licenses/>.
-*/
+/////////////////////////////////////////////////////////////////////////
+// Copyright (c) 2011-2015 by Simon Schneegans
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or (at
+// your option) any later version.
+//
+// This program is distributed in the hope that it will be useful, but
+// WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see <http://www.gnu.org/licenses/>.
+/////////////////////////////////////////////////////////////////////////
namespace GnomePie {
-/////////////////////////////////////////////////////////////////////////
+/////////////////////////////////////////////////////////////////////////
/// A group of Actions, which represent the users gtk-bookmarks, his home
-/// directory, desktop and trash. It stay up-to-date, even if the
+/// directory, desktop and trash. It stay up-to-date, even if the
/// bookmarks change.
/////////////////////////////////////////////////////////////////////////
public class BookmarkGroup : ActionGroup {
-
+
/////////////////////////////////////////////////////////////////////
/// Used to register this type of ActionGroup. It sets the display
- /// name for this ActionGroup, it's icon name and the string used in
+ /// name for this ActionGroup, it's icon name and the string used in
/// the pies.conf file for this kind of ActionGroups.
/////////////////////////////////////////////////////////////////////
-
+
public static GroupRegistry.TypeDescription register() {
var description = new GroupRegistry.TypeDescription();
description.name = _("Group: Bookmarks");
@@ -41,34 +41,34 @@ public class BookmarkGroup : ActionGroup {
}
/////////////////////////////////////////////////////////////////////
- /// Two members needed to avoid useless, frequent changes of the
+ /// Two members needed to avoid useless, frequent changes of the
/// stored Actions.
/////////////////////////////////////////////////////////////////////
private bool changing = false;
private bool changed_again = false;
-
+
/////////////////////////////////////////////////////////////////////
/// C'tor, initializes all members.
/////////////////////////////////////////////////////////////////////
-
+
public BookmarkGroup(string parent_id) {
GLib.Object(parent_id : parent_id);
}
-
+
/////////////////////////////////////////////////////////////////////
/// Construct block loads the bookmarks of the user and adds a file
/// monitor in order to update the BookmarkGroup when the bookmarks
/// of the user change.
/////////////////////////////////////////////////////////////////////
-
+
construct {
this.load();
-
+
// add monitor
var bookmark_file = GLib.File.new_for_path(
GLib.Environment.get_home_dir()).get_child(".gtk-bookmarks");
-
+
if (bookmark_file.query_exists()) {
try {
var monitor = bookmark_file.monitor(GLib.FileMonitorFlags.NONE);
@@ -78,31 +78,31 @@ public class BookmarkGroup : ActionGroup {
}
}
}
-
+
/////////////////////////////////////////////////////////////////////
/// Adds Actions for each gtk-bookmark of the user and for his home
/// folder, desktop and trash.
/////////////////////////////////////////////////////////////////////
-
+
private void load() {
// add home folder
this.add_action(ActionRegistry.new_for_uri("file://" + GLib.Environment.get_home_dir()));
-
+
// add .gtk-bookmarks
var bookmark_file = GLib.File.new_for_path(
GLib.Environment.get_home_dir()).get_child(".gtk-bookmarks");
-
+
if (!bookmark_file.query_exists()) {
warning("Failed to find file \".gtk-bookmarks\"!");
return;
}
-
+
try {
var dis = new DataInputStream(bookmark_file.read());
string line;
while ((line = dis.read_line(null)) != null) {
var parts = line.split(" ");
-
+
string uri = parts[0];
string name = parts[1];
@@ -111,19 +111,19 @@ public class BookmarkGroup : ActionGroup {
} catch (Error e) {
error ("%s", e.message);
}
-
+
// add trash
this.add_action(ActionRegistry.new_for_uri("trash://"));
-
+
// add desktop
this.add_action(ActionRegistry.new_for_uri("file://" + GLib.Environment.get_user_special_dir(GLib.UserDirectory.DESKTOP)));
}
-
+
/////////////////////////////////////////////////////////////////////
/// Reloads all Bookmarks. Is called when the user's gtk-bookmarks
/// file changes.
/////////////////////////////////////////////////////////////////////
-
+
private void reload() {
// avoid too frequent changes...
if (!this.changing) {
@@ -138,13 +138,13 @@ public class BookmarkGroup : ActionGroup {
message("Bookmarks changed...");
this.delete_all();
this.load();
-
+
this.changing = false;
return false;
});
} else {
this.changed_again = true;
- }
+ }
}
}