X-Git-Url: https://develop.uap-core.de/gitweb/uwplayer.git/blobdiff_plain/f84f78a3ae9a216a4416be5fcb2b219b68e483fe..83d9f3aaf8206aa081ead0ff630a1c33ed670d71:/application/window.c diff --git a/application/window.c b/application/window.c index 4cdeadc..621ada7 100644 --- a/application/window.c +++ b/application/window.c @@ -307,10 +307,16 @@ MainWindow* WindowCreate(Display *display) { XtSetArg(args[n], XmNtopAttachment, XmATTACH_WIDGET); n++; XtSetArg(args[n], XmNtopWidget, window->menubar); n++; XtSetArg(args[n], XmNwidth, 300); n++; - window->sidebar = CreateSidebar(container, "sidebar", args, n); + XtSetArg(args[n], XmNscrollingPolicy, XmAUTOMATIC); n++; + XtSetArg(args[n], XmNscrollBarDisplayPolicy, XmAS_NEEDED); n++; + XtSetArg(args[n], XmNspacing, 0); n++; + XtSetArg(args[n], XmNshadowThickness, 0); n++; + window->sidebar_scrolledwindow = XmCreateScrolledWindow(container, "sw_sidebar", args, n); + window->sidebar = CreateSidebar(window->sidebar_scrolledwindow, "sidebar", args, 0); SidebarSetWindow(window->sidebar, window); + XtManageChild(window->sidebar); //XtManageChild(window->sidebar); - + n = 0; XtSetArg(args[n], XmNleftAttachment, XmATTACH_FORM); n++; XtSetArg(args[n], XmNrightAttachment, XmATTACH_FORM); n++; @@ -480,14 +486,12 @@ static void WindowCreateMenu(MainWindow *win, Widget parent, Arg *mbargs, int nm // 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", 'P', False, NULL, NULL, PlayRandomCB, win); win->playAutoPlayButton = createToggleMenuItem(playMenu, "playAutoNext", "Autoplay Folder", 'A', False, NULL, NULL, PlayAutoPlayCB, 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); - - createMenuSeparator(playMenu); - - win->playRandom = createToggleMenuItem(playMenu, "playRandom", "Random Playback", 'P', False, NULL, NULL, PlayRandomCB, win); + XtVaSetValues(win->playRandom, XmNindicatorType, XmONE_OF_MANY, NULL); // view menu @@ -619,8 +623,10 @@ static void PlayRepeatCB(Widget w, void *udata, void *cdata) { win->playlist.repeatTrack = XmToggleButtonGadgetGetState(w); win->playlist.repeatList = 0; win->playlist.autoplayFolder = 0; + win->playlist.random = 0; 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) { @@ -628,8 +634,10 @@ static void PlayRepeatListCB(Widget w, void *udata, void *cdata) { win->playlist.repeatList = XmToggleButtonGadgetGetState(w); win->playlist.repeatTrack = 0; win->playlist.autoplayFolder = 0; + win->playlist.random = 0; 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) { @@ -637,13 +645,21 @@ static void PlayAutoPlayCB(Widget w, void *udata, void *cdata) { win->playlist.autoplayFolder = XmToggleButtonGadgetGetState(w); win->playlist.repeatTrack = 0; win->playlist.repeatList = 0; + win->playlist.random = 0; 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.random = XmToggleButtonGadgetGetState(w); + win->playlist.repeatTrack = 0; + win->playlist.repeatList = 0; + win->playlist.autoplayFolder = 0; + XtVaSetValues(win->playRepeatTrackButton, XmNset, 0, NULL); + XtVaSetValues(win->playRepeatListButton, XmNset, 0, NULL); + XtVaSetValues(win->playAutoPlayButton, XmNset, 0, NULL); } static void ViewFullscreenCB(Widget w, void *udata, void *cdata) { @@ -721,10 +737,10 @@ void WindowShowPlayerCursor(MainWindow *win) { void WindowShowSidebar(MainWindow *win, bool visible) { if(visible) { - XtManageChild(win->sidebar); - XtVaSetValues(win->player_widget, XmNrightAttachment, XmATTACH_WIDGET, XmNrightWidget, win->sidebar, NULL); + XtManageChild(win->sidebar_scrolledwindow); + XtVaSetValues(win->player_widget, XmNrightAttachment, XmATTACH_WIDGET, XmNrightWidget, win->sidebar_scrolledwindow, NULL); } else { - XtUnmanageChild(win->sidebar); + XtUnmanageChild(win->sidebar_scrolledwindow); XtVaSetValues(win->player_widget, XmNrightAttachment, XmATTACH_FORM, NULL); } }