public abstract void hello (Gtk.Window window, Osso.Context context);
public abstract unowned List<MovieSource> get_sources ();
- public abstract List<MovieAction> get_actions (Movie movie);
+ public abstract List<MovieAction> get_actions (Movie movie, Gtk.Window window);
public abstract void settings_dialog (Gtk.Window window);
public abstract unowned string get_name ();
}
+public enum SourceFlags {
+ EDITABLE = 1,
+ ONLINE = 2,
+}
+
public abstract class MovieSource : Object {
+ public abstract bool active { get; set construct; }
+
public delegate void ReceiveMovieFunction (Movie movie);
- public abstract async void get_movies (MovieFilter filter, ReceiveMovieFunction callback, int limit, GLib.Cancellable? cancellable);
+ public abstract async int get_movies (MovieFilter filter, ReceiveMovieFunction callback, int limit, GLib.Cancellable? cancellable);
public abstract void add_movie (Movie movie);
+ public abstract void delete_movie (Movie movie);
public abstract unowned string get_name ();
public abstract unowned string get_description ();
- public abstract bool get_editable ();
+ public abstract SourceFlags get_flags ();
}
public class MovieAction : Object {
- public delegate void MovieActionFunc (Movie movie);
+ public delegate void MovieActionFunc (Movie movie, Gtk.Window window);
public string name;
private MovieActionFunc action;
private Movie movie;
+ private Gtk.Window window;
- public MovieAction (string _name, MovieActionFunc _action, Movie _movie) {
+ public MovieAction (string _name, MovieActionFunc _action, Movie _movie, Gtk.Window _window) {
name = _name;
action = _action;
movie = _movie;
+ window = _window;
}
public void execute () {
- action (movie);
+ action (movie, window);
}
}