From: Olaf Wintermann Date: Wed, 19 Nov 2025 16:21:07 +0000 (+0100) Subject: restore functionality of some menu items X-Git-Url: https://uap-core.de/gitweb/?a=commitdiff_plain;p=uwplayer.git restore functionality of some menu items --- diff --git a/application/application.c b/application/application.c index 6d0fef1..a83f73c 100644 --- a/application/application.c +++ b/application/application.c @@ -46,14 +46,14 @@ void AppInitMenu(void) { ui_menu_toggleitem(.label = "Repeat", .varname = "repeat", .onchange = ActionPlayRepeat); ui_menu_toggleitem(.label = "Repeat List", .varname = "repeatlist", .onchange = ActionPlayRepeatList); ui_menu_toggleitem(.label = "Random Playback", .varname = "random", .onchange = ActionPlayRandomCB); - ui_menu_toggleitem(.label = "Autoplay Folder", .varname = "autoplay", .onchange = ActionPlayRandomCB); + ui_menu_toggleitem(.label = "Autoplay Folder", .varname = "autoplay", .onchange = ActionPlayAutoPlayCB); ui_menuseparator(); - ui_menuitem(.label = "Previous"); - ui_menuitem(.label = "Next"); + ui_menuitem(.label = "Previous", .onclick = ActionPlayPreviousCB); + ui_menuitem(.label = "Next", .onclick = ActionPlayNextCB); } ui_menu("View") { ui_menuitem(.label = "Fullscreen"); - ui_menu_toggleitem(.label = "View Sidebar", .varname = "sidebar"); + ui_menu_toggleitem(.label = "View Sidebar", .varname = "sidebar", .onchange = ActionViewSidebarCB); ui_menuseparator(); ui_menu_toggleitem(.label = "Adjust Window Size", .varname = "adjustwindowsize"); } @@ -125,10 +125,6 @@ void ActionPlayRepeat(UiEvent *event, void *userdata) { ui_set(win->_playbackRepeatList, 0); ui_set(win->_playbackAutoPlay, 0); ui_set(win->_playbackRandom, 0); - - XtVaSetValues(win->playRepeatListButton, XmNset, 0, NULL); // TODO: remove - XtVaSetValues(win->playAutoPlayButton, XmNset, 0, NULL); // TODO: remove - XtVaSetValues(win->playRandom, XmNset, 0, NULL); // TODO: remove } void ActionPlayRepeatList(UiEvent *event, void *userdata) { @@ -140,10 +136,6 @@ void ActionPlayRepeatList(UiEvent *event, void *userdata) { ui_set(win->_playbackRepeat, 0); ui_set(win->_playbackRandom, 0); ui_set(win->_playbackAutoPlay, 0); - - XtVaSetValues(win->playRepeatTrackButton, XmNset, 0, NULL); // TODO: remove - XtVaSetValues(win->playAutoPlayButton, XmNset, 0, NULL); // TODO: remove - XtVaSetValues(win->playRandom, XmNset, 0, NULL); // TODO: remove } void ActionPlayAutoPlayCB(UiEvent *event, void *userdata) { @@ -155,10 +147,6 @@ void ActionPlayAutoPlayCB(UiEvent *event, void *userdata) { ui_set(win->_playbackRepeat, 0); ui_set(win->_playbackRepeatList, 0); ui_set(win->_playbackRandom, 0); - - XtVaSetValues(win->playRepeatTrackButton, XmNset, 0, NULL); // TODO: remove - XtVaSetValues(win->playRepeatListButton, XmNset, 0, NULL); // TODO: remove - XtVaSetValues(win->playRandom, XmNset, 0, NULL); // TODO: remove } void ActionPlayRandomCB(UiEvent *event, void *userdata) { @@ -170,10 +158,6 @@ void ActionPlayRandomCB(UiEvent *event, void *userdata) { ui_set(win->_playbackRepeat, 0); ui_set(win->_playbackRepeatList, 0); ui_set(win->_playbackAutoPlay, 0); - - XtVaSetValues(win->playRepeatTrackButton, XmNset, 0, NULL); // TODO: remove - XtVaSetValues(win->playRepeatListButton, XmNset, 0, NULL); // TODO: remove - XtVaSetValues(win->playAutoPlayButton, XmNset, 0, NULL); // TODO: remove } void ActionPlayPreviousCB(UiEvent *event, void *userdata) { @@ -203,7 +187,6 @@ void ActionViewSidebarCB(UiEvent *event, void *userdata) { return; } MainWindow *win = event->window; - win->sidebarvisible = event->intval; WindowShowSidebar(win, event->intval); } diff --git a/application/window.c b/application/window.c index eb83472..7a5a5e7 100644 --- a/application/window.c +++ b/application/window.c @@ -40,12 +40,6 @@ static void WindowCreateMenu(MainWindow *win, Widget parent, Arg *args, int narg static void FileOpenCB(Widget w, void *udata, void *cdata); static void FileQuitCB(Widget w, void *udata, void *cdata); -static void PlayRepeatCB(Widget w, void *udata, void *cdata); -static void PlayRepeatListCB(Widget w, void *udata, void *cdata); -static void PlayAutoPlayCB(Widget w, void *udata, void *cdata); -static void PlayRandomCB(Widget w, void *udata, void *cdata); -static void PlayPreviousCB(Widget w, void *udata, void *cdata); -static void PlayNextCB(Widget w, void *udata, void *cdata); static void ViewFullscreenCB(Widget w, void *udata, void *cdata); static void ViewSidebarCB(Widget w, void *udata, void *cdata); static void ViewAdjustWindowSizeCB(Widget w, void *udata, void *cdata); @@ -323,6 +317,8 @@ MainWindow* WindowCreate(Display *display) { } #endif } + + WindowShowSidebar(window, FALSE); /* // toplevel window @@ -507,84 +503,6 @@ static Widget createMenuSeparator(Widget menu) { return w; } -static void WindowCreateMenu(MainWindow *win, Widget parent, Arg *mbargs, int nmbargs) { - Widget menubar = XmCreateMenuBar(parent, "menubar", mbargs, nmbargs); - XtManageChild(menubar); - win->menubar = menubar; - - Arg args[16]; - int n; - - // menus - XmString s = XmStringCreateSimple("File"); - XtVaCreateManagedWidget( - "menuitem", - xmCascadeButtonWidgetClass, - menubar, - XmNlabelString, s, - NULL); - XmStringFree(s); - Widget fileMenu = XmVaCreateSimplePulldownMenu(menubar, "menu", 0, NULL, NULL); - - s = XmStringCreateSimple("Playback"); - XtVaCreateManagedWidget( - "menuitem", - xmCascadeButtonWidgetClass, - menubar, - XmNlabelString, s, - NULL); - XmStringFree(s); - Widget playMenu = XmVaCreateSimplePulldownMenu(menubar, "menu", 1, NULL, NULL); - - s = XmStringCreateSimple("View"); - Widget viewMenuItem = XtVaCreateManagedWidget( - "menuitem", - xmCascadeButtonWidgetClass, - menubar, - XmNlabelString, s, - NULL); - XmStringFree(s); - Widget viewMenu = XmVaCreateSimplePulldownMenu(menubar, "menu", 2, NULL, NULL); - - s = XmStringCreateSimple("Preferences"); - Widget prefMenuItem = XtVaCreateManagedWidget( - "menuitem", - xmCascadeButtonWidgetClass, - menubar, - XmNlabelString, s, - NULL); - XmStringFree(s); - Widget prefMenu = XmVaCreateSimplePulldownMenu(menubar, "menu", 3, NULL, NULL); - - // file menu - createMenuItem(fileMenu, "fileOpen", "Open...", 'O', "CtrlO", "Ctrl+O", FileOpenCB, NULL); - createMenuItem(fileMenu, "fileQuit", "Exit", 'E', "CtrlQ", "Ctrl+Q", FileQuitCB, NULL); - - // play menu - win->playRepeatTrackButton = createToggleMenuItem(playMenu, "playRepeatTrack", "Repeat", 'R', False, NULL, NULL, PlayRepeatCB, win); - win->playRepeatListButton = createToggleMenuItem(playMenu, "playRepeatList", "Repeat List", 'L', False, NULL, NULL, PlayRepeatListCB, win); - win->playRandom = createToggleMenuItem(playMenu, "playRandom", "Random Playback", 'a', False, NULL, NULL, PlayRandomCB, win); - win->playAutoPlayButton = createToggleMenuItem(playMenu, "playAutoNext", "Autoplay Folder", 'A', False, NULL, NULL, PlayAutoPlayCB, win); - createMenuSeparator(playMenu); - createMenuItem(playMenu, "playPrev", "Previous", 'P', NULL, NULL, PlayPreviousCB, win); - createMenuItem(playMenu, "playPrev", "Next", 'N', NULL, NULL, PlayNextCB, win); - XtVaSetValues(win->playRepeatTrackButton, XmNindicatorType, XmONE_OF_MANY, NULL); - XtVaSetValues(win->playRepeatListButton, XmNindicatorType, XmONE_OF_MANY, NULL); - XtVaSetValues(win->playAutoPlayButton, XmNindicatorType, XmONE_OF_MANY, NULL); - XtVaSetValues(win->playRandom, XmNindicatorType, XmONE_OF_MANY, NULL); - - // view menu - createMenuItem(viewMenu, "viewFullscreen", "Fullscreen", 'F', "F", "F", ViewFullscreenCB, NULL); - win->viewSidebarButton = createToggleMenuItem(viewMenu, "viewSidebar", "View Sidebar", 'S', False, NULL, NULL, ViewSidebarCB, win); - - createMenuSeparator(viewMenu); - - win->viewAdjustWindowSize = createToggleMenuItem(viewMenu, "viewAdjustWindowSize", "Adjust Window Size", 'W', TRUE, NULL, NULL, ViewAdjustWindowSizeCB, win); - - // preferences menu - win->prefSingleInstanceButton = createToggleMenuItem(prefMenu, "prefSingleInstance", "Single Instance", 'S', FALSE, NULL, NULL, PrefSingleInstanceCB, win); -} - void go_fullscreen(Display *dsp, Window win) { XEvent xev; @@ -701,48 +619,6 @@ static void FileQuitCB(Widget w, void *udata, void *cdata) { ApplicationExit(); } -static void PlayRepeatCB(Widget w, void *udata, void *cdata) { - MainWindow *win = udata; - win->playlist.playback = XmToggleButtonGadgetGetState(w) ? PLAYBACK_REPEAT : PLAYBACK_STOP; - XtVaSetValues(win->playRepeatListButton, XmNset, 0, NULL); - XtVaSetValues(win->playAutoPlayButton, XmNset, 0, NULL); - XtVaSetValues(win->playRandom, XmNset, 0, NULL); -} - -static void PlayRepeatListCB(Widget w, void *udata, void *cdata) { - MainWindow *win = udata; - win->playlist.playback = XmToggleButtonGadgetGetState(w) ? PLAYBACK_REPEAT_LIST : PLAYBACK_STOP; - XtVaSetValues(win->playRepeatTrackButton, XmNset, 0, NULL); - XtVaSetValues(win->playAutoPlayButton, XmNset, 0, NULL); - XtVaSetValues(win->playRandom, XmNset, 0, NULL); -} - -static void PlayAutoPlayCB(Widget w, void *udata, void *cdata) { - MainWindow *win = udata; - win->playlist.playback = XmToggleButtonGadgetGetState(w) ? PLAYBACK_AUTOPLAY : PLAYBACK_STOP; - XtVaSetValues(win->playRepeatTrackButton, XmNset, 0, NULL); - XtVaSetValues(win->playRepeatListButton, XmNset, 0, NULL); - XtVaSetValues(win->playRandom, XmNset, 0, NULL); -} - -static void PlayRandomCB(Widget w, void *udata, void *cdata) { - MainWindow *win = udata; - win->playlist.playback = XmToggleButtonGadgetGetState(w) ? PLAYBACK_RANDOM : PLAYBACK_STOP; - XtVaSetValues(win->playRepeatTrackButton, XmNset, 0, NULL); - XtVaSetValues(win->playRepeatListButton, XmNset, 0, NULL); - XtVaSetValues(win->playAutoPlayButton, XmNset, 0, NULL); -} - -static void PlayPreviousCB(Widget w, void *udata, void *cdata) { - MainWindow *win = udata; - PlayListPlayPrev(win); -} - -static void PlayNextCB(Widget w, void *udata, void *cdata) { - MainWindow *win = udata; - PlayListPlayNext(win, true); -} - static void ViewFullscreenCB(Widget w, void *udata, void *cdata) { if(main_window->fullscreen) { WindowFullscreen(main_window, FALSE); @@ -844,13 +720,8 @@ void WindowShowPlayerCursor(MainWindow *win) { } void WindowShowSidebar(MainWindow *win, bool visible) { - if(visible) { - XtManageChild(win->sidebar_scrolledwindow); - XtVaSetValues(win->player_widget, XmNrightAttachment, XmATTACH_WIDGET, XmNrightWidget, win->sidebar_scrolledwindow, NULL); - } else { - XtUnmanageChild(win->sidebar_scrolledwindow); - XtVaSetValues(win->player_widget, XmNrightAttachment, XmATTACH_FORM, NULL); - } + win->sidebarvisible = visible; + ui_set_visible(win->listview_scrolledwindow, visible); } void WindowUpdate(MainWindow *win) {