INVALID_FORMAT
}
+
+
// static array of all projects.
private Gee.ArrayList<Project> projects;
public bool projects_loaded = false;
-
+ // used to pass around callbacks with project as a return
+ public class Callback : Object {
+ public signal void call(Project project);
+ }
+
public abstract class Project : Object {
public signal void on_changed ();
return false;
}
- public void loadDirsToStringList( global::Gtk.StringList sl)
+
+ public void loadDirsToStringList( global::Gtk.StringList sl, string prefix)
{
while (sl.get_n_items() > 0) {
}
foreach(var sp in this.sub_paths) {
-
- sl.append( sp.path == this.path ? "/" : sp.path.substring(this.path.length));
+ var add = sp.path == this.path ? "/" : sp.path.substring(this.path.length);
+ if (prefix.length > 0 && !add.has_prefix(prefix)) {
+ continue;
+ }
+ sl.append(add);
}
}