void AppInitMenu(void) {
- // TODO
+ ui_menu("File") {
+ ui_menuitem(.label = "Open");
+ ui_menuitem(.label = "Exit");
+ }
+ ui_menu("Playback") {
+ ui_menu_toggleitem(.label = "Repeat", .varname = "repeat");
+ ui_menu_toggleitem(.label = "Repeat List", .varname = "repeatlist");
+ ui_menu_toggleitem(.label = "Random Playback", .varname = "random");
+ ui_menu_toggleitem(.label = "Autoplay Folder", .varname = "autoplay");
+ ui_menuseparator();
+ ui_menuitem(.label = "Previous");
+ ui_menuitem(.label = "Next");
+ }
+ ui_menu("View") {
+ ui_menuitem(.label = "Fullscreen");
+ ui_menu_toggleitem(.label = "View Sidebar", .varname = "sidebar");
+ ui_menuseparator();
+ ui_menu_toggleitem(.label = "Adjust Window Size", .varname = "adjustwindowsize");
+ }
+ ui_menu("Preferences") {
+ ui_menu_toggleitem(.label = "Single Instance", .varname = "singleinstance");
+ }
}
void AppStart(UiEvent *event, AppStartupSettings *settings) {
#define UWP_APPLICATION_H
#include <ui/ui.h>
+#include <cx/list.h>
#ifdef __cplusplus
extern "C" {
} AppStartupSettings;
+typedef struct Player {
+ char *tmp;
+ pid_t process;
+ int log;
+ int ipc;
+ int status;
+ bool isactive;
+ bool isstarted;
+ Window window;
+ double playback_time;
+ int width;
+ int height;
+ int osd_height;
+ uint32_t ref;
+} Player;
+
+typedef struct {
+ CxList *tracks;
+ CxList *history;
+ int current_track;
+ int current_history_pos;
+ PlaybackMode playback;
+} PlayList;
+
+typedef struct MainWindow {
+ UiObject *obj;
+
+ Widget window;
+ Widget menubar;
+ Widget player_widget;
+ Widget sidebar_scrolledwindow;
+ Widget sidebar;
+ char *file;
+ Player *player;
+ bool fullscreen;
+ bool sidebarvisible;
+ bool cursorhidden;
+ bool buttongrab; // TODO: can this be removed
+ bool pwbuttonpressed;
+
+ UiInteger *_sidebarVisible;
+ UiInteger *_playbackRepeat;
+ UiInteger *_playbackRepeatList;
+ UiInteger *_playbackAutoPlay;
+ UiInteger *_playbackRandom;
+ UiInteger *_adjustWindowSize;
+ UiInteger *_singleInstance;
+
+
+ Widget playRepeatTrackButton;
+ Widget playRepeatListButton;
+ Widget playAutoPlayButton;
+ Widget playRandom;
+ Widget viewSidebarButton;
+ Widget viewAdjustWindowSize;
+ Widget prefSingleInstanceButton;
+
+ PlayList playlist;
+
+ bool adjustWindowSize;
+ bool singleInstance;
+
+ Time player_event_time;
+ Time button_press_time;
+ double motion_playback_time;
+ int mouse_x;
+ int mouse_y;
+
+
+} MainWindow;
+
+
void AppSetPlayerWindow(Window w);
void AppInitMenu(void);
MainWindow *window = malloc(sizeof(MainWindow));
memset(window, 0, sizeof(MainWindow));
main_window = window;
+
+ UiObject *obj = ui_window("uwplayer", NULL);
+ obj->window = window;
+ window->obj = obj;
// toplevel window
n = 0;
void WindowShow(MainWindow *win) {
XtRealizeWidget(win->window);
+ //ui_show(win->obj);
}
/*
#endif
-
-typedef struct Player {
- char *tmp;
- pid_t process;
- int log;
- int ipc;
- int status;
- bool isactive;
- bool isstarted;
- Window window;
- double playback_time;
- int width;
- int height;
- int osd_height;
- uint32_t ref;
-} Player;
-
-typedef struct {
- CxList *tracks;
- CxList *history;
- int current_track;
- int current_history_pos;
- PlaybackMode playback;
-} PlayList;
-
-typedef struct MainWindow {
- UiObject *obj;
-
- Widget window;
- Widget menubar;
- Widget player_widget;
- Widget sidebar_scrolledwindow;
- Widget sidebar;
- char *file;
- Player *player;
- bool fullscreen;
- bool mbvisible;
- bool sidebarvisible;
- bool cursorhidden;
- bool buttongrab;
- bool pwbuttonpressed;
-
- Widget playRepeatTrackButton;
- Widget playRepeatListButton;
- Widget playAutoPlayButton;
- Widget playRandom;
- Widget viewSidebarButton;
- Widget viewAdjustWindowSize;
- Widget prefSingleInstanceButton;
-
- PlayList playlist;
-
- bool adjustWindowSize;
- bool singleInstance;
-
- Time player_event_time;
- Time button_press_time;
- double motion_playback_time;
- int mouse_x;
- int mouse_y;
-
-
-} MainWindow;
-
MainWindow* WindowCreate(Display *dp);
MainWindow* GetMainWindow(void);