Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Columns UI appearance (Read 3519097 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Re: Columns UI appearance

Reply #2400

Re: Columns UI appearance

Reply #2401
Here we see polar opposite design philosophies! (Previous two posts)
Think millionaire, but with cannons.

Re: Columns UI appearance

Reply #2402
If each tab contained a single JScript Panel it would be easy enough. You could replace the tabs with a single panel and add this code...

Code: [Select]
// ==PREPROCESSOR==
// @author "marc2003"
// @name "Panel Receiver"
// ==/PREPROCESSOR==

var script = window.GetProperty('2K3.SCRIPT', 'user-components-x64\\foo_jscript_panel3\\samples\\JS Playlist.txt');
var pre = '';
var text = utils.ReadUTF8(fb.ProfilePath + script);
var lines = text.split('\r\n');
if (lines[0].indexOf('// ==PREPROCESSOR==') == 0) {
for (var i = 0; i < lines.length; i++) {
if (lines[i].indexOf('// @import') == 0) {
var fq = lines[i].indexOf('"') + 1;
var lq = lines[i].lastIndexOf('"') - fq;
var file = lines[i].substr(fq, lq).replace('%fb2k_profile_path%', fb.ProfilePath).replace('%fb2k_component_path%', fb.ComponentPath);
pre += utils.ReadUTF8(file) + '\n';
} else if (lines[i].indexOf('// ==/PREPROCESSOR==') == 0) {
break;
}
}
}

eval(pre + text);

(function (global) {
var original_callback = global.on_notify_data;
global.on_notify_data = function (name, info) {
if (name == 'load_script') {
window.SetProperty('2K3.SCRIPT', info);
window.Reload();
} else if (original_callback) {
original_callback(name, info);
}
}
})(this);

Now you need a secondary panel which contains a button/menu that would send notifications to this panel whenever it was clicked. You should just need to supply the full script path something like this...

Code: [Select]
// must be relative to fb.ProfilePath - do not make it absolute
window.NotifyOthers('load_script', 'user-components-x64\\foo_jscript_panel3\\samples\\smooth browser.txt');

edit: of course any current "state" would be lost each time new content is loaded.

Is it possible to do the same without a second panel and putting the button in the same panel ?
That's what are doing audio player in android ? The button is on the same panel .
Thanks marc2k3

Re: Columns UI appearance

Reply #2403
"I love it when a plan (theme) comes together" :))  (This one is not available for download... yet, just sharing ideas)

This theme was inspired by marc2k3 posting screenshots with just one panel in the foobar window and nothing else - I always thought it looked so clean. So I thought how about a theme that hides all library navigation on drop menus (right-click) along the top, that also double as tabs for that view (left-click), leaving as much room as possible in the window to display music.

Firstly the window is slightly transparent to see the full-size background visualization and artist wallpaper (when I download them) - thanks to Spectrum Analyzer by pqyt. This is placed in a pop-up window - thanks to Flowin by ohyeah, along with all the drop menus, which are turned on/off by a simple javascript button (thanks to SMP by theqwertiest).

A few quick notes about each layout/view ...

X
Track tab has full-width Playlist View, 3 x cycling artist photos (thanks to Biography by wilb) for up to 2 primary artists (with large text / thanks to JSP3 Text Display by marc2k3), or 1 primary artist + 2 "featured" artists photos (medium text), or combination of primary artist + "featured" + "performed by" band. Then the lower section displays album info when stopped, or track info when playing (large text), with additional album/track credits underneath (small text). These panels are reused in other views...

X
Genre tab I wanted to make use of the genre icons made for my previous theme (this time in two SMP Library Trees by wilb). Library Tree is not quite as accurate at assigning the correct icon as original Facets, but has other advantages like highlighting the playing genre/styles.

X
Date tab on the left has a chronological discography by release type (thanks to the classic EsPlaylist by ssenna) - if I can draw your eye to the text under the blue dates. I love being able to see what the artist released on the specific dates, like a timeline of complete artist works. The possible release types (as tagged) are Album, Single, EP, Remix, Soundtrack, Compilation, Concert, Video, but also Features On and Appears On for appearances on other albums.

X
Type tab, same sort of thing only grouped by release type first and in grid format. The idea was to replicate Spotify groups, though the title formatting to make it work is quite messy. Another instance of Biography showing "item properties" on the right.

X
Artist tab shown with the Track drop menu. This and Album tab have full window Biography scripts. All the drop menus are Library Tree, except for ...

X
Video tab shown with the Playlist drop menu. Playlist menu is a script from Eole (used with permission) that I modified a little to resemble the other menus. I save music videos and concert videos as tag files (thanks to m-TAGS by luigimercurio), or let the Find & Play script do that for me (on Find tab), and then switch to Video tab to watch the stream (thanks to Youtube Source by 3dyd).

Finally there are my own mods of JSP3 scripts for the lower status bar showing selected / playlist totals, and current playback order / skip status buttons up top (right-click also drops a menu).

Pretty fun theme. Using drop menus makes for quite diverse browsing, since you can quickly bring up anything on any view. And when multiple menus are open it works like Re/Facets filtering the next list... then drop the playlist menu to drag-n-drop anything to a playlist. This is my first go round making a Columns UI theme and a big thanks and credit to musicmusic for making the thing possible. And like all things foobar I'm not finished, still need to add a Lyrics tab...

You gotta love foobar! (thanks to Peter!)  8)

Edit: Even more drops ...

Re: Columns UI appearance

Reply #2404
"I love it when a plan (theme) comes together" :))  (This one is not available for download... yet, just sharing ideas)

This theme was inspired by marc2k3 posting screenshots with just one panel in the foobar window and nothing else - I always thought it looked so clean. So I thought how about a theme that hides all library navigation on drop menus (right-click) along the top, that also double as tabs for that view (left-click), leaving as much room as possible in the window to display music.

Firstly the window is slightly transparent to see the full-size background visualization and artist wallpaper (when I download them) - thanks to Spectrum Analyzer by pqyt. This is placed in a pop-up window - thanks to Flowin by ohyeah, along with all the drop menus, which are turned on/off by a simple javascript button (thanks to SMP by theqwertiest).

A few quick notes about each layout/view ...

[attach type=thumb]36509[/attach]
Track tab has full-width Playlist View, 3 x cycling artist photos (thanks to Biography by wilb) for up to 2 primary artists (with large text / thanks to JSP3 Text Display by marc2k3), or 1 primary artist + 2 "featured" artists photos (medium text), or combination of primary artist + "featured" + "performed by" band. Then the lower section displays album info when stopped, or track info when playing (large text), with additional album/track credits underneath (small text). These panels are reused in other views...

[attach type=thumb]36511[/attach]
Genre tab I wanted to make use of the genre icons made for my previous theme (this time in two SMP Library Trees by wilb). Library Tree is not quite as accurate at assigning the correct icon as original Facets, but has other advantages like highlighting the playing genre/styles.

[attach type=thumb]36513[/attach]
Date tab on the left has a chronological discography by release type (thanks to the classic EsPlaylist by ssenna) - if I can draw your eye to the text under the blue dates. I love being able to see what the artist released on the specific dates, like a timeline of complete artist works. The possible release types (as tagged) are Album, Single, EP, Remix, Soundtrack, Compilation, Concert, Video, but also Features On and Appears On for appearances on other albums.

[attach type=thumb]36515[/attach]
Type tab, same sort of thing only grouped by release type first and in grid format. The idea was to replicate Spotify groups, though the title formatting to make it work is quite messy. Another instance of Biography showing "item properties" on the right.

[attach type=thumb]36517[/attach]
Artist tab shown with the Track drop menu. This and Album tab have full window Biography scripts. All the drop menus are Library Tree, except for ...

[attach type=thumb]36519[/attach]
Video tab shown with the Playlist drop menu. Playlist menu is a script from Eole (used with permission) that I modified a little to resemble the other menus. I save music videos and concert videos as tag files (thanks to m-TAGS by luigimercurio), or let the Find & Play script do that for me (on Find tab), and then switch to Video tab to watch the stream (thanks to Youtube Source by 3dyd).

Finally there are my own mods of JSP3 scripts for the lower status bar showing selected / playlist totals, and current playback order / skip status buttons up top (right-click also drops a menu).

Pretty fun theme. Using drop menus makes for quite diverse browsing, since you can quickly bring up anything on any view. And when multiple menus are open it works like Re/Facets filtering the next list... then drop the playlist menu to drag-n-drop anything to a playlist. This is my first go round making a Columns UI theme and a big thanks and credit to musicmusic for making the thing possible. And like all things foobar I'm not finished, still need to add a Lyrics tab...

You gotta love foobar! (thanks to Peter!)  8)

Edit: Even more drops ...
Could you please explain how you achieved the background visualization effect? A very attractive theme proposal - when can we download it? Thank you!

 

Re: Columns UI appearance

Reply #2405
^ (No need to quote the whole reply)
Could you please explain how you achieved the background visualization effect?
I briefly did, but exact steps since there is some setup involved...

Put Spectrum Analyzer in a Flowin window (see links above) - View > Flowin > New Flowin > left-click > Spectrum Analyzer

Right-click in Spectrum Analyzer > Configure > Common > enable Show Artwork. If you want artist art and already have some downloaded, enter Artwork File Path such as -

Code: [Select]
M:\Music\$meta(artist,0)\Artist.jpg

And set the many other visualization options as you like. Resize the Flowin window to the same size and position as the foobar window, and enable transparency if not already - Preferences > Display > Columns UI > Main tab > Use transparency - set 240-ish. (If you are doing this in DUI the transparency option is in Preferences > Advanced > Display somewhere)

Now ideally to turn it on/off you want to make a toolbar button that runs a javascript to quickly focus the foobar window on top. If you use an existing JSP3 panel (I think the exact same script would work in SMP), open the script editor with [hold SHIFT + WIN key] > right-click > Configure and add this -

Code: [Select]
function on_main_menu(index) {
    switch (index) {
    case 1:
fb.RunMainMenuCommand("View/Flowin/Spectrum Analyzer/Show");
window.SetTimeout(function () {
fb.RunMainMenuCommand("View/Activate");
}, 100);
        break;
    }
}

Note: If you added additional things (like Splitters) to the Flowin window, or changed the name of the window title, be sure to change the path to the main menu command above to the correct name as it appears on the menu.

Now make a toolbar button in your layout and point it to File > JScript Panel 3 > 1 (or File > Spider Monkey Panel > 1 if using that). Clicking it should toggle the background on/off and quickly put the foobar window on top. (In Windows I believe there is no way to launch a window in the background, so this is my current workaround)

Edit: Also I think Flowin shows on startup by default, should turn that off - View > Flowin > Spectrum Analyzer > Show On Startup (off)