public GuiController(IJukeController jukeControl) { this.jukeControl = jukeControl; overlay = null; menuMapping = new Dictionary <string, Action>(); //Overlay.Opened += OverlayOnOpened; //Overlay.Closed += OverlayOnClosed; //Screen.Invalidated += ScreenOnInvalidated; Screen.ScreenChange += OnScreenChange; Window.WindowResized += WindowOnWindowResized; window = new Window(); window.Run(); sceneMap = new Dictionary <ScreenName, Screen> { { ScreenName.MainMenu, new MainMenuScreen(Console.WindowWidth, Console.WindowHeight) }, { ScreenName.Admin, new AdminScreen(jukeControl, Console.WindowWidth, Console.WindowHeight) }, { ScreenName.Library, new LibraryScreen(jukeControl, Console.WindowWidth, Console.WindowHeight) }, { ScreenName.Quit, new ShutDownScreen(jukeControl) } }; activeScreen = sceneMap[ScreenName.MainMenu]; Console.CursorVisible = false; Keyboard.KeyPressed += OnKeyPressed; keyboard = new Keyboard(); drawables = new Collection <LineBlock>(); renderer = new Renderer(); Console.Title = "J.U.K.E. CLI version"; }
public EventListener(IJukeController jukeController) { jukeController.LoadHandler.LoadInitiated += SongLoader_LoadInitiated; jukeController.LoadHandler.LoadCompleted += LoadHandler_LoadCompleted; jukeController.LoadHandler.LoadProgress += LoadHandlerOnLoadProgress; jukeController.Player.SongPlayed += Instance_SongPlayed; }
public LibraryScreen(IJukeController jukeControl, int width, int height) { this.jukeControl = jukeControl; menu = new ConsoleMenu("Library", new ConsoleMenuItem { ID = "Songs", Label = "List songs" }, new ConsoleMenuItem { ID = "Load", Label = "Load library" }, new ConsoleMenuItem { ID = "Save", Label = "Save library" }, new ConsoleMenuItem { ID = "Back", Label = "Back" } ) { Width = width, MinHeight = height }; menu.InstanceItemSelected += MenuOnInstanceItemSelected; Width = width; MinHeight = height; }
public JukeServer() { logger = new TextWriterLogger(new StreamWriter("/Users/asbjornandersen/juke-server.log") { AutoFlush = true }); PlayerEngineFactory.Engine = new CorePlayerEngine(); jukeController = JukeController.Instance; jukeController.Player.SongPlayed += (sender, song) => Messenger.Post("Now playing: " + song.Artist + " - " + song.Name); jukeController.Player.RegisterPlayerEngine(new CorePlayerEngine()); Messenger.FrontendMessagePosted += (msg, s) => { if (!messages.Contains(msg)) { messages.Add(msg); } }; }
private void Window_Loaded(object sender, RoutedEventArgs e) { jukeController = JukeController.Instance; jukeController.Player.SongPlayed += Player_SongPlayed; if (!File.Exists("library.xml")) { Messenger.Log("Library doesn't exist. Create new one."); CreateLibrary(); } else { Messenger.Log("Loading existing library"); LoadLibrary(); } searchLogics = new SearchLogicFactory().CreateAll(viewModel); searchLogic = searchLogics[0]; Messenger.Log("Main window loaded"); }
public AdminScreen(IJukeController jukeControl, int width, int height) { this.jukeControl = jukeControl; menu = new ConsoleMenu("Admin controls", new ConsoleMenuItem() { ID = "Load", Label = "Load songs to library" }, new ConsoleMenuItem() { ID = "Back", Label = "Back" } ); menu.InstanceItemSelected += MenuOnItemSelected; background = new Background { BackgroundColor = ConsoleColor.DarkGray, ForegroundColor = ConsoleColor.Green, Width = width, MinHeight = height }; Width = width; MinHeight = height; }
protected AsyncJukeCommand(IJukeController controller, ViewControl view, SelectionModel model) : base(controller, view, model) { this.controller = controller; this.view = view; this.model = model; }
public PlayAlbumCommand(IJukeController controller, ViewControl view, SelectionModel model) : base(controller, view, model) { }
public StopSongCommand(IJukeController controller, ViewControl view, SelectionModel model) : base(controller, view, model) { this.controller = controller; }
public RenameArtistCommand(IJukeController controller, ViewControl view, SelectionModel model) : base(controller, view, model) { }
public static void Reset() { instance = new JukeController(); }
public SaveLibraryCommand(IJukeController controller, ViewControl view, SelectionModel model) : base(controller, view, model) { }
public ShutDownScreen(IJukeController jukeControl) { this.jukeControl = jukeControl; }
public DeleteAlbumCommand(IJukeController controller, ViewControl view, SelectionModel model) : base(controller, view, model) { model.PropertyChanged += Model_PropertyChanged; }
public AddSongsCommand(IJukeController jukeControl, AbstractSongAccessFactory factory) { this.jukeControl = jukeControl; this.factory = factory; }
public LoadSongsCommand(IJukeController controller, ViewControl view, SelectionModel model) : base(controller, view, model) { }
public LibraryStatsCommand(IJukeController jukeController, SongAccessFactory factory) { this.jukeController = jukeController; this.factory = factory; }