handle btn1 in sidebar, switchable tracks
[uwplayer.git] / application / window.h
index 0ac5cc7..c00f29e 100644 (file)
  */
 
 
-#ifndef WINDOW_H
-#define WINDOW_H
+#ifndef UWP_WINDOW_H
+#define UWP_WINDOW_H
 
 #include <Xm/XmAll.h>
 #include <stdbool.h>
 #include <unistd.h>
+#include <ucx/list.h>
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
 typedef struct Player {
+    char *tmp;
     pid_t process;
-    int in;
-    int out;
+    int log;
+    int ipc;
+    int status;
+    bool isactive;
+    bool isstarted;
+    Window window;
+    double playback_time;
+    int width;
+    int height;
+    int osd_height;
 } Player;
+
+typedef struct {
+    UcxList *tracks;
+    int current_track;
     
+    Boolean repeatTrack;
+    Boolean repeatList;
+    Boolean autoplayFolder;
+} PlayList;
+
 typedef struct MainWindow {
     Widget window;
     Widget menubar;
     Widget player_widget;
+    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 viewSidebarButton;
+    
+    PlayList playlist;
+    
+    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);
+
 void WindowShow(MainWindow *win);
 
 void WindowFullscreen(MainWindow *win, bool enableFullscreen);
 
 void WindowMenubarSetVisible(MainWindow *win, bool visible);
 
+void WindowAdjustAspectRatio(MainWindow *win);
+
+void WindowClosePlayer(MainWindow *win);
+
+void WindowHidePlayerCursor(MainWindow *win);
+void WindowShowPlayerCursor(MainWindow *win);
+
+void WindowHandlePlayerEvent(MainWindow *win, XEvent *event);
+
+void WindowHideSidebar(MainWindow *win);
+void WindowShowSidebar(MainWindow *win);
+
+void WindowUpdate(MainWindow *win);
+
+
 #ifdef __cplusplus
 }
 #endif
 
-#endif /* WINDOW_H */
+#endif /* UWP_WINDOW_H */