HydrogenAudio

Hosted Forums => foobar2000 => 3rd Party Plugins - (fb2k) => Topic started by: Keikonium on 2008-02-19 15:04:41

Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-02-19 15:04:41
THIS IS NOT MY RELEASE

DOWNLOAD: http://www.tv2ch.info/fb2k (http://www.tv2ch.info/fb2k)

Readme translated by thuan (rev014):
Code: [Select]
Graphical Browser

● What this component does:
Album cover browser for the active playlist.


● Caution
Settings are per panel so if you delete a panel, the settings for that panel
also disappear.


● Sort
Blank → Whatever works.
* → Sorted by grouped strings.

If you want to arrange in the same order as the playlist → $num(%gb_playlist_number%,10)


● Popup
Transparent mode
You can apply different level of transparence to every pixel. (e.g.: transparent background
with full opacity image and text.)
I think that GDI can't be used, please use GDI+ only.
Even with GDI+, text rendering without using $gp_set_text_rendering_hint(aa) doesn't look
good enough.

Per track
Draw order:
Popup → Per track(0) → Per track(1) → ...
Rendering settings (e.g.: pen, brush, font, ...) can't be set again midway.


● Image cache methods
Old
rev011 and older way. Cache images of all items.
Image cache is purged when switching playlist.

Default
Cache images to the set size.
Image cache is not purged when switching playlist.
If the image cache reach the limit, it will be purged.


● Variables
%gb_group%
[Item], [Popup], [Per track(Popup)]
Return the group string. E.g.: If you used $if2(%album%,@skip) to group,
it will return %album%.

%gb_width%
[Item]
Item width
[Popup], [Per track(Popup)]
Popup width

%gb_height%
[Item]
Item height
[Popup], [Per track(Popup)]
Popup height

%gb_focused%
[Item], [Popup], [Per track(Popup)]
Check whether focus is on the item or not

%gb_mouse_over%
[Item]
Check whether mouse cursor is on the item or not
[Popup], [Per track(Popup)]
Probably always true

%gb_item_index%
[Item], [Popup], [Per track(Popup)]
Return item index

%gb_item_count%
[Item], [Popup], [Per track(Popup)]
Return item count

%gb_track_count%
[Sort], [Item], [Popup], [Per track(Popup)]
Return number of songs in an item

%gb_playlist_number%
[Sort], [Item], [Popup]
Return position of song in playlist for the first song in an item
[Per track(Popup)]
Return position of song in playlist

%gb_col%
[Item], [Popup], [Per track(Popup)]
Return item column number

%gb_row%
[Item], [Popup], [Per track(Popup)]
Return item row number

%gb_col_count%
[Item], [Popup], [Per track(Popup)]
Return number of columns

%gb_row_count%
[Item], [Popup], [Per track(Popup)]
Return number of rows

%gb_isplaying%
[Item], [Popup]
Return true if a song in the item is playing
[Per track (Popup)]
Return true if it is playing

%gb_track_index%
[Per track (Popup)]
Position of track in item (O based)

%gb_length%
[Sort], [Item], [Popup], [Per track(Popup)]
Total length of item/track

%gb_length_seconds%
[Sort], [Item], [Popup], [Per track(Popup)]
Total length in seconds of item/track

%gb_calc_x%
%gb_calc_y%
%gb_calc_width%
%gb_calc_height%
[Item], [Popup], [Per track(Popup)]
Dimension calculations
Values change with functions below
$calc_text
$gp_calc_string
$gp_calc_string_path
$draw_image


● About functions:
Functions are divided into GDI and GDI+. They are different in pens, brushes and points.
For GDI, to set color with "r-g-b", use a base 10 number for each color component;
otherwise use base 16 number with "rrggbb". For GDI+, to set color with "a-r-g-b",
use a base 10 number for each color component and alpha channel; otherwise use
base 16 number with "aarrggbb". If you want to draw some thing with transparency
or effects like anti-aliasing, use GDI+. Some fonts (probably OpenType fonts with
PostScript outline) can't be used in GDI+ mode. Full-width hyphen can't be
displayed right in GDI+ mode.


● GDI function
$set_font(name,size,style)
Set font
name - font name
size - font size
style - style
Set multiple styles by combining options
"b" - bold
"i" - italic
"u" - underline
"s" - strikethrough

$set_font_color(color)
Set font color
color - color

$draw_text(str,x,y)
Draw text
str - string
x - start point x coordinate
y - start point y coordinate

$draw_text(str,x,y,width,height,[option1],[option2],...)
Draw text within the set limit
str - string
x - start point x coordinate
y - start point y coordinate
width - drawing width
height - drawing height
option - other option
"bottom" - draw at bottom, needs singleline
"center" - center aligned
"end_ellipsis" - if out of limit, append "...."
"left" - left aligned
"noclip" - no clip, same as no settings for width and height
"path_ellipsis" – like end_ellipsis but used for file path
"right" – right aligned
"singleline" - display with 1 line
"top" - draw at top
"vcenter" - vertical center aligned, needs singleline
"wordbreak" - display with multiple lines
"word_ellipsis" - truncates any word that does not fit in the
rectangle and adds ellipsis.
Details at [url=http://msdn2.microsoft.com/en-us/library/ms533909.aspx]http://msdn2.microsoft.com/en-us/library/ms533909.aspx[/url]

$calc_text(str)
$calc_text(str,width,height,[option1],[option2],...)
Calculate size of str when drawn.
Arguments are the same as $draw_text except x and y.
Use %gb_calc_*% to obtain values after this function.

$set_pen(color)
$set_pen(color,width)
$set_pen(color,width,style)
Pen settings
color - color
width - width[1], only effective when using "solid" style
style - style["solid"]
"solid" - solid line
"dash" - dashed line
"dot" - dotted line
"dashdot" - line with alternating dashes and dots
"dashdotdot" - line  with alternating dashes and double dots
Details at [url=http://msdn2.microsoft.com/en-us/library/ms535467(VS.85).aspx]http://msdn2.microsoft.com/en-us/library/m...467(VS.85).aspx[/url]

$set_brush(color)
$set_brush(color,style)
Brush settings
color - color
style - style: if it is not set, then brush is solid
"bdiagonal" - A 45-degree upward, left-to-right line pattern
"cross" - Horizontal and vertical cross pattern
"diagcross" - 45-degree cross pattern
"fdiagonal" - A 45-degree downward, left-to-right line pattern
"horizontal" - Horizontal line pattern
"vertical" - Vertical line pattern

$draw_rect(x,y,width,height)
Draw rectangle using pen
x - start point x coordinate
y - start point y coordinate
width - width
height - height

$fill_rect(x,y,width,height)
Fill rectangle using brush
x - start point x coordinate
y - start point y coordinate
width - width
height - height

$fill_draw_rect(x,y,width,height)
Draw rectangle using pen and brush
x - start point x coordinate
y - start point y coordinate
width - width
height - height

$round_rect(x,y,width,height,ellipse_width,ellipse_height)
Draw round corner rectangle with pen and brush
x - start point x coordinate
y - start point y coordinate
width - width
height - height
ellipse_width - ellipse width
ellipse_height - ellipse height

$draw_line(x1,y1,x2,y2)
Draw line using pen, end point is not drawn.
x1 - start point x coordinate
y1 - start point y coordinate
x2 - end point x coordinate
y2 - end point y coordinate


● GDI+ function
Because pen, brush, font do not have default values, please set them up with
$gp_set_* before using.

$gp_set_pen(argb,width)
$gp_set_pen(argb,width,style,line_join)
○ Overview:
Pen settings
○ Arguments:
argb - color
width - width
style - style ["solid"]
"solid" - solid line
"dash" - dashed line
"dot" - dotted line
"dashdot" - line with alternating dashes and dots
"dashdotdot" - line  with alternating dashes and double dots
line_join - stroke corner style ["miter"]
"miter"
"bevel"
"round"

$gp_set_brush(argb)
○ Overview:
Monocolor brush setting
○ Arguments:
argb - color

$gp_set_brush(style,argb1,argb2)
○ Overview:
Hatch brush settings
○ Argument:
style - Style
Use number in range 0 ~ 53.
Details at http://msdn2.microsoft.com/en-us/library/ms534127.aspx
argb1 - Foreground color.
argb2 - Background color.

$gp_set_brush(argb1,x1,y1,argb2,x2,y2)
○ Overview:
Set brush with linear gradual effect
○ Arguments:
argb1 - color 1
x1 - color 1 x coordinate
y1 - color 1 y coordinate
argb2 - color 2
x2 - color 2 x coordinate
y2 - color 2 y coordinate

$gp_set_font(name,size)
$gp_set_font(name,size,style_1,style_2...)
○ Overview:
Font settings
○ Arguments:
name - font name
size - font size
style - style
"b" - bold
"i" - italic
"bi" - bold and italic
"u" - underline
"s" - strikethrough

$gp_set_string_format(alignment,line_alignment,[trimming])
○ Overview:
Text drawing method settings
○ Arguments:
alignment - horizontal alignment
"near" - left
"center" - center
"far" - right
line_alignment - vertical alignment
"near" - top
"center" - center
"far" - bottom
trimming - Trimming.
"character"
"word"
"ellipsis_character"
"ellipsis_word"
"ellipsis_path"

$gp_set_smoothing_mode(antialias)
○ Overview:
Shape anti-alias setting
○ Arguments:
antialias - anti-alias
0 - disable
1 - enable

$gp_set_text_rendering_hint(mode)
○ Overview:
Text rendering method setting
○ Arguments:
mode - method
"default" - default
"sb+" - single bit per pixel grid fit
"sb" - single bit per pixel
"aa+" - anti alias grid fit
"aa" - anti alias
"ct" - clear type

$gp_draw_arc(x,y,width,height,start_angle,sweep_angle)
○ Overview:
Draw arc using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
start_angle - start angle (degree)
sweep_angle - end angle (degree)
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_ellipse(x,y,width,height)
○ Overview:
Draw ellipse using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_line(x1,y1,x2,y2)
○ Overview:
Draw line using pen
○ Arguments:
x1 - start point x coordinate
y1 - start point y coordinate
x2 - end point x coordinate
y2 - end point y coordinate
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_pie(x,y,width,height,start_angle,sweep_angle)
○ Overview:
Draw pie (fan shape) using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
start_angle - start angle (degree)
sweep_angle - end angle (degree)
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_rectangle(x,y,width,height)
○ Overview:
Draw rectangle using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_string(str,x,y)
$gp_draw_string(str,x,y,width,height)
○ Overview:
Draw string using brush
○ Arguments:
str - string
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_font
$gp_set_brush
$gp_set_text_rendering_hint
$gp_set_string_format

$gp_calc_string(str)
$gp_calc_string(str,width,height)
○ Overview
Calculate size of str when drawn

$gp_fill_ellipse(x,y,width,height)
○ Overview:
Fill ellipse using brush
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_brush
$gp_set_smoothing_mode

$gp_fill_pie(x,y,width,height,start_angle,sweep_angle)
○ Overview:
Fill pie using brush
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
start_angle - start angle (degree)
sweep_angle - end angle (degree)
○ Settings:
$gp_set_brush
$gp_set_smoothing_mode

$gp_fill_rectangle(x,y,width,height)
○ Overview:
Fill rectangle using brush
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_brush
$gp_set_smoothing_mode

$gp_draw_string_path(str,size,mode,x,y)
$gp_draw_string_path(str,size,mode,x,y,width,height)
○ Overview:
Draw string with border.
○ Arguments:
str - string
size - character size, px unit (different from current font size)
mode - draw mode
"" - fill and border
"stroke" - only border
"fill" - only fill
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_pen
$gp_set_brush
$gp_set_font
$gp_set_string_format
$gp_set_smoothing_mode
○ Examples:
$gp_set_font(Tahoma,9,b)
$gp_set_pen(ff1500ff,2,,round)
$gp_set_brush(ffddeeff)
$gp_set_string_format(center,center)
$gp_set_smoothing_mode(1)
$gp_draw_string_path(%gb_group%,16,,0,0,%gb_width%,%gb_height%)

$gp_calc_string_path(str,size,mode)
$gp_calc_string_path(str,size,mode,width,height)
○ Overview
Calculate size of str with border when drawn


● Draw image function
$draw_image(x,y,width,height,path)
$draw_image(x,y,width,height,path,alpha)
$draw_image(x,y,width,height,path,alpha,option)
$draw_image(x,y,width,height,path,alpha,option,rotate_flip)
○ Overview:
Draw image
○ Arguments:
x - starting point x coordinate
y - starting point y coordinate
width - width
height - height
path - absolute path to image, wild cards are accepted.
alpha - degree of opacity[255]
option - other options[""]
"nokeepaspect" - don't keep picture aspect ratio
"top" - draw at the top
"topright" - draw on the top right
"right" - draw from the right
"bottomright" - draw on the bottom right
"bottom" - draw at the bottom
"bottomleft" - draw on the bottom left
"left" - draw from the left
"topleft" - draw on the top left
rotate_flip - Rotation and flip [0]
0 - No rotation = Rotate right 180 degrees,
flip vertically then horizontally
1 - Rotate right 90 degrees = Rotate right 270 degrees,
flip vertically then horizontally
2 - Rotate right 180 degrees = Flip vertically then
horizontally
3 - Rotate right 270 degrees = Rotate right 90 degrees,
flip vertically then horizontally
4 - Flip horizontally = Rotate right 180 degrees,
flip vertically
5 - Rotate right 90 degrees, flip horizontally = Rotate
right 270 degrees, flip vertically
6 - Rotate right 180 degrees, flip horizontally = Flip
vertically
7 - Rotate right 270 degrees, flip horizontally = Rotate
right 90 degrees, flip vertically
○ Reference
After executing this function, you can use
%gb_calc_*% to obtain the real dimensions used.


● Other functions
$set_size(width,height)
○ Overview
Modify popup size, please use it only when drawing the popup.
Popup size is the upper limits, you can only set to smaller sizes.
%gb_width%,%gb_height% values are changed accordingly.
When width or height is 0 or less, popup won't be drawn.
○ Arguments:
width - width
height - height

$set_org(x,y)
○ Overview
Starting point setting
○ Arguments:
x - starting point x coordinate
y - starting point y coordinate

$sum(tf)
○ Overview
Calculate sum of values designated by TitleFormat.
○ Arguments:
tf - TitleFormat
○ Example: Total number played
$sum('%play_count%')


$eval(expression)
Evaluate the expression and calculate
expression - expression
E.g.: $eval(5+3)
E.g.: $eval({%gp_width%-10}/2)
※ Divide by zero expression returns 0.
Can be used with sort

● Change logs:
2008/03/16 rev014
Added - $set_size function
Added - %gb_calc_x% variable
Added - %gb_calc_y% variable
Added - %gb_calc_width% variable
Added - %gb_calc_height% variable
Added - $calc_text function
Added - $gp_calc_string function
Added - $gp_calc_string_path function
Fixed - $draw_image function
Fixed - $gp_set_string_format function(trimming argument) (however, they can always be used before,
just forgot to write here…
Fixed - Several bugs fixed

2008/03/12 rev013
Fixed - Fixed the slip happens sometimes when using keyboard to jump from item to item
Fixed - When drawing in GDI mode, fixed a drawing background bug

2008/03/11 rev012
Fixed - Fatal resource leak
Added - Image cache options

2008/03/10 rev011
Added - Ability to move focus to an item when pressing the first character of %gb_group%
using keyboard
Added - Ability to add to specified playlist instead of replacing it
Fixed - Fixed a bug that prevents you to scroll in Windows 2000 (probably...)
(TL's note: not sure about the last one, the meaning is a little vague and I don't have
Windows 2000 to test)

2008/03/09 rev010
Fixed - For some reason, I changed the variable name %gb_subitem_count% to %gb_track_count%
(the one before can still be used)
Added - Function $gp_set_brush(style,argb1,argb2)
Added - Function $set_org(x,y)
Added - Popup display  transparent mode
Added - Popup delay setting
Added - Function $sum(tf)
Added - Variable %gb_isplaying%
Added - Variable %gb_track_index%
Added - Variable %gb_length%
Added - Variable %gb_length_seconds%

2008/03/02 rev009
Fixed - Fixed the bug that causes rotateflip does nothing
Fixed - Fixed behavior when there's no scroll bar
Added - Added mouse over popup.

2008/03/02 rev008
Fixed - Fixed bug that prevent the use of wild cards in $draw_image function

2008/03/02 rev007
Added - Ability to [always show|if necessary show|hide] scroll bar
Fixed - $set_font function (style)
Fixed - $draw_image function (rotate_flip)
Added - Middle mouse button action
Added - Ability to send to specified playlist
Older change logs omitted.


● Copyright
TitleFormatting Editor
Copyright 1998-2003 by Neil Hodgson <neilh@scintilla.org> All Rights Reserved
[url=http://scintilla.sourceforge.net/]http://scintilla.sourceforge.net/[/url]
Title: foo_uie_graphical_browser
Post by: CepiPerez on 2008-02-19 21:19:08
Thanks!
Trying right now!
Can't figure out how to show images!


EDIT: I did it! But the component doesn't support my Panels UI globals variables.
Title: foo_uie_graphical_browser
Post by: simply on 2008-02-19 21:41:03
EDIT: I did it! But the component doesn't support my Panels UI globals variables.

How to do this?
I don't have no idea with this GREAT and fancy plugin...
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-02-19 21:51:47
Here is basically what I have to show the cover of each of my albums, and when selected has a diagonal selection rectangle overtop of the image:

Code: [Select]
$draw_image(0,0,%_width%,%_height%,
$if($cwb_fileexists(PATH_TO_MY_ALBUM_ART),PATH_TO_MY_ALBUM_ART,PATH_TO_MY_NO_ART_IMAGE))

$if(%_focused%,
  $set_pen(808080,1)
  $set_brush(128-192-255,fdiagonal)
  $round_rect(0,0,%_width%,%_height%,5,5)
,)
Title: foo_uie_graphical_browser
Post by: PredUK on 2008-02-19 23:55:00
Wow. Nice plugin. Shame my music collection is mostly coverless at this point in time.

But for those with more commercial music tastes and thus have albums with covers, this would be great!
Title: foo_uie_graphical_browser
Post by: dannymichel on 2008-02-20 00:47:08
cool,
thanks
ill try it
Title: foo_uie_graphical_browser
Post by: bowen_tk on 2008-02-20 01:27:46
it works nice but need some improvement and a good english translation
Thanks a lot
Perhaps it will allow us to make the same interface as the zune software which is prettu cool i think
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-02-20 02:20:00
The one thing I wish it had was the ability for the rectangles to be alpha transparent.

I'm glad people are enjoying this plugin tho. Many cool things can be found on the japanese wiki .
Title: foo_uie_graphical_browser
Post by: Darkchaser on 2008-02-20 03:05:48
That's a very nice plugin. Any easy way to implement it for foobar newbies? 
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-02-20 23:13:12
Where is this getting its list of tracks from?

I can get it to display an image for the current track (i.e the first track in the active playlist)- but not anything else.
Title: foo_uie_graphical_browser
Post by: shakey_snake on 2008-02-20 23:19:28
That's a very nice plugin. Any easy way to implement it for foobar newbies? 

we're all new to this component. 
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-02-20 23:54:37
Where is this getting its list of tracks from?

I can get it to display an image for the current track (i.e the first track in the active playlist)- but not anything else.


Some progress:

top box is where you specify grouping criteria (e.g. %album%)
drop down on lhs seems to be display "rows by columns" or "columns by rows".
Title: foo_uie_graphical_browser
Post by: stampgevaar on 2008-02-21 12:22:53
nicee component
Title: foo_uie_graphical_browser
Post by: Melomane on 2008-02-21 13:49:27
w: 120 h:150
sort:  $num(%gb_playlist_number%,10)

Code: [Select]
$set_font(Tahoma,8)

$if(%gb_focused%,
  $set_pen(808080,1)
  $set_brush(51-153-255)
  $round_rect(0,0,%gb_width%,%gb_height%,5,5)
$set_font_color(ffffff)
,
$set_font_color(000000)
)

$if(%gb_mouse_over%,
$set_pen(303030,1)
//$set_brush(191-223-255)
$round_rect(0,0,%gb_width%,%gb_height%,5,5)
,)

$draw_image(1,1,$eval(%gb_width%-2),$eval(%gb_width%-2),$replace(%path%,%filename_ext%,)folder.jpg,255,nokeepaspect)
$draw_image(1,1,$eval(%gb_width%-2),$eval(%gb_width%-2),$replace(%path%,%filename_ext%,)cover.jpg,255,nokeepaspect)
$draw_text(%album artist%,5,%gb_width%,$eval(%gb_width%-5),%gb_width%,center,end_ellipsis)
$draw_text(%album%,5,$eval(%gb_width%+14),$eval(%gb_width%-5),%gb_width%,center,end_ellipsis)
Title: foo_uie_graphical_browser
Post by: nightfishing on 2008-02-21 14:09:27
Works pretty well (not too power hungry).

If anyone figures out if/how you can control what clicking on a cover does, please post.

Thanks.l
Title: foo_uie_graphical_browser
Post by: Garfield4 on 2008-02-21 16:19:23
my script:
display vertical rectangle with cover , artist date and album text
colours match green xp theme

group ( first edit box) :
$if(%album%,$upper(%album artist%) $if($meta(album artist),,%date%)%album%,@skip)

width 180 height 220

code:
Code: [Select]
$if(%_focused%,
  $set_pen(808080,1)
  $set_brush(147-160-112)
  $round_rect(0,0,%_width%,%_height%,5,5)
$set_font(Tahoma,9)

$set_font_color(255-255-255)
$draw_text(%album artist% - ['('%date%') ']%album%,2,$add(%_width%,5),$sub(%_width%,6),$sub($sub(%_height%,%_width%),10),center,wordbreak)
,
$set_font(Tahoma,9)
$set_font_color(0-0-0)
$draw_text(%album artist% - ['('%date%') ']%album%,2,$add(%_width%,5),$sub(%_width%,6),$sub($sub(%_height%,%_width%),10),center,wordbreak)
)

$draw_image(2,2,$sub(%_width%,4),$sub(%_width%,4),
$if($cwb_fileexists($replace(%path%,%filename_ext%,)cover.jpg),$replace(%path%,%filename_ext%,)cover.jpg,$if($cwb_fileexists($replace(%path%,%filename_ext%,)folder.jpg),$replace(%path%,%filename_ext%,)folder.jpg,C:\Program Files\foobar2000\default.jpg)))


After ages only managing to show a default picture - I worked out I needed foo_cwb_hooks  - thanks for the code
Title: foo_uie_graphical_browser
Post by: larryT on 2008-02-21 17:52:53
Hi !!

  newbie, sorry.......


the component is in place, but............................nothing.  I don't see anything with this name : graphical_browser, in the "preferences" or the "menu"

Please, where can I find something to make it work ?   


thanks a lot.
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-02-21 22:11:29
Hi !!

  newbie, sorry.......


the component is in place, but............................nothing.  I don't see anything with this name : graphical_browser, in the "preferences" or the "menu"

Please, where can I find something to make it work ?   


thanks a lot.


Open it as a panel under panels ui then right click on it - up comes a "settings" option.
Title: foo_uie_graphical_browser
Post by: bertox on 2008-02-21 22:35:09
Thank you Melomane!!!!:


Now, how i change the background?? It stills in white colour....

and the fonts colour??

Can add some other things in text like genre, artist, format (flac, mp3,...)???

Thanks.
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-02-21 23:54:14
Thank you Melomane!!!!:


Now, how i change the background?? It stills in white colour....

and the fonts colour??

Can add some other things in text like genre, artist, format (flac, mp3,...)???

Thanks.



Check out the first post, I posted a screen shot of the dialog window. The background color can be changed with the bottom left button (its in japanese and pops up a color picker).

Font color is explained in the readme.

To add things like genre, artist, etc just use the tags for the corresponding tag you want to show (genre = %genre% etc). I am pretty sure that this component uses the basic titleformatting language of foobar itself:
http://wiki.hydrogenaudio.org/index.php?ti...ormat_Reference (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Titleformat_Reference)
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-02-22 00:46:13
my script:
display vertical rectangle with cover , artist date and album text
colours match green xp theme

group ( first edit box) :
$if(%album%,$upper(%album artist%) $if($meta(album artist),,%date%)%album%,@skip)

width 180 height 220


What does @skip do?  - I don't think I've seen this used in Foobar before.
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-02-22 00:53:28
What does @skip do?  - I don't think I've seen this used in Foobar before.


I am almost positive that it will skip any track with no %album% tag. Try it yourself; remove the album tag and nothing will show up for that song. Thats what it seems to do for me anyways.
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-02-22 01:04:18
Thank you Melomane!!!!:


Now, how i change the background?? It stills in white colour....

and the fonts colour??

Can add some other things in text like genre, artist, format (flac, mp3,...)???

Thanks.


To change background colour -

put this at the start of the settings, change the 192-192-192 to the code of the colour you want

$set_pen(192-192-192,1)
$set_brush(192-192-192)
$fill_draw_rect(0,0,%_width%,%_height%)


To change font colour use:

$set_font_color(0-0-0)

(the bottom left hand button opens a colour picker)
Title: foo_uie_graphical_browser
Post by: Melomane on 2008-02-22 01:14:33
with the bottom left hand button you can put color for the global background

@skip : not display item
for exemple:
$if(%album%,$upper(%album artist%) $if($meta(album artist),,%date%)%album%,@skip)

if album when sort by $upper(album artist) [ workaround for sorting bug ] when bydate if not value in album artist  when album else not display item
Title: foo_uie_graphical_browser
Post by: bertox on 2008-02-22 01:18:20
Quote
Check out the first post, I posted a screen shot of the dialog window.


Thank you very much!!!!.


Quote
To change font colour use:

$set_font_color(0-0-0)


(0-0-0) means RGB??


How change the fonts shadows colour and size and the fonts size??
Title: foo_uie_graphical_browser
Post by: odyssey on 2008-02-22 07:41:53
How change the fonts shadows colour and size and the fonts size??

This component comes with a .txt file - Why don't you give it a read???
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-02-22 15:41:22
New version is up, check out my first post for a link .
Title: foo_uie_graphical_browser
Post by: nightfishing on 2008-02-22 18:09:08
doesn't quite call on the correct "actions"

Edit other>Send to Specified Playlist (should call on available playlists, but it doesn't grab the actual playlists)

i.e Send to playlist\new tracks

Once they get that sorted out I may have a replacement for Album Art Browser.

pic:  http://www.halfbakedschemes.com/test/graphic.jpg (http://www.halfbakedschemes.com/test/graphic.jpg)
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-02-22 19:00:44
A new version has just been released again, maybe this one might fix your problems nightfishing?

Check the first post again .
Title: foo_uie_graphical_browser
Post by: bubbleguuum on 2008-02-22 19:34:44
Interesting plugin. The funny thing is that I was thinking of a special mode like this plugin for bubble cover flow a few weeks ago (no promise though).
Title: foo_uie_graphical_browser
Post by: odyssey on 2008-02-22 19:58:47
This brings me in a great dilemma... I really love the Facets plugin, but with this album browser, ColumnsUI is more appealing
Title: foo_uie_graphical_browser
Post by: nightfishing on 2008-02-22 20:23:11
This brings me in a great dilemma... I really love the Facets plugin, but with this album browser, ColumnsUI is more appealing


I run it in a dockable panel with DUI.
Title: foo_uie_graphical_browser
Post by: odyssey on 2008-02-23 12:31:43
I must be insanely dumb... Can't get it to show ANYTHING. I'm down to basics now:

$draw_image(0,0,%gb_width%,%gb_height%,$replace(%path%,%filename_ext%,front.jpg))

Edit: %_width% were renamed to %gb_width% etc... I followed my own previously good example to read the manual
Title: foo_uie_graphical_browser
Post by: Melomane on 2008-02-23 13:26:54
new script
use mouseover to display album -artist

220*220
Code: [Select]
 $if(%gb_focused%,
   $set_pen(808080,1)
   $set_brush(49-106-199)
   $round_rect(0,0,%gb_width%,%gb_height%,5,5)
,)

$draw_image(8,8,$eval(%gb_width%-16),$eval(%gb_width%-16),$if($cwb_fileexists($replace(%path%,%filename_ext%,)cover.jpg),$replace(%path%,%filename_ext%,)cover.jpg,$if($cwb_fileexists($replace(%path%,%filename_ext%,)folder.jpg),$replace(%path%,%filename_ext%,)folder.jpg,C:\Program Files\foobar2000\default.jpg)),255,nokeepaspect)

$if(%gb_mouse_over%,

   $set_pen(808080,1)
   $set_brush(235-235-235)
   $round_rect($eval(%gb_width%/12),$eval(%gb_height%/6*5-8),$eval(%gb_width%/6*5),$eval(%gb_height%/6+8),20,20)

$gp_set_font(Tahoma,9)
$gp_set_string_format(center,center)
$gp_set_brush(ff000000)
$gp_draw_string(%artist% - %album%,$eval(%gb_width%/12+5),$eval(%gb_height%/6*5-8),$eval(%gb_width%/6*5-10),$eval(%gb_height%/6+8))
,)
Title: foo_uie_graphical_browser
Post by: thuan on 2008-02-23 14:25:13
Well, this is the first component that makes me go against my KISS principle. Here's my code:
Code: [Select]
$puts(imagePath,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)front.jpg),
$replace(%path%,%filename_ext%,)front.jpg,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)cover.jpg),
$replace(%path%,%filename_ext%,)cover.jpg,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)folder.jpg),
$replace(%path%,%filename_ext%,)folder.jpg,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)front.png),
$replace(%path%,%filename_ext%,)front.png,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)cover.png),
$replace(%path%,%filename_ext%,)cover.png,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)folder.png),
$replace(%path%,%filename_ext%,)folder.png,
$if($cwb_fileexists($replace(%path%,%directory%\%filename_ext%,)front.jpg),
$replace(%path%,%directory%\%filename_ext%,)front.jpg,
$if($cwb_fileexists($replace(%path%,%directory%\%filename_ext%,)cover.jpg),
$replace(%path%,%directory%\%filename_ext%,)cover.jpg,
$if($cwb_fileexists($replace(%path%,%directory%\%filename_ext%,)folder.jpg),
$replace(%path%,%directory%\%filename_ext%,)folder.jpg,
$if($cwb_fileexists($replace(%path%,%directory%\%filename_ext%,)front.png),
$replace(%path%,%directory%\%filename_ext%,)front.png,
$if($cwb_fileexists($replace(%path%,%directory%\%filename_ext%,)cover.png),
$replace(%path%,%directory%\%filename_ext%,)cover.png,
$if($cwb_fileexists($replace(%path%,%directory%\%filename_ext%,)folder.png),
$replace(%path%,%directory%\%filename_ext%,)folder.png,
'.\components\default.png'
)
)
)
)
)
)
)
)
)
)
)
)
)

$draw_image(0,0,%gb_height%,%gb_height%,
$get(imagePath),
$if(%gb_focused%,255,128)
)

$if(%gb_mouse_over%,
  $gp_set_pen(669800ff,4)
  $gp_draw_rectangle(0,0,%gb_width%,%gb_height%)
,)

$if(%gb_focused%,
  $set_pen(000000,4)
  $draw_rect(0,0,%gb_width%,%gb_height%)
,
  $gp_set_font(Tahoma,9)
  $gp_set_text_rendering_hint(ct)
  $gp_set_string_format(center,center)
  $gp_set_brush(66000000)
  $gp_draw_string(%gb_group%,3,3,$eval(%gb_width%-6),$eval(%gb_height%-6))
  $gp_set_brush(ff000000)
  $gp_draw_string(%gb_group%,2,2,$eval(%gb_width%-6),$eval(%gb_height%-6))
)

This code display inactive albums with half transparent covers and album names. Active one is shown normally and without caption.
Title: foo_uie_graphical_browser
Post by: pIv on 2008-02-24 09:38:45
It is possible display album covers in order as songs placed in playlist?
Title: foo_uie_graphical_browser
Post by: thuan on 2008-02-24 10:07:40
Just use the same sort string for your playlist and this panel sort string in its settings. Still, the way foobar sort characters is a little weird so you may encounter inconsistency with certain characters.
Title: foo_uie_graphical_browser
Post by: 5eweryn on 2008-02-24 10:47:29
Great plugin!
My script:
GROUP:
Code: [Select]
$if(%totaltracks%,%album artist% %album%,@skip)

SORT:
Code: [Select]
%album artist%$if($meta(album artist),,%date%)%album%

ITEM SIZE: 58x58
DRAW:
Code: [Select]
$if(%gb_focused%,
  $set_pen(808080,1)
  $set_brush(206-56-40)
  $round_rect(0,0,%gb_width%,%gb_height%,5,5)
$puts(tra,210)
,
$puts(tra,255)
)

$gp_set_font(Tahoma,8)
$gp_set_brush(33000000)
$gp_set_string_format(center,center)
$gp_draw_string(%gb_group%,3,3,$eval(%gb_width%-6),$eval(%gb_height%-6))
$gp_set_brush(ff6b2b21)
$gp_draw_string(%gb_group%,2,2,$eval(%gb_width%-6),$eval(%gb_height%-6))

$if(%gb_mouse_over%,
  $gp_set_pen(66ce3828,4)
  $gp_draw_rectangle(0,0,%gb_width%,%gb_height%)
,)

$draw_image(2,2,$eval(%gb_width%-4),$eval(%gb_width%-4),
$if($cwb_fileexists($replace(%path%,%filename_ext%,)cover.jpg),$replace(%path%,%filename_ext%,)cover.jpg,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)front.jpg),$replace(%path%,%filename_ext%,)front.jpg,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)folder.jpg),$replace(%path%,%filename_ext%,)folder.jpg,
))),$get(tra),nokeepaspect)

(http://images33.fotosik.pl/155/2eccd7fe8b7e5d40m.jpg) (http://www.fotosik.pl/showFullSize.php?id=2eccd7fe8b7e5d40)
To work you need:
- "foo_cwb_hooks.dll" plugin instaled,
- metafield %totaltracks% enteried,
Title: foo_uie_graphical_browser
Post by: Falstaff on 2008-02-24 16:08:39
Great plugin !!!

here is what i'm working on for this components to implement it on my next PUI config :

(http://xs124.xs.to/xs124/08080/gb01736.jpg)
Title: foo_uie_graphical_browser
Post by: DocBeard on 2008-02-24 21:20:37
Is there any English documentation out there, or is the included text file (which I didn't find *terribly* helpful) and this thread pretty much it?
Title: foo_uie_graphical_browser
Post by: nightfishing on 2008-02-24 21:59:49
not sure if the dev's troll 'round here, but...

1) It would be more useful (to me) if there was an option to view the entire library (and the view wouldn't follow the active playlist.) Currently if you select a cover and send it's contents to a playlist, the view then consists of only covers on that playlist. (view follows playback). As a browsing tool, this behavior makes it pretty much unuasble (for me)

2) bug: problem with context menu entries (see pic). Edit other does not access the actual playlists.

http://www.halfbakedschemes.com/test/test.html (http://www.halfbakedschemes.com/test/test.html)


Hoping to see this continue....
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-02-24 22:18:11
New version is out, see the first post for a download link .

Here is a list of changes translated from the readme:

Changes:
- Correcting the specification where exception comes out due to panel size
- Setting scroll interval (seems to be by pixels)
Title: foo_uie_graphical_browser
Post by: Falstaff on 2008-02-24 23:05:34
not sure if the dev's troll 'round here, but...

1) It would be more useful (to me) if there was an option to view the entire library (and the view wouldn't follow the active playlist.) Currently if you select a cover and send it's contents to a playlist, the view then consists of only covers on that playlist. (view follows playback). As a browsing tool, this behavior makes it pretty much unuasble (for me)

2) bug: problem with context menu entries (see pic). Edit other does not access the actual playlists.

http://www.halfbakedschemes.com/test/test.html (http://www.halfbakedschemes.com/test/test.html)


Hoping to see this continue....


"the view wouldn't follow the active playlist", yep it's a real problem, so sort order is not hte same that the one of the SCPL ...
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-02-24 23:23:28
not sure if the dev's troll 'round here, but...

1) It would be more useful (to me) if there was an option to view the entire library (and the view wouldn't follow the active playlist.) Currently if you select a cover and send it's contents to a playlist, the view then consists of only covers on that playlist. (view follows playback). As a browsing tool, this behavior makes it pretty much unuasble (for me)


I completely agree. I have sent the link to this thread to the develper, but I don't know if they have taken a look yet (or if they will). They told me they don't understand english very well, so I doubt they are focusing on this thread. I did tell them that this place is great for finding bugs and being beta testers however, so hopefully they've taken a peek here .
Title: foo_uie_graphical_browser
Post by: thuan on 2008-02-25 00:58:40
I and my friend are currently translating the readme. It'll be out when it's done. And I will ask Keikonium to put it in the first post.
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-02-25 01:29:43
I and my friend are currently translating the readme. It'll be out when it's done. And I will ask Keikonium to put it in the first post.


Sounds great! I had tried translating it with babelfish, but the japanese -> english got more and more... oddly worded. So I gave up lol. Just PM me when you're done it
Title: foo_uie_graphical_browser
Post by: Falstaff on 2008-02-25 07:32:06

not sure if the dev's troll 'round here, but...

1) It would be more useful (to me) if there was an option to view the entire library (and the view wouldn't follow the active playlist.) Currently if you select a cover and send it's contents to a playlist, the view then consists of only covers on that playlist. (view follows playback). As a browsing tool, this behavior makes it pretty much unuasble (for me)

2) bug: problem with context menu entries (see pic). Edit other does not access the actual playlists.

http://www.halfbakedschemes.com/test/test.html (http://www.halfbakedschemes.com/test/test.html)


Hoping to see this continue....


"the view wouldn't follow the active playlist", yep it's a real problem, so sort order is not hte same that the one of the SCPL ...


An answer from the author that i've just received and that i share with you :

"
Hello.

If you want to sort these items like activeplaylist,
please use like this to the Sort setting.

$num(%gb_playlist_number%,10)
...
"

not tested yet, i goto work for now
Title: foo_uie_graphical_browser
Post by: thuan on 2008-02-25 11:30:04
Well, from our translation:
Code: [Select]
    %gb_subitem_count%        
        subitem count (can be used with sort)

    %gb_playlist_number%
        playlist number(can be used with sort)

So yes, you can use them in sort strings. I should have read my own work, before answering lol.

EDIT: I plan to include more detail for each variables and functions, too. As what the original author uses for each of them are a little vague.
Title: foo_uie_graphical_browser
Post by: joaotavela on 2008-02-26 23:12:49
Finally!! Works Fine!!
Many, many Thanks!!
(http://img352.imageshack.us/img352/1233/screenhunter006ln4.jpg)
Title: foo_uie_graphical_browser
Post by: m-z on 2008-02-26 23:25:12
^
Wow, that looks really cool! Could you share your code and image/s?
Title: foo_uie_graphical_browser
Post by: pIv on 2008-02-27 05:43:24
I have one sugestion.

It is possible display GB in separate window, as it is released in foo_bubble_coverflow.dl?

I use DUI and I must display GB in dockable panel, but when I collapse Foobar to tray GB panel also collapsed.

I want see GB window not collapsed, when I use collapsed Foobar to tray, as it made in bubble_coverflow window mode.
Title: foo_uie_graphical_browser
Post by: bulhakov on 2008-02-27 08:18:11
Hello, I've got quick question. If it's possible to hide srollbar without using other panel?
Title: foo_uie_graphical_browser
Post by: Melomane on 2008-02-27 09:02:06
I have one sugestion.

It is possible display GB in separate window, as it is released in foo_bubble_coverflow.dl?

I use DUI and I must display GB in dockable panel, but when I collapse Foobar to tray GB panel also collapsed.

I want see GB window not collapsed, when I use collapsed Foobar to tray, as it made in bubble_coverflow window mode.


see in the option of dockable panel
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-02-27 15:26:46
New version is out!

Check the first post for a link .

Changes in this build (used babelfish to translate, and worded it with better meaning, so might be slightly off):

* Added - loading images with wildcards
* Added - $gp_draw_string_path function added
* Fixed - Increased scroll size (used to cap off at 200, now it's 1000)
* Fixed - Most functions now accept negative values
* Fixed - $gp_set_pen function fixed
* Fixed - $gp_set_brush function fixed
Title: foo_uie_graphical_browser
Post by: joaotavela on 2008-02-27 22:34:13
^
Wow, that looks really cool! Could you share your code and image/s?

The Code is the same posted by "melomane"... I only add overlays.
Title: foo_uie_graphical_browser
Post by: bulhakov on 2008-02-27 23:08:52
It's great but I need one more thing - transparent background...
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-02-28 00:37:48
It's great but I need one more thing - transparent background...


agreed. I wish this were possible too >.<. Maybe in a future release
Title: foo_uie_graphical_browser
Post by: thuan on 2008-02-28 01:08:57
@joaotavela: Well, I haven't figured out that overlay part. Can you share that part?

@Keikonium: Please put up the version for the readme file. In case, there's a time lag between his release and my translation so it won't cause any confusion.
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-02-28 02:17:22
@joaotavela: Well, I haven't figured out that overlay part. Can you share that part?

@Keikonium: Please put up the version for the readme file. In case, there's a time lag between his release and my translation so it won't cause any confusion.


will do .
Title: foo_uie_graphical_browser
Post by: joaotavela on 2008-02-28 02:19:18
@joaotavela: Well, I haven't figured out that overlay part. Can you share that part?

@Keikonium: Please put up the version for the readme file. In case, there's a time lag between his release and my translation so it won't cause any confusion.

code and image links

Code: [Select]
$if(%gb_focused%,
$set_pen(808080,1)
$set_brush(147-160-112)
$round_rect(4,4,$eval(%gb_width%-14),$eval(%gb_width%-36),5,5)

$gp_set_font(Tahoma,9)
$gp_set_string_format(center,near)
$gp_set_brush(ffffffff)
$gp_draw_string(%gb_group%,2,%gb_width%,$eval(%gb_width%-6),$eval(%gb_height%-6))
,
$gp_set_font(Tahoma,9)
$gp_set_string_format(center,near)
$gp_set_brush(ff000000)
$gp_draw_string(%gb_group%,2,%gb_width%,$eval(%gb_width%-6),$eval(%gb_height%-6))
)


$if(%gb_mouse_over%,
$gp_set_pen(669800ff,4)
$gp_draw_rectangle(0,0,$eval(%gb_width%-2),$eval(%gb_width%-26))
,)

$draw_image(18,3,$eval(%gb_width%-25),$eval(%gb_width%-32),$if($cwb_fileexists($replace(%path%,%filename_ext%,)cover.jpg),$replace(%path%,%filename_ext%,)cover.jpg,$if($cwb_fileexists($replace(%path%,%filename_ext%,)folder.jpg),$replace(%path%,%filename_ext%,)folder.jpg,C:\Program Files\foobar2000\default.jpg)),255,nokeepaspect)
$draw_image(0,0,$eval(%gb_width%-2),$eval(%gb_width%-26),C:\Your Foobar Images Directory/cdcaseck3.png,255,NOKEEPASPECT )
$draw_image(18,3,$eval(%gb_width%-2),$eval(%gb_width%-26),C:\Your Foobar Images Directory/glareyo0.png,50,NOKEEPASPECT)


CD Case Image (http://img267.imageshack.us/img267/8325/cdcaseck3.png)
Glare image (http://img171.imageshack.us/img171/5822/glareyo0.png)
Title: foo_uie_graphical_browser
Post by: thuan on 2008-02-28 12:38:28
Thank you, with your pictures, now I can make it work.
Here's how my config currently looks like
(http://img176.imageshack.us/img176/1145/final1sq2.th.png) (http://img176.imageshack.us/my.php?image=final1sq2.png)
and when mouse over is on an album (in this case, TAM no Fukubukuro)
(http://img168.imageshack.us/img168/9559/final2xp0.th.png) (http://img168.imageshack.us/my.php?image=final2xp0.png)
Group:
Code: [Select]
$if2(%album%,@skip)
Sort:
Code: [Select]
$num(%gb_playlist_number%,10)
Type: Vertical Scroll
Size: 120x114
Code: [Select]
$puts(imagePath,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)cover.jpg),
$replace(%path%,%filename_ext%,)cover.jpg,
$if($cwb_fileexists($replace(%path%,%directory%\%filename_ext%,)cover.jpg),
$replace(%path%,%directory%\%filename_ext%,)cover.jpg,
'.\components\default.png'
)
)
)

$draw_image(3,4,$eval(%gb_width%-2),$eval(%gb_height%-8),
'.\components\cdcaseck3.png',
255,
nokeepaspect
)

$draw_image(16,6,$eval(%gb_width%-18),$eval(%gb_height%-12),
$get(imagePath),
$if(%gb_mouse_over%,150,255),
nokeepaspect
)


$draw_image(16,6,$eval(%gb_width%-18),$eval(%gb_height%-12),
'.\components\glareyo0.png',
50,
nokeepaspect
)

$if(%gb_focused%,
,
  $gp_set_font(Tahoma,9,b)
  $gp_set_text_rendering_hint(ct)
  $gp_set_smoothing_mode(1)
  $gp_set_string_format(center,center)
  $if(%gb_mouse_over%,
    $gp_set_pen(255-255-255-255,3,,bevel)
    $gp_set_brush(255-0-0-0),
    $gp_set_pen(255-0-0-0,3,,bevel)
    $gp_set_brush(255-255-255-255)
  )
  $gp_draw_string_path(%gb_group%,12,,4,4,$eval(%gb_width%-6),$eval(%gb_height%-6)) 
)

EDIT: Forget to mention that you need the CD case image and glare image in joaotavela's post above.
Title: foo_uie_graphical_browser
Post by: Varluche on 2008-02-28 19:04:55
Hi all.
I installed graphical browser in a dockable panel since I am using DefaultUI.
I tried all codes posted here but I get plain colour squares instead of art everytime I scroll the mouse. I thought of my video card drivers but this cannot be the issue since the cover flow component works fine in a dockable panel on my computer.
Any help would be much appreciated. Thanks.
Title: foo_uie_graphical_browser
Post by: m-z on 2008-02-28 21:35:56
You probably need to change the filenames of the art files in those codes.

For example, modify this:
Code: [Select]
$replace(%path%,%filename_ext%,)cover.jpg)

To this:
Code: [Select]
$replace(%path%,%filename_ext%,)folder.jpg)


Or, you may need the foo_cwb_hooks component...
Title: foo_uie_graphical_browser
Post by: nightfishing on 2008-03-01 22:30:07
anyone figure out the new features in rev 007?

It appears to have added the option of specifying the playlist the items get sent to, but I can't get it to do anything.

Would like to know the translation for the new check box, also ;-)
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-03-01 23:20:05
anyone figure out the new features in rev 007?

It appears to have added the option of specifying the playlist the items get sent to, but I can't get it to do anything.

Would like to know the translation for the new check box, also ;-)


Got it working:

choose the  "(send to playlist)" action from the top of the list.

The new checkbox label means:

"The feed function to the play list which it appoints"

It seems to control whether the graphical brower refreshes itself with the contents of the new playlist or remains as it was before the selection action.


To the developer: many thanks for a fantastic plug-in!
Title: foo_uie_graphical_browser
Post by: nightfishing on 2008-03-01 23:33:51
Got it working:

choose the  "(send to playlist)" action from the top of the list.


DOH!

I feel dumb, now :-(

Thank you!

And Thanks to the developers!!

"(Send to Playlist AND PLAY)" would be great!
Title: foo_uie_graphical_browser
Post by: BuM on 2008-03-02 02:02:08
Can "item size" be changed with image size?

Im trying to enlarge the image using mouse over with out having a huge gap in between
the image's
right now my item size is 300x300 and im useing

$draw_image(0,0,176,176,
$get(imagePath),
$if(%gb_focused%,255,128)
)

$if(%gb_mouse_over%,
$draw_image(0,0,300,300,
$get(imagePath)))

from thuan's (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=61412&view=findpost&p=549065) code
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-03-02 03:25:33
Another new version, check first post again .

Changes:
- Fixed a bug that didn't allow draw image to use wildcards.
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-03-02 04:08:57
Just in case, the developer(s) are watching:

It would be more useful (to me) if the view wouldn't follow the active playlist but stayed fixed based a particular, specified, playlist.

I'm finding that the current behavior is making it very difficult for me to use as a browser.
Title: foo_uie_graphical_browser
Post by: nightfishing on 2008-03-02 04:26:50
Kiteroa,

If you use the new "send to playlist" function, it will stay on the originsl view you chose after sending the selected items to the playlist.

I agree that being able to "lock" it to a specific playlist would be great (like Album Art browser works), but this new behavior does make it much more usable.

The devs ARE listening (and are working quite quickly :-)
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-02 04:39:57
@Bum: AFAIK, no as of now.

@Keikonium: I've sent you the new readme.

EDIT: OT: new version of uie_lyrics_art was released with certain implementation that will make my translation cleaner. I will officially release it when it's done as I have his permission now.
Title: foo_uie_graphical_browser
Post by: ZeeJay on 2008-03-02 07:00:28
It's a great plugin!
I intended to display some "playing" icon on the cover for the current playing album.
But, it did not work:

Code: [Select]
$if(%isplaying%,
$draw_image($eval({%gb_width%/2}-25),$eval({%gb_height%/2}-25),50,50,
D:\Imagens\Capas de Discos\play.png,
200,)
)

Does %isplaying% really work here or I'm doing something wrong?
Title: foo_uie_graphical_browser
Post by: buktore on 2008-03-02 10:25:16
Wow! the new version with the popup thingy is great! 

Check it out ASAP!
Title: foo_uie_graphical_browser
Post by: nightfishing on 2008-03-02 17:41:15
007 started causing playback issues for me, so I had to remove it.

After using it for an hour or two, I would start getting some serious hiccups in playback at the start of tracks. Closing/reopening foobar would "fix" the issue.

Not sure what the connection would be, but I do not have the issue with the component removed.
Title: foo_uie_graphical_browser
Post by: Yotsuya on 2008-03-03 07:39:34
I can confirm this component works well in wine:
(http://img147.imageshack.us/img147/8199/gbptd4.th.png) (http://img147.imageshack.us/my.php?image=gbptd4.png)

Also I noticed that the $draw_image() function appears to return true/false based on if it is successful so you can get away with doing something like this instead of using cwb_fileexists (which doesnt appear to support wildcards):

Code: [Select]
$puts(cover,$replace(%path%,%filename_ext%,%album artist% - %title%.*))
$puts(nocover,images\nocover.png)

$if2(
  $draw_image(0,0,%gb_width%,%gb_height%,$get(cover))
,
  $draw_image(0,0,%gb_width%,%gb_height%,$get(nocover))
)
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-03 08:31:28
@Yotsuya: That's a nice find.

I update my code found in my previous post (http://www.hydrogenaudio.org/forums/index.php?showtopic=61412&st=60#) to this
Code: [Select]
$puts(cpath1,$replace(%path%,%filename_ext%,*))
$puts(cpath2,$replace(%path%,%directory%\%filename_ext%,*))

$puts(nocover,components\default.png)

$puts(ox,$eval(%gb_width%-4))
$puts(oy,$eval(%gb_height%-10))
$puts(ix,$eval(%gb_width%-20))
$puts(iy,$eval(%gb_height%-14))

$draw_image(3,4,$get(ox),$get(oy),'.\components\cdcaseck3.png',255,nokeepaspect)

$if3(
$draw_image(16,6,$get(ix),$get(iy),$get(cpath1),$if(%gb_mouse_over%,150,255),nokeepaspect),
$draw_image(16,6,$get(ix),$get(iy),$get(cpath2),$if(%gb_mouse_over%,150,255),nokeepaspect),
$draw_image(16,6,$get(ix),$get(iy),$get(nocover),$if(%gb_mouse_over%,150,255),nokeepaspect)
)

$draw_image(16,6,$get(ix),$get(iy),'.\components\glareyo0.png',50,nokeepaspect)

$if(%gb_focused%,
,
$gp_set_font(Tahoma,9,b)
$gp_set_text_rendering_hint(ct)
$gp_set_smoothing_mode(1)
$gp_set_string_format(center,center)
$if(%gb_mouse_over%,
$gp_set_pen(255-255-255-255,3,,bevel)
$gp_set_brush(255-0-0-0),
$gp_set_pen(255-0-0-0,3,,bevel)
$gp_set_brush(255-255-255-255)
)
$gp_draw_string_path(%gb_group%,12,,3,4,$get(ox),$get(oy))
)
Remember to change image source vars to suit your configuration. Other settings and requirements are the same as my previous post.
BTW, somehow I feel that the popup function is a little inelegant so I don't use it.
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-03-03 23:41:25
This just keeps gettting better - well done!

@Yotsuya: That's a nice find.

I update my code found in my previous post (http://www.hydrogenaudio.org/forums/index.php?showtopic=61412&st=60#) to this
Code: [Select]
$puts(cpath1,$replace(%path%,%filename_ext%,*))
$puts(cpath2,$replace(%path%,%directory%\%filename_ext%,*))

$puts(nocover,components\default.png)

$puts(ox,$eval(%gb_width%-4))
$puts(oy,$eval(%gb_height%-10))
$puts(ix,$eval(%gb_width%-20))
$puts(iy,$eval(%gb_height%-14))

$draw_image(3,4,$get(ox),$get(oy),'.\components\cdcaseck3.png',255,nokeepaspect)

$if3(
$draw_image(16,6,$get(ix),$get(iy),$get(cpath1),$if(%gb_mouse_over%,150,255),nokeepaspect),
$draw_image(16,6,$get(ix),$get(iy),$get(cpath2),$if(%gb_mouse_over%,150,255),nokeepaspect),
$draw_image(16,6,$get(ix),$get(iy),$get(nocover),$if(%gb_mouse_over%,150,255),nokeepaspect)
)

$draw_image(16,6,$get(ix),$get(iy),'.\components\glareyo0.png',50,nokeepaspect)

$if(%gb_focused%,
,
$gp_set_font(Tahoma,9,b)
$gp_set_text_rendering_hint(ct)
$gp_set_smoothing_mode(1)
$gp_set_string_format(center,center)
$if(%gb_mouse_over%,
$gp_set_pen(255-255-255-255,3,,bevel)
$gp_set_brush(255-0-0-0),
$gp_set_pen(255-0-0-0,3,,bevel)
$gp_set_brush(255-255-255-255)
)
$gp_draw_string_path(%gb_group%,12,,3,4,$get(ox),$get(oy))
)
Remember to change image source vars to suit your configuration. Other settings and requirements are the same as my previous post.
BTW, somehow I feel that the popup function is a little inelegant so I don't use it.

If you put them in this order you don't even need the $if3

$draw_image(16,6,$get(ix),$get(iy),$get(nocover),$if(%gb_mouse_over%,150,255),nokeepaspect)
$draw_image(16,6,$get(ix),$get(iy),$get(cpath2),$if(%gb_mouse_over%,150,255),nokeepaspect)
$draw_image(16,6,$get(ix),$get(iy),$get(cpath1),$if(%gb_mouse_over%,150,255),nokeepaspect)

as the later images are drawn over any earlier one(s).


I love the new popup function. And I'd love to be able to show the tracks from an album in the popup!

Using %track% %title% etc. in the popup or in the main window gives info from the 1st track - any chance of looping through the tracks in the popup window at least?
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-04 01:07:41
Ah yeah, but when using mouse over, it will look funny. Thanks for the suggestion, though.
Title: foo_uie_graphical_browser
Post by: buktore on 2008-03-04 01:17:07
Quote
If you put them in this order you don't even need the $if3

That's mean.. instead of draw just 1 image if cover was found, you have to draw 2 or more. (1 for nocover, 1 or more for cover) And  it's slow thing down unnecessary.

Bad idea  Oh well, people's computer are so fast these days. (Sadly, not for me)
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-04 08:18:57
This just keeps gettting better - well done!
I love the new popup function. And I'd love to be able to show the tracks from an album in the popup!

Using %track% %title% etc. in the popup or in the main window gives info from the 1st track - any chance of looping through the tracks in the popup window at least?

For me, it will be nice if the pop up can show whether mouse over album is playing and the playing track.

Quote
If you put them in this order you don't even need the $if3

That's mean.. instead of draw just 1 image if cover was found, you have to draw 2 or more. (1 for nocover, 1 or more for cover) And it's slow thing down unnecessary.

Bad idea  Oh well, people's computer are so fast these days. (Sadly, not for me)

Sorry, we didn't notice .
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-03-05 02:57:37
I've been using

$num(%gb_playlist_number%,10)

to try to keep the graphical_browser display in the same order as the active playlist.

This works well except where I have the same album in the active playlist in 2 different places. In those cases graphical-browser just displays the album once in the first location!  (Using file info on the graphical-browser display shows that each track appears twice under that display!)

Strange....
Title: foo_uie_graphical_browser
Post by: YounhaLOV on 2008-03-06 04:52:03
(http://img339.imageshack.us/img339/9972/111ch1.th.jpg) (http://img339.imageshack.us/my.php?image=111ch1.jpg)

Applied the latest rev009!!

I was surprised really !  Like really so much

thank you! keikonium
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-06 04:57:52
It's a great plugin!
I intended to display some "playing" icon on the cover for the current playing album.
But, it did not work:

Code: [Select]
$if(%isplaying%,
$draw_image($eval({%gb_width%/2}-25),$eval({%gb_height%/2}-25),50,50,
D:\Imagens\Capas de Discos\play.png,
200,)
)

Does %isplaying% really work here or I'm doing something wrong?


It does not work, as it only works per track and in certain views of foobar.
To check whether an item is playing use this
Code: [Select]
$if($and($greater($add(%gb_playlist_number%,%gb_subitem_count%,1),%cwb_playing_index%),
$greater(%cwb_playing_index%,%gb_playlist_number%)),playing,not playing)

Unfortunately, it's not perfect, the updating that is. I hope the developer of graphical browser implement this http://www.bazquux.com/wiki/Foobar2000:Hoo...per_Information (http://www.bazquux.com/wiki/Foobar2000:Hooks#Developer_Information). If so it will be perfect.

Also here's a sneak peek at what I'm working on:
(http://img213.imageshack.us/img213/3465/foopk7.th.png) (http://img213.imageshack.us/my.php?image=foopk7.png)
I want the popup to set its size automatically depends on the string size, too.

EDIT: that was my way to check %isplaying% for items, it's still not perfect so anyone knows a better way?
Title: foo_uie_graphical_browser
Post by: radecke on 2008-03-06 11:47:48
is it possible to get the foobar path somehow or a relative path to the foobar directory?

very nice plugin btw. i've always been looking for something like that.
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-06 13:42:55
Here's my new one:
(http://img148.imageshack.us/img148/1447/foojy0.th.png) (http://img148.imageshack.us/my.php?image=foojy0.png)

Images:
Play icon (http://i170.photobucket.com/albums/u248/nagayanobu/Play-icon256-by-nagaya.png)
Glare image (http://img171.imageshack.us/img171/5822/glareyo0.png)
Put them to into your foobar2000\components folder or any folder you like but remember to change the correspondent paths.

Group:
Code: [Select]
$if2(%album%,@skip)
Sort:
Code: [Select]
$num(%gb_playlist_number%,10)
Type: Vertical Scroll

Popup size: for artist display, size is your choice. Opacity: your choice.

Item size: your choice, but horizontal size should be bigger than vertical size. (preferred about double, I use 210x110)

Item code:
Code: [Select]
//cover sources, if you add more sources please add more $draw_image functions below
$puts(cpath1,$replace(%path%,%filename_ext%,*))
$puts(cpath2,$replace(%path%,%directory%\%filename_ext%,*))

//no cover source, remember to change this if needed
$puts(nocover,components\default.png)

//other image sources
$puts(glareImage,components\glareyo0.png)
$puts(playIcon,components\Play-icon256-by-nagaya.png)

//dimensions and positions of objects
$puts(itemW,$eval(%gb_width%-1))
$puts(itemH,$eval(%gb_height%-1))
$puts(frameD,$eval(%gb_height%-8))
$puts(frameCu,$eval(%gb_height%/30))
$puts(coverD,$eval($get(frameD)-4))
$puts(textX,$eval($get(frameD)+7))
$puts(textW,$eval(%gb_width%-$get(textX)-4))
$puts(textH,$eval(%gb_height%-20))
$puts(subitem_countY,$eval($get(textH)+6))

//check whether item is playing
$puts(isplaying,$if($and($strcmp(%cwb_activelist%,%cwb_playinglist%),
$greater($add(%gb_playlist_number%,%gb_subitem_count%,1),%cwb_playing_index%),
$greater(%cwb_playing_index%,%gb_playlist_number%)),
1,))
///////////////////////////////////

$set_brush(240-240-240,cross)
$fill_rect(0,0,%gb_width%,%gb_height%)

$select($add($mod(%gb_item_index%,2),1),
$gp_set_brush(100-200-200-200),
$gp_set_brush(100-240-240-240)
)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)

$if(%gb_focused%,
$set_pen(0-0-0)
$draw_rect(0,0,$get(itemW),$get(itemH))
)

$set_pen(0-0-0)
$set_brush(0-0-0)
$round_rect(5,4,$get(frameD),$get(frameD),$get(frameCu),$get(frameCu))

//add more cover sources here
$if3(
$draw_image(7,6,$get(coverD),$get(coverD),$get(cpath1),255,nokeepaspect),
$draw_image(7,6,$get(coverD),$get(coverD),$get(cpath2),255,nokeepaspect),
$draw_image(7,6,$get(coverD),$get(coverD),$get(nocover),255,nokeepaspect)
)

$draw_image(7,6,$get(coverD),$get(coverD),$get(glareImage),50,nokeepaspect)

$if($get(isplaying),
$draw_image(7,6,$get(coverD),$get(coverD),$get(playIcon),128)
)

$set_font(Tahoma,9)
$draw_text(%gb_group%,$get(textX),6,$get(textW),$get(textH),right,wordbreak,word_ellipsis)
$set_font(Segoe UI,9,i)
$draw_text(%gb_subitem_count%
$ifgreater(%gb_subitem_count%,1, tracks, track),
$get(textX),$get(subitem_countY),$get(textW),12,right,singleline,bottom)

$if(%gb_mouse_over%,
$gp_set_brush(128-255-255-255,0,0,0-255-255-255,%gb_width%,%gb_height%)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)
)

Popup code:
Code: [Select]
$gp_set_brush(255-128-128-128)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)
$gp_set_pen(255-0-0-0,1)
$gp_draw_rectangle(0,0,$eval(%gb_width%-1),$eval(%gb_height%-1))

$gp_set_font(Segoe Print,9)
$gp_set_brush(255-218-218-218)
$gp_set_text_rendering_hint(ct)
$gp_set_string_format(center,center)
$if(%album artist%,
$gp_draw_string(by %album artist%,0,0,%gb_width%,%gb_height%),
Unknown Artist
)
Tip: you may set scroll size to your item vertical size, check "Scroll by a multiple of scroll size" and resize your foobar so items fit in nicely like mine. That way items won't get cut off when scrolling.

EDIT: @radecke: I use relative paths a bunch of times in my code, please take a look.

EDIT2: work around (dirty lol) for a rare case where wordbreak does not work right.

EDIT3: fixed another bug in detecting playing item logic.
Title: foo_uie_graphical_browser
Post by: Garfield4 on 2008-03-06 15:17:50
I'm trying to copy the dark blue layout in default UI - with grey text below the album cover which then turns white on focus:

Code: [Select]
$if(%gb_focused%,
$set_pen(808080,1)
  $set_brush(49-68-81)
  $round_rect(0,0,%gb_width%,%gb_height%,5,5)
$set_font(Tahoma,7)
$set_font_color(255-255-255)
$draw_text(%gb_group%,6,%gb_width%,$eval(%gb_width%-10),$eval(%gb_height%-%gb_width%-2),center,wordbreak)
$puts(tra,255)
,
$puts(tra,255)
)

$set_font(Tahoma,7)
$set_font_color(176-175-157)
$draw_text(%gb_group%,6,%gb_width%,$eval(%gb_width%-10),$eval(%gb_height%-%gb_width%-2),center,wordbreak)
,)




Thanks for your help
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-06 15:47:56
Use this code:
Code: [Select]
$puts(tra,255)
$set_font(Tahoma,7)
$if(%gb_focused%,
$set_pen(808080,1)
  $set_brush(49-68-81)
  $round_rect(0,0,%gb_width%,%gb_height%,5,5)
$set_font_color(255-255-255)
,
$set_font_color(176-175-157)
)
$draw_text(%gb_group%,6,%gb_width%,$eval(%gb_width%-10),$eval(%gb_height%-%gb_width%-2),center,wordbreak)

A tip: Put general part outside of $if function.
Title: foo_uie_graphical_browser
Post by: Garfield4 on 2008-03-06 16:12:17
Use this code:


A tip: Put general part outside of $if function.


Thanks - Thats Great
Title: foo_uie_graphical_browser
Post by: radecke on 2008-03-06 19:19:53
EDIT: @radecke: I use relative paths a bunch of times in my code, please take a look.

thanks. now i know why it didn't work for me. i thought the foobar directory was the source path but actually it's the components directory. that explains a lot

now i love this component even more
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-07 00:52:53
No, the foobar is the source path. That's why I have to use "components\image.png" to access image.png in foobar components folder. If components is the source path as you said, then you only need image.png. IOW, that relative path can also be written as ".\components\image.png" which "." is the current directory which is foobar2000 path. The only component AFAIK that uses components as the source path is foo_uie_albumart. Hope that clears it up.
Title: foo_uie_graphical_browser
Post by: DiGiCharat on 2008-03-07 11:29:39
Hello thuan, thank you for the great config 

a question, may i know which font you're using for the playlist in your SS?

thanks 
Title: foo_uie_graphical_browser
Post by: radecke on 2008-03-07 12:50:06
No, the foobar is the source path. That's why I have to use "components\image.png" to access image.png in foobar components folder. If components is the source path as you said, then you only need image.png. IOW, that relative path can also be written as ".\components\image.png" which "." is the current directory which is foobar2000 path. The only component AFAIK that uses components as the source path is foo_uie_albumart. Hope that clears it up.


"..\PanelsUI\smooth\images\artoverlay3.png" is the only thing that works for me. i get no image if i write the path like ".\PanelsUI\smooth\images\artoverlay3.png" or "PanelsUI\smooth\images\artoverlay3.png"

however the important thing is that it works
Title: foo_uie_graphical_browser
Post by: buktore on 2008-03-07 13:59:55
For PanelUI, relative paths start from where the PUI is.

So, In your case just use "images\artoverlay3.png" and it should work.
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-07 15:25:00
@DiGiCharat: I use Segoe UI. This font comes with Vista or Office 2007 and maybe .NET 3.0 and 3.5 too AFAIK.

Well here's the updated version of my Graphical Browser config:
.
Popup now has album art in it.

Item code:
(http://img125.imageshack.us/my.php?image=fooyq0.png)
Code: [Select]
//cover sources, if you add more sources please add more $draw_image functions below
$puts(cpath1,$replace(%path%,%filename_ext%,*))
$puts(cpath2,$replace(%path%,%directory%\%filename_ext%,*))

//no cover source, remember to change this if needed
$puts(nocover,components\default.png)

//other image sources
$puts(glareImage,components\glareyo0.png)
$puts(playIcon,components\Play-icon256-by-nagaya.png)

//font settings
$puts(fontName,Segoe UI)
$puts(fontSize,9)

//dimensions and positions of objects
$puts(itemW,$eval(%gb_width%-1))
$puts(itemH,$eval(%gb_height%-1))
$puts(frameD,$eval(%gb_height%-8))
$puts(frameCu,$eval(%gb_height%/30))
$puts(coverD,$eval($get(frameD)-4))
$puts(textX,$eval($get(frameD)+7))
$puts(textW,$eval(%gb_width%-$get(textX)-4))
$puts(textH,$eval(%gb_height%-20))
$puts(subitem_countY,$eval($get(textH)+6))

//check whether item is playing
$puts(isplaying,$if($and($strcmp(%cwb_activelist%,%cwb_playinglist%),
$greater($add(%gb_playlist_number%,%gb_subitem_count%,1),%cwb_playing_index%),
$greater(%cwb_playing_index%,%gb_playlist_number%)),
1,))
///////////////////////////////////

$if(%gb_focused%,
$set_pen(44-98-139)
$draw_rect(0,0,$get(itemW),$get(itemH))
$gp_set_brush(255-109-182-221,0,%gb_height%,0-255-255-255,0,0)
$gp_fill_rectangle(1,1,$eval(%gb_width%-2),$eval(%gb_height%-2)),
$set_brush(240-240-240,cross)
$fill_rect(0,0,%gb_width%,%gb_height%)

$select($add($mod(%gb_item_index%,2),1),
$gp_set_brush(100-200-200-200),
$gp_set_brush(100-240-240-240)
)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)
)

$set_pen(0-0-0)
$set_brush(0-0-0)
$round_rect(5,4,$get(frameD),$get(frameD),$get(frameCu),$get(frameCu))

//add more cover sources here
$if3(
$draw_image(7,6,$get(coverD),$get(coverD),$get(cpath1),255,nokeepaspect),
$draw_image(7,6,$get(coverD),$get(coverD),$get(cpath2),255,nokeepaspect),
$draw_image(7,6,$get(coverD),$get(coverD),$get(nocover),255,nokeepaspect)
)

$draw_image(7,6,$get(coverD),$get(coverD),$get(glareImage),50,nokeepaspect)

$if($get(isplaying),
$draw_image(7,6,$get(coverD),$get(coverD),$get(playIcon),128)
)

$set_font($get(fontName),$get(fontSize))
$draw_text($get(font) %gb_group% $get(font),$get(textX),6,$get(textW),$get(textH),right,wordbreak,word_ellipsis)
$set_font($get(fontName),$get(fontSize),i)
$draw_text(%gb_item_index%/%gb_item_count% %gb_subitem_count%
$ifgreater(%gb_subitem_count%,1, tracks, track),
$get(textX),$get(subitem_countY),$get(textW),12,right,singleline,bottom)

$if(%gb_mouse_over%,
$gp_set_brush(128-255-255-255,0,0,0-255-255-255,%gb_width%,%gb_height%)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)
)

Popup code:
Code: [Select]
//cover sources, if you add more sources please add more $draw_image functions below
$puts(cpath1,$replace(%path%,%filename_ext%,*))
$puts(cpath2,$replace(%path%,%directory%\%filename_ext%,*))

//no cover source, remember to change this if needed
$puts(nocover,components\default.png)

//Dimensions
$puts(coverD,$eval(%gb_width%-8))
$puts(textY,$eval($get(coverD)+6))
$puts(textH,$eval(%gb_height%-$get(textY)-2))

//Font setting for artist display
$gp_set_font(Segoe Print,9)
//////////////////////////////////////

$gp_set_brush(255-128-128-128)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)
$gp_set_pen(255-0-0-0,1)
$gp_draw_rectangle(0,0,$eval(%gb_width%-1),$eval(%gb_height%-1))

//add more cover sources here
$if3(
$draw_image(4,4,$get(coverD),$get(coverD),$get(cpath1),255),
$draw_image(4,4,$get(coverD),$get(coverD),$get(cpath2),255),
$draw_image(4,4,$get(coverD),$get(coverD),$get(nocover),255)
)

$gp_set_brush(255-218-218-218)
$gp_set_text_rendering_hint(ct)
$gp_set_string_format(center,center)
$if(%album artist%,
$gp_draw_string(by %album artist%,0,$get(textY),%gb_width%,$get(textH)),
Unknown Artist
)
Popup size: height should be bigger than width. I use 200x240.
Other settings and requirements are the same as [a href=\"http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=61412&view=findpost&p=551336\" target=\"_blank\"]my previous post[/url].

EDIT: Small change: make it easier to change font for item display.
Title: foo_uie_graphical_browser
Post by: radecke on 2008-03-07 19:55:53
For PanelUI, relative paths start from where the PUI is.

So, In your case just use "images\artoverlay3.png" and it should work.


thank you. so it was just a coincidence that it worked
Title: foo_uie_graphical_browser
Post by: Hakubo on 2008-03-07 21:48:30
Terrific component.

I guess the only thing I'm missing is the ability to quickly navigate to a certain album by typing a few letters of its grouping string from keyboard.

And big thanks to thuan for his config.
Title: foo_uie_graphical_browser
Post by: saberrider on 2008-03-08 06:28:51
I recently found the time to check out that awesome component and did a screenshot of the covers of all my albums. They load amazingly fast with 2gb of ram.

Check this out:
[a href="http://img187.imageshack.us/my.php?image=allalbumsmg4.jpg" target="_blank"]
Title: foo_uie_graphical_browser
Post by: Falstaff on 2008-03-08 19:20:41
For PanelUI, relative paths start from where the PUI is.

So, In your case just use "images\artoverlay3.png" and it should work.


Yep, works fine, so no more need
Title: foo_uie_graphical_browser
Post by: Warchief on 2008-03-08 23:11:01
hey

i have many albums, that contains 2 ore more subfolders inside(like cd1, cd2). The covers are stored not in cd1, cd2, cdx subfolders but in the "main" folder.  This string
Code: [Select]
$replace(%path%,%filename_ext%,)cover.jpg
  show the cover that are stored in the same folder were the music files are stored. I want to show the covers that are stored one level higer in the directory structure. How i can di this? thx.
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-03-09 00:06:16
Maybe this would work:

$replace(%path%,%filename_ext%,)../cover.jpg

or use $directory(x,n) somehow - extracts directory name from the file path x; goes up by n levels.

maybe

$directory(%path%,1)/cover.jpg
Title: foo_uie_graphical_browser
Post by: Warchief on 2008-03-09 00:52:16
Kiteroa

thx,
Code: [Select]
$replace(%path%,%filename_ext%,)../cover.jpg


works fine
Title: foo_uie_graphical_browser
Post by: BuM on 2008-03-09 06:48:04
hmmm.... im using $rand(10) to display no cover art pics..
i noticed that when i mouse over the pic it changes.. not a problem
my problem is im on a pos computer and its using alot of memory.

so i was thinking is there a way to load images according to First Letter of album or something similar?

exp: $if(%artist%, First Letter T, NoCover2.jpeg,First Letter M, NoCover5.jpeg)


Edit: I Figgered a work around... I have the $rand() Looking inside the code instead of looking tho my computer.

Code: [Select]
$puts(nocover0,C:\Program Files\Foobar\images\NoCover2\nocover0.jpeg)
$puts(nocover1,C:\Program Files\Foobar\images\NoCover2\nocover1.jpeg)
$puts(nocover2,C:\Program Files\Foobar\images\NoCover2\nocover2.jpeg)
$puts(nocover3,C:\Program Files\Foobar\images\NoCover2\nocover3.jpeg)
$puts(nocover4,C:\Program Files\Foobar\images\NoCover2\nocover4.jpeg)
$puts(nocover5,C:\Program Files\Foobar\images\NoCover2\nocover5.jpeg)
$puts(nocover6,C:\Program Files\Foobar\images\NoCover2\nocover6.jpeg)
$puts(nocover7,C:\Program Files\Foobar\images\NoCover2\nocover7.jpeg)
$puts(nocover8,C:\Program Files\Foobar\images\NoCover2\nocover8.jpeg)
$puts(nocover9,C:\Program Files\Foobar\images\NoCover2\nocover9.jpeg)
$puts(nocover10,C:\Program Files\Foobar\images\NoCover2\nocover10.jpeg)
$puts(nocover11,C:\Program Files\Foobar\images\NoCover2\nocover11.jpeg)
$puts(nocover12,C:\Program Files\Foobar\images\NoCover2\nocover12.jpeg)

$draw_image(0,0,$eval(%gb_width%),$eval(%gb_width%),
$if($cwb_fileexists($replace(%path%,%filename_ext%,)folder.jpeg),
$replace(%path%,%filename_ext%,)folder.jpeg,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)folder.jpg),
$replace(%path%,%filename_ext%,)folder.jpg,

$get(nocover$rand(12))

)),
255,nokeepaspect)

If any1 has a better way plz let me know but with my basic skillz thats what i got
Title: foo_uie_graphical_browser
Post by: Zarkon on 2008-03-09 07:32:30
Whenever I need "sufficiently random" numbers, I use a combination of the mod/length functions, as in
Code: [Select]
$mod($len(%album artist%%album%),###)


I know others have used the $crc32 function to similar effect.
Title: foo_uie_graphical_browser
Post by: BuM on 2008-03-09 07:49:04
ok Ty  i havnt played with the $mod or $len yet and never heard of $crc32, ill tinker around and see what i can get
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-09 09:55:13
@BuM: in your code, you should use $select instead of using a bunch of custom variables. It's faster and has less overhead. The mod len combi is a little faster but the variation is worse than crc32. I don't know how $rand is implemented in foobar but anyway crc32 calculation time is proportion to length of strings so more often than not I think $rand is faster especially in case the pool is small like yours.
Title: foo_uie_graphical_browser
Post by: buktore on 2008-03-09 14:04:24
New version (http://www.tv2ch.info/fb2k/) is out.

From the change log, there's %gb_isplaying% command (among others) which may make some of you really happy. 
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-09 16:01:21
Yeah, me included, but this new version has so much more to be happy with. It's just getting better and better.

@Keikonium: I've sent you the new readme.
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-03-09 22:25:59
Thanks for a great update - I love the per-track pop-up and am using it already!
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-10 02:32:07
Updated config:
(http://img120.imageshack.us/img120/8564/fooiu9.th.png) (http://img120.imageshack.us/my.php?image=fooiu9.png)

Require graphical browser rev010
Images required:
Play icon (http://i170.photobucket.com/albums/u248/nagayanobu/Play-icon256-by-nagaya.png)
Glare image (http://img171.imageshack.us/img171/5822/glareyo0.png)
Put those images into foobar components folder, or any other places you like. In this case, you need to change the path for these images.

Prominent changes: all are in popup rendering:
* Half transparent popup background frame.
* Display currently playing song in popup of the currently playing item.
* Total length of item and total played times.
* [!--sizeo:2--][span style=\"font-size:10pt;line-height:100%\"][!--/sizeo--]Arithmetic mean album rating.[/size][!--sizeo:2--][span style=\"font-size:10pt;line-height:100%\"][!--/sizeo--] Later, I might be able to do weighted mean album rating [/size][!--sizeo:2--][span style=\"font-size:10pt;line-height:100%\"][!--/sizeo--](using play_count statistic)[/size][!--sizeo:2--][span style=\"font-size:10pt;line-height:100%\"][!--/sizeo--] with future version of this component.

[/size]
Settings:
(http://img120.imageshack.us/img120/4053/settingsue4.th.png) (http://img120.imageshack.us/my.php?image=settingsue4.png)

As before, you have some freedom with item size and popup size. For item size, horizontal size is about double of vertical size. And for popup size, vertical size is bigger (about 40 pixels is best) than horizontal size. Remember that, if you set those sizes too small, everything will be out of order. But with suitable size, my code will automatically set itself in fine.

Item code:
Code: [Select]
//cover sources, if you add more sources please add more $draw_image functions below
$puts(cpath1,$replace(%path%,%filename_ext%,*))
$puts(cpath2,$replace(%path%,%directory%\%filename_ext%,*))

//no cover source, remember to change this if needed
$puts(nocover,components\default.png)

//other image sources
$puts(glareImage,components\glareyo0.png)
$puts(playIcon,components\Play-icon256-by-nagaya.png)

//font settings
$puts(fontName,Segoe UI)
$puts(fontSize,9)
$puts(fontStyle1,)
$puts(fontStyle2,i)

//dimensions and positions of objects
$puts(itemW,$eval(%gb_width%-1))
$puts(itemH,$eval(%gb_height%-1))
$puts(frameD,$eval(%gb_height%-8))
$puts(frameCu,$eval(%gb_height%/30))
$puts(coverD,$eval($get(frameD)-4))
$puts(textX,$eval($get(frameD)+7))
$puts(textW,$eval(%gb_width%-$get(textX)-4))
$puts(textH,$eval(%gb_height%-20))
$puts(subitem_countY,$eval($get(textH)+6))
///////////////////////////////////

$if(%gb_focused%,
$set_pen(44-98-139)
$draw_rect(0,0,$get(itemW),$get(itemH))
$gp_set_brush(255-109-182-221,0,%gb_height%,0-255-255-255,0,0)
$gp_fill_rectangle(1,1,$eval(%gb_width%-2),$eval(%gb_height%-2)),
$set_brush(240-240-240,cross)
$fill_rect(0,0,%gb_width%,%gb_height%)

$select($add($mod(%gb_item_index%,2),1),
$gp_set_brush(100-200-200-200),
$gp_set_brush(100-240-240-240)
)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)
)

$set_pen(0-0-0)
$set_brush(0-0-0)
$round_rect(5,4,$get(frameD),$get(frameD),$get(frameCu),$get(frameCu))

//add more cover sources here
$if3(
$draw_image(7,6,$get(coverD),$get(coverD),$get(cpath1),255,nokeepaspect),
$draw_image(7,6,$get(coverD),$get(coverD),$get(cpath2),255,nokeepaspect),
$draw_image(7,6,$get(coverD),$get(coverD),$get(nocover),255,nokeepaspect)
)

$draw_image(7,6,$get(coverD),$get(coverD),$get(glareImage),50,nokeepaspect)

$if(%gb_isplaying%,
$draw_image(7,6,$get(coverD),$get(coverD),$get(playIcon),128)
)

$set_font($get(fontName),$get(fontSize),$get(fontStyle1))
$draw_text(%gb_group%,$get(textX),6,$get(textW),$get(textH),right,wordbreak,end_ellipsis)
$set_font($get(fontName),$get(fontSize),$get(fontStyle2))
$draw_text($add(%gb_item_index%,1)/%gb_item_count% %gb_track_count%
$ifgreater(%gb_track_count%,1, tracks, track),
$get(textX),$get(subitem_countY),$get(textW),12,right,singleline,bottom)

$if(%gb_mouse_over%,
$gp_set_brush(128-255-255-255,0,0,0-255-255-255,%gb_width%,%gb_height%)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)
)

Popup code:
Code: [Select]
//cover sources, if you add more sources please add more $draw_image functions below
$puts(cpath1,$replace(%path%,%filename_ext%,*))
$puts(cpath2,$replace(%path%,%directory%\%filename_ext%,*))

//no cover source, remember to change this if needed
$puts(nocover,components\default.png)

//Font settings for artist display
$puts(aFontName,Segoe Print)
$puts(aFontSize,9)
$puts(aFontStyle,)

//Font settings for item info
$puts(iFontName,Arial)
$puts(iFontSize,9)
$puts(iFontStyle,)

//Dimensions
$puts(coverD,$eval(%gb_width%-8))
$puts(textY,$eval($get(coverD)+6))
$puts(textH,$eval(%gb_height%-$get(textY)-2))
$puts(textW,$eval(%gb_width%-4))
$puts(infoY,$eval(%gb_width%-24))

//Album rating calculation
$puts(temp,$muldiv($sum('%rating%'),100,%gb_track_count%))
$puts(aRating,
$ifgreater($get(temp),449,5,
$ifgreater($get(temp),349,4,
$ifgreater($get(temp),249,3,
$ifgreater($get(temp),149,2,
$ifgreater($get(temp),49,1,
0
)
)
)
)
)
)
//////////////////////////////////////

$gp_set_brush(128-128-128-128)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)
$gp_set_pen(255-0-0-0,1)
$gp_draw_rectangle(0,0,$eval(%gb_width%-1),$eval(%gb_height%-1))

//add more cover sources here
$if3(
$draw_image(4,4,$get(coverD),$get(coverD),$get(cpath1),255),
$draw_image(4,4,$get(coverD),$get(coverD),$get(cpath2),255),
$draw_image(4,4,$get(coverD),$get(coverD),$get(nocover),255)
)

$gp_set_font($get(aFontName),$get(aFontSize),$get(aFontStyle))
$gp_set_pen(255-255-255-255,3,,bevel)
$gp_set_brush(255-0-0-0)
$gp_set_string_format(center,center,ellipsis_word)
$gp_set_smoothing_mode(1)
$gp_draw_string_path($if(%album artist%,by %album artist%,Unknown Artist),12,,0,$get(textY),$get(textW),$get(textH)),

$gp_set_font($get(iFontName),$get(iFontSize),$get(iFontStyle))
$gp_set_string_format(far,center)
$gp_draw_string_path(%gb_length% #$sum('%play_count%'),12,,4,$get(infoY),$get(coverD),20)

$gp_set_string_format(near,center)
$gp_draw_string_path(
$repeat(★,$get(aRating))
$repeat(☆,$sub(5,$get(aRating)))
,12,,4,$get(infoY),$get(coverD),20)

If you're using WinXP, you need to have East Asian languages support. Those rating star characters need it.
(http://img507.imageshack.us/img507/5721/expg4.th.png) (http://img507.imageshack.us/my.php?image=expg4.png)

Per track (Popup) code:
Code: [Select]
//Font settings for playing track
$gp_set_font(Tahoma,9,b)
$gp_set_pen(128-255-255-255,3,,bevel)
$gp_set_brush(255-0-0-0)
$gp_set_smoothing_mode(1)
$gp_set_string_format(center,near)
//////////////////////////////////////

$if(%gb_isplaying%,
$set_org(6,6)
$gp_draw_string_path([%tracknumber%. ]%title%,12,,0,0,$eval(%gb_width%-12),$eval(%gb_width%-32))
)

Lastly, I want to thank the developer of this component again. All of this wouldn't have been possible, if he hadn't started it.

EDIT: Add one to %gb_item_index%.
EDIT2: Fix some mistakes and add rounded rating.
Title: foo_uie_graphical_browser
Post by: BuM on 2008-03-10 05:09:51
Looking Good thuan, Thank you and every1 else for posting ur configs.
for ppl that learn from seeing(like me) it really helps
Title: foo_uie_graphical_browser
Post by: larryT on 2008-03-10 08:10:07
Hi,


with the last version, 0.10, it's not possible to desactivate the  graphical browser scroll bar.

It was desactivable with the 0.9 version :

right click > settings > bottom right :

- show scroll bar
- scroll by a multiple of scroll size
- scroll size

no more choice ?
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-10 09:02:24
Those settings are in the Others Tab beside Draw Tab. Look at the 2nd picture in my previous post.
Title: foo_uie_graphical_browser
Post by: larryT on 2008-03-10 15:32:28
Those settings are in the Others Tab beside Draw Tab. Look at the 2nd picture in my previous post.



oh yeah !!!!

I'm stupid !!!  or, may be, becoming too old.......

Thanks, thuan.
Title: foo_uie_graphical_browser
Post by: cristox on 2008-03-10 19:42:41
Thanks for this great component!

But what is the function of the "transparent mode" checkmark in the options dialog?
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-03-10 23:16:44
Does anyone know how to get the track list of an album to display in the popup? I can get the currently playing track, but I want them all... Kinda like in this image: http://foobar2000.xrea.jp/up/files/up808.jpg (http://foobar2000.xrea.jp/up/files/up808.jpg)

Also, rev011 is out if anyone hasn't updated yet . http://www.tv2ch.info/fb2k/ (http://www.tv2ch.info/fb2k/)
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-03-11 00:07:05
Does anyone know how to get the track list of an album to display in the popup? I can get the currently playing track, but I want them all... Kinda like in this image: http://foobar2000.xrea.jp/up/files/up808.jpg (http://foobar2000.xrea.jp/up/files/up808.jpg)

This works for me:
Code: [Select]
$set_org(0,$mul(12,%gb_track_index%))
$if(%gb_isplaying%,$gp_set_brush(255-0-255-0),$gp_set_brush(255-0-0-0))
$gp_set_font(Tahoma,9)
$gp_set_string_format(near,near,ellipsis_word)
$gp_draw_string(%gb_playlist_number% $add(%gb_track_index%,1). %title%,0,0,%gb_width%,15)


Make sure you have "maximum tracks processed by "Per Track" set suitably high on the Others tab.


To the developer - thanks again!

I'm still getting a problem with albums with the same name where all the tracks appear under the first listing for the album - even though the tracks are in different parts of the playlist. Could you fix it so that the tracks for an album group only show only under that album?

Also, I'd love to be able to fix the display to a particular named playlist - not just the active playlist which I keep changing all the time!
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-03-11 00:20:51
Ah! My problem was that I had the tracks processed by // PerTrack was set to 0 lol. Thanks Kiteroa .

Also, I don't know if anyone else noticed this, but when you type a $ and wait a couple seconds, a box will pop up with the possible variables you can use... REALLY awesome.
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-11 00:58:26
But what is the function of the "transparent mode" checkmark in the options dialog?

Read the readme I translated in the first post. Basically, with it, you can set different transparent levels for each object you draw using GDI+. My config uses that, too.


Does anyone know how to get the track list of an album to display in the popup? I can get the currently playing track, but I want them all... Kinda like in this image: http://foobar2000.xrea.jp/up/files/up808.jpg (http://foobar2000.xrea.jp/up/files/up808.jpg)

This works for me:
Code: [Select]
$set_org(0,$mul(12,%gb_track_index%))
$if(%gb_isplaying%,$gp_set_brush(255-0-255-0),$gp_set_brush(255-0-0-0))
$gp_set_font(Tahoma,9)
$gp_set_string_format(near,near,ellipsis_word)
$gp_draw_string(%gb_playlist_number% $add(%gb_track_index%,1). %title%,0,0,%gb_width%,15)


Make sure you have "maximum tracks processed by "Per Track" set suitably high on the Others tab.

And here is a code snippet to draw dynamically height popup:
Code: [Select]
$puts(recH,$add($mul(%gb_track_count%,18),46)) //46 is the static part and 18 is verticle size of each line.
//then draw a rec or whatever using the appropriate function
$draw_rect(0,0,$eval(%gb_width%-1),$get(recH))

I have tried to mimic that up808 popup config, it's pretty easy to write. The problem is with it, you have to set a very high value for vertical popup size (to accommodate long item). This pose a problem, with my vertical scroll config (unlike his is a horizontal one and drawn at upper of the screen), that is sometimes with lower item that has little tracks in it, the popup appears at the upper of the screen and not beside the mouse which looks really weird  . I have also think of a dynamic horizontal size popup with multiple tracklist columns on it. It's feasible, will do that later when I have the time.
I'm still getting a problem with albums with  the same name where all the tracks appear under the first listing for  the album - even though the tracks are in different parts of the  playlist. Could you fix it so that the tracks for an album group only  show only under that album?

This is actually hard to fix consider how this component works (grouping item by group titleformat which return group strings). You should do something with your group titleformat yourself or the tag of particular items to return different group strings. It can be fixed with some workaround on his side but oh well, I think this is more of a problem of your group string titleformat. Why not group items which return the same group string together?
Also, I'd love to be able to fix the display to a particular named playlist - not just the active playlist which I keep changing all the time!

I have mailed the developer about this, he said that this will likely be implimented when he has the time, please be patient.
Title: foo_uie_graphical_browser
Post by: nightfishing on 2008-03-11 02:00:29
This works for me:
Code: [Select]
$set_org(0,$mul(12,%gb_track_index%))
$if(%gb_isplaying%,$gp_set_brush(255-0-255-0),$gp_set_brush(255-0-0-0))
$gp_set_font(Tahoma,9)
$gp_set_string_format(near,near,ellipsis_word)
$gp_draw_string(%gb_playlist_number% $add(%gb_track_index%,1). %title%,0,0,%gb_width%,15)


I cannot seem to change the font color of the tracklist. Can I get a little help? Either it can't be done, or I am just overlooking something..whatever I do the font color stays constant.

TIA
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-11 02:05:05
Change the $gp_set_brush parameter to change the color of text drawn by $gp_draw_string function. In this code the first one is color for playing song and the 2nd is for other songs.
Title: foo_uie_graphical_browser
Post by: Hakubo on 2008-03-11 05:31:04
Wow, revision 11 introduces keyboard letter navigation.
Not quite what I expected (different from Album list and Filter), but still great. Thanks to the developer.
Title: foo_uie_graphical_browser
Post by: SmilerSmiles on 2008-03-11 14:36:09
Rev 12 now out.
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-11 16:41:31
Changelog:
   2008/03/11   rev012
      Fixed - Resource fatal leak.
      Added - Image cache options.
The new image cache option (default) does not purges the cache when you change playlists and it has an upper limit compares to the old way.
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-03-11 17:57:47
rev013 is now out. Looks like it fixed some selection, and GDI Bugs.
Title: foo_uie_graphical_browser
Post by: Falstaff on 2008-03-11 19:25:40
rev013 is now out. Looks like it fixed some selection, and GDI Bugs.


Some display bugs when playing with the option 'Image Cache' (vertical shift of picture of 1 or 2 pixels)

but ok with Old cache mode

So, here is just a try inspired by Delicious Library style :

(http://xs125.xs.to/xs125/08112/untitled90579.jpg.xs.jpg) (http://xs.to/xs.php?h=xs125&d=08112&f=untitled90579.jpg)

what about this gb layout ?
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-03-11 21:28:02
That looks aweeeesome!! Good job .
Title: foo_uie_graphical_browser
Post by: nightfishing on 2008-03-11 21:39:28
Feature request: could it be possible to activate the popup with middle click and not have it popup on mouse over?

Great project, the adjustable image cache is a nice addition.
Title: foo_uie_graphical_browser
Post by: Falstaff on 2008-03-11 21:43:21
That looks aweeeesome!! Good job .


thanks, i'll make a complete config with this (i've to complete the actual one i'm working on)
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-12 01:06:06
I have an idea, that I haven't mailed him, yet. It's kinda complicated to implement but if it is indeed implemented, you won't need a playlist to compliment this component anymore. That is, a left click on item will bring up a drop down popup (kinda like the drop down auto complete in the code section of this component) that lists tracks in that item and you can click on any track in the popup to play. What do you guys (and gals) think?

@BTW: Falstaff, could you upload your images used in your latest config somewhere, some of my friends are bugging me to create something similar. I'm good at imitating but not good with creating pictures (more like I haven't done anything much into image manipulation). Thanks in advance, your config looks cool.
Title: foo_uie_graphical_browser
Post by: Keikonium on 2008-03-12 01:36:18
I have an idea, that I haven't mailed him, yet. It's kinda complicated to implement but if it is indeed implemented, you won't need a playlist to compliment this component anymore. That is, a left click on item will bring up a drop down popup (kinda like the drop down auto complete in the code section of this component) that lists tracks in that item and you can click on any track in the popup to play. What do you guys (and gals) think?

@BTW: Falstaff, could you upload your images used in your latest config somewhere, some of my friends are bugging me to create something similar. I'm good at imitating but not good with creating pictures (more like I haven't done anything much into image manipulation). Thanks in advance, your config looks cool.



I emailed him on the third of march with the exact same idea. I didn't receieve any response back. I think he may have misunderstood my request because he seemed to add the // PerTrack stuff after my email, but then again I didn't really explain myself very well. But I think it would be amazing if it were added to this component.

This was my email:

Quote
It would be awesome to right click on an entry, and have the tracks from that playlist be shown in a little popup window. Just like the current popup window, but interactive.

???????????????????????????????????????????????????????????????????????????????????????
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-03-12 02:21:39

I have an idea, that I haven't mailed him, yet. It's kinda complicated to implement but if it is indeed implemented, you won't need a playlist to compliment this component anymore. That is, a left click on item will bring up a drop down popup (kinda like the drop down auto complete in the code section of this component) that lists tracks in that item and you can click on any track in the popup to play. What do you guys (and gals) think?

@BTW: Falstaff, could you upload your images used in your latest config somewhere, some of my friends are bugging me to create something similar. I'm good at imitating but not good with creating pictures (more like I haven't done anything much into image manipulation). Thanks in advance, your config looks cool.



I emailed him on the third of march with the exact same idea. I didn't receieve any response back. I think he may have misunderstood my request because he seemed to add the // PerTrack stuff after my email, but then again I didn't really explain myself very well. But I think it would be amazing if it were added to this component.

This was my email:

Quote
It would be awesome to right click on an entry, and have the tracks from that playlist be shown in a little popup window. Just like the current popup window, but interactive.

???????????????????????????????????????????????????????????????????????????????????????




Great idea. Rather than hardcode in a play option, hopefully it would be just as easy to code to allow the actions to be chosen on the preferences menu. That way different people could get the click(s) on the track  to do different things (e.g. send to queue, play, send to playlist etc.).
Title: foo_uie_graphical_browser
Post by: nightfishing on 2008-03-12 02:36:47
I'm sure I am not the only one doing something similar to this, but, I have it set up to popup back covers on hover.

Nice organic way to pull track listings ;-)

I have the popup delay set quite high and would prefer to be able to do this with  a middle/single click instead of thru hovering.
Title: foo_uie_graphical_browser
Post by: BuM on 2008-03-12 03:59:04
WoWzEr.... Leave for a day and 4 new versions come out l0l just downloaded v13 and it has colors!!!

@Keikonium hope ur telling them how much every1 is loving this component in thos emails
Title: foo_uie_graphical_browser
Post by: krondor on 2008-03-14 07:50:41
HI!!...someone help me!!!
..my config use the per-track popup and show all the tracks of a disc on mouse hover...but i'll be very happy if the popup shows the tracks lenghts too (mm:ss) like this: http://foobar2000.xrea.jp/up/files/up808.jpg (http://foobar2000.xrea.jp/up/files/up808.jpg)
...and with automatic vertical resize too pleaseeeee..

this is my per track conf:

$set_org(4,$mul(14,%gb_track_index%))
$if(%gb_isplaying%,$gp_set_brush(255-255-0-0),$gp_set_brush(255-0-0-0))
$gp_set_font(Tahoma,9)
$gp_set_string_format(near,ellipsis_word)
$gp_draw_string($add(%gb_track_index%,1). %title%,0,44,%gb_width%,15)


Somebody modify this to me please.., cause' i don't know to much about code...

Thank you!!.
Title: foo_uie_graphical_browser
Post by: oScARSh on 2008-03-14 08:24:39
Great Plugin!Thanks!

I'd tried it out :

(http://i136.photobucket.com/albums/q161/oscarshih/foobar2k/th_fb2kx06.png) (http://i136.photobucket.com/albums/q161/oscarshih/foobar2k/fb2kx06.png)
Title: foo_uie_graphical_browser
Post by: bowen_tk on 2008-03-14 12:29:56
I am really interest to add the track of the album in my Pop up config.
How do you do this please ?

Edit I have found...

How can I make that the pop up adapt itself to the number of song? and that the tex which is too long was cut because i try this but it doesn't work

Code: [Select]
//Dimensions  
$puts(textY,$eval(%gb_height%/2))
$puts(textH,$eval(%gb_height%-$get(textY)-2))
$puts(textYY,$eval(%gb_height%/2-50))
//Font setting for artist display  
$gp_set_font(Segoe Print,12)
$gp_set_brush(255-255-255-255)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)
$gp_set_pen(255-0-0-0,1)
$gp_draw_rectangle(0,0,$eval(%gb_width%-1),$eval(%gb_height%-1))
$gp_set_brush(255-18-18-18)
$gp_set_text_rendering_hint(ct)
$gp_set_string_format(center,end_ellipsis)
$if(%album%,
$gp_draw_string(%album%,0,0,%gb_width%,$get(textH)),
Unknown Album
)
$gp_set_font(Segoe Print,9)
$if(%album artist%,
$gp_draw_string(by %album artist%,0,20,%gb_width%,$get(textH)),
Unknown Artist
)


Thanks by advance
Title: foo_uie_graphical_browser
Post by: Varluche on 2008-03-15 11:33:24
Hi all,
Please forgive my silly question but I am a newbie to this plugin and I just cannot make it work. I am using the default code supplied with the latest version of graphical browser. I get small blue squares displayed, with album's name in the middle, but no picture at all in each square. All album arts in my collection are folder.jpg files that I stored in each album folder.
Did I miss something ?
What should I do to make it work ?
Thank you for your help.
Title: foo_uie_graphical_browser
Post by: buktore on 2008-03-15 12:52:37
You have to draw them yourself.

Try this basic one. Place it on first line.

$draw_image(0,0,%gb_width%,%gb_height%,$replace(%path%,%filename_ext%,folder.jpg),255,nokeepaspect)

I suggest if you don't know how to config them, Just copy someone else config. thuan config (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=61412&view=findpost&p=551897) is pretty nice.
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-15 16:27:15
@krondor
Per track popup code with length
Code: [Select]
$set_org(4,$mul(15,%gb_track_index%))
$if(%gb_isplaying%,$gp_set_brush(255-255-0-0),$gp_set_brush(255-0-0-0))
$gp_set_font(Tahoma,9)
$gp_set_string_format(near,near)
$gp_draw_string($add(%gb_track_index%,1). %title%,0,44,$eval(%gb_width%-40),15)
$gp_draw_string(%length%,$eval(%gb_width%-38),44,36,15)
You didn't give your popup code, so I can't really help you with dynamic vertical size popup.

@bowen_tk
Code: [Select]
//Dimensions (46 is the static part for album and artist size, change 15 to your desired track height size)
$puts(popupH,$eval(15*%gb_track_count%+46))
////////////////////////////////////

$gp_set_font(Segoe Print,12)
$gp_set_brush(255-255-255-255)
$gp_fill_rectangle(0,0,%gb_width%,$get(popupH))
$gp_set_pen(255-0-0-0,1)
$gp_draw_rectangle(0,0,$eval(%gb_width%-1),$eval($get(popupH)-1))
$gp_set_brush(255-18-18-18)
$gp_set_text_rendering_hint(aa)
$gp_set_string_format(center,near,ellipsis_word)
$gp_draw_string($if2(%album%,Unknown Album),0,0,%gb_width%,22)
$gp_set_font(Segoe Print,9)
$gp_draw_string($if(%album artist%,by %album artist%,Unknown Artist),0,24,%gb_width%,20)
You need to select transparent mode check box in Others Tab of this panel settings. When in this mode, you have to use $gp_set_text_rendering_hint(aa) if you draw string using $gp_draw_string and $gp_set_smoothing_mode(1) if you draw string using $gp_draw_string_path to have acceptable string rendering.

Edit: I added some small changes to  my config (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=61412&view=findpost&p=551897).
Title: foo_uie_graphical_browser
Post by: radecke on 2008-03-15 17:46:36
this is what i did with this plugin:

[a href="http://img141.imageshack.us/img141/6139/browsersb3.jpg" target="_blank"]

one request would be to define the height of the popup in dependency of the number of tracks and to make the tracks in the popup clickable.
Title: foo_uie_graphical_browser
Post by: krondor on 2008-03-15 21:06:58
Thank you so much THUAN !!!!!!!.

This is my Popup code (to do autosize): 380x330 (now static size)

$gp_set_brush(255-247-255-223,$div(%gb_width%,2),0,255-211-241-255,$div(%gb_width%,2),%gb_height%)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)
$gp_set_pen(255-0-80-255,2)
$gp_draw_rectangle(0,0,%gb_width%,%gb_height%)
$gp_set_text_rendering_hint(aa)

$set_font(Tahoma,10,b)
$draw_text(%gb_group%,0,0,%gb_width%,%gb_height%,wordbreak)



Now i put the transparency enabled.., how can i do less transparent??...cause' some whited-light backgrounds 'cover' the popup letters and the words disappear...

Thanks in advance..!!
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-16 01:58:00
@krondor:
Popup code:
Code: [Select]
//Dimensions
$puts(itemH,$eval(15*%gb_track_count%+46))
//////////////////////////////

$gp_set_brush(255-247-255-223,$div(%gb_width%,2),0,255-211-241-255,$div(%gb_width%,2),$get(itemH))
$gp_fill_rectangle(0,0,%gb_width%,$get(itemH))
$gp_set_pen(255-0-80-255,2)
$gp_draw_rectangle(1,1,$eval(%gb_width%-2),$eval($get(itemH)-2))

$gp_set_brush(255-0-0-0)
$gp_set_font(Tahoma,10,b)
$gp_set_string_format(near,near,ellipsis_word)
$gp_set_text_rendering_hint(aa)
$gp_draw_string(%gb_group%,4,4,%gb_width%,36)

Per track popup code:
Code: [Select]
$set_org(4,$mul(15,%gb_track_index%))
$if(%gb_isplaying%,$gp_set_brush(255-255-0-0),$gp_set_brush(255-0-0-0))
$gp_set_font(Tahoma,9)
$gp_set_string_format(near,near)
$gp_set_text_rendering_hint(aa)
$gp_draw_string($add(%gb_track_index%,1). %title%,0,42,$eval(%gb_width%-38),15)
$gp_draw_string(%length%,$eval(%gb_width%-38),42,36,15)

Popup transparency should be 255 and Transparent mode need to be enabled. Set the vertical size of popup to a suitable height to accommodate long album (this has its downfall if set too long as I have said in one of my previous posts).
Title: foo_uie_graphical_browser
Post by: bowen_tk on 2008-03-16 02:19:40
thanks thuan.
I need a bit more help

Code: [Select]
$set_org(4,$mul(14,%gb_track_index%))
$if(%gb_isplaying%,$gp_set_brush(255-255-0-0),$gp_set_brush(255-0-0-0))
$gp_set_font(Tahoma,9)
$gp_set_text_rendering_hint(aa)
$gp_set_string_format(near,ellipsis_word)
$gp_draw_string($add(%gb_track_index%,1). %title%,0,50,%gb_width%,40)

Here is my popup per track code?
How can I make that if the title is too long it cut it and not put it on two lines

Thanks in advance
Title: foo_uie_graphical_browser
Post by: nightfishing on 2008-03-16 02:27:59
Here is my popup per track code?
How can I make that if the title is too long it cut it and not put it on two lines

Thanks in advance


$gp_draw_string($add(%gb_track_index%,1). $cut(%title%,15),0,50,%gb_width%,40)

adjust the "15" to fit your display
Title: foo_uie_graphical_browser
Post by: krondor on 2008-03-16 02:32:11
Thuan:         
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-16 02:32:38
@bowen_tk
Code: [Select]
$set_org(4,$mul(14,%gb_track_index%))
$if(%gb_isplaying%,$gp_set_brush(255-255-0-0),$gp_set_brush(255-0-0-0))
$gp_set_font(Tahoma,9)
$gp_set_text_rendering_hint(aa)
$gp_set_string_format(near,near,ellipsis_word)
$gp_draw_string($add(%gb_track_index%,1). %title%,0,50,%gb_width%,14)

You should have read the readme I translated on the first post.

EDIT: A little too slow, but my code should be better behave than nightfishing's IMHO.

EDIT2: @radecke: I and my friend have come up with a very detail use case of your 2nd request (interactive popup) and sent it to the developer. He said he will consider it. As for your other request I think a better way to realize it is to detect the area which you have drawn then draw the popup accordingly. Your idea is a little hard to implement both for us and him, I think.
Title: foo_uie_graphical_browser
Post by: bowen_tk on 2008-03-16 03:24:41
So many thanks for your fast answer and your help

I will better read the readme
Title: foo_uie_graphical_browser
Post by: radecke on 2008-03-16 10:42:46
EDIT2: @radecke: I and my friend have come up with a very detail use case of your 2nd request (interactive popup) and sent it to the developer. He said he will consider it. As for your other request I think a better way to realize it is to detect the area which you have drawn then draw the popup accordingly. Your idea is a little hard to implement both for us and him, I think.

sounds good
Title: foo_uie_graphical_browser
Post by: Varluche on 2008-03-16 13:02:01
You have to draw them yourself.

Try this basic one. Place it on first line.

$draw_image(0,0,%gb_width%,%gb_height%,$replace(%path%,%filename_ext%,folder.jpg),255,nokeepaspect)

I suggest if you don't know how to config them, Just copy someone else config. thuan config (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=61412&view=findpost&p=551897) is pretty nice.

Thanks Buktore, your code line is working fine.
One more question please : Everytime I doubleclick an album cover to play the album, picture disapppears and I get a blue square in its place. What's up ?! Thanks.
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-16 15:06:02
new version out. readme is below.

@Keikonium: put this at the front page please.
Code: [Select]
Graphical Browser

● What this component does:
Album cover browser for the active playlist.


● Caution
Settings are per panel so if you delete a panel, the settings for that panel
also disappear.


● Sort
Blank → Whatever works.
* → Sorted by grouped strings.

If you want to arrange in the same order as the playlist → $num(%gb_playlist_number%,10)


● Popup
Transparent mode
You can apply different level of transparence to every pixel. (e.g.: transparent background
with full opacity image and text.)
I think that GDI can't be used, please use GDI+ only.
Even with GDI+, text rendering without using $gp_set_text_rendering_hint(aa) doesn't look
good enough.

Per track
Draw order:
Popup → Per track(0) → Per track(1) → ...
Rendering settings (e.g.: pen, brush, font, ...) can't be set again midway.


● Image cache methods
Old
rev011 and older way. Cache images of all items.
Image cache is purged when switching playlist.

Default
Cache images to the set size.
Image cache is not purged when switching playlist.
If the image cache reach the limit, it will be purged.


● Variables
%gb_group%
[Item], [Popup], [Per track(Popup)]
Return the group string. E.g.: If you used $if2(%album%,@skip) to group,
it will return %album%.

%gb_width%
[Item]
Item width
[Popup], [Per track(Popup)]
Popup width

%gb_height%
[Item]
Item height
[Popup], [Per track(Popup)]
Popup height

%gb_focused%
[Item], [Popup], [Per track(Popup)]
Check whether focus is on the item or not

%gb_mouse_over%
[Item]
Check whether mouse cursor is on the item or not
[Popup], [Per track(Popup)]
Probably always true

%gb_item_index%
[Item], [Popup], [Per track(Popup)]
Return item index

%gb_item_count%
[Item], [Popup], [Per track(Popup)]
Return item count

%gb_track_count%
[Sort], [Item], [Popup], [Per track(Popup)]
Return number of songs in an item

%gb_playlist_number%
[Sort], [Item], [Popup]
Return position of song in playlist for the first song in an item
[Per track(Popup)]
Return position of song in playlist

%gb_col%
[Item], [Popup], [Per track(Popup)]
Return item column number

%gb_row%
[Item], [Popup], [Per track(Popup)]
Return item row number

%gb_col_count%
[Item], [Popup], [Per track(Popup)]
Return number of columns

%gb_row_count%
[Item], [Popup], [Per track(Popup)]
Return number of rows

%gb_isplaying%
[Item], [Popup]
Return true if a song in the item is playing
[Per track (Popup)]
Return true if it is playing

%gb_track_index%
[Per track (Popup)]
Position of track in item (O based)

%gb_length%
[Sort], [Item], [Popup], [Per track(Popup)]
Total length of item/track

%gb_length_seconds%
[Sort], [Item], [Popup], [Per track(Popup)]
Total length in seconds of item/track

%gb_calc_x%
%gb_calc_y%
%gb_calc_width%
%gb_calc_height%
[Item], [Popup], [Per track(Popup)]
Dimension calculations
Values change with functions below
$calc_text
$gp_calc_string
$gp_calc_string_path
$draw_image


● About functions:
Functions are divided into GDI and GDI+. They are different in pens, brushes and points.
For GDI, to set color with "r-g-b", use a base 10 number for each color component;
otherwise use base 16 number with "rrggbb". For GDI+, to set color with "a-r-g-b",
use a base 10 number for each color component and alpha channel; otherwise use
base 16 number with "aarrggbb". If you want to draw some thing with transparency
or effects like anti-aliasing, use GDI+. Some fonts (probably OpenType fonts with
PostScript outline) can't be used in GDI+ mode. Full-width hyphen can't be
displayed right in GDI+ mode.


● GDI function
$set_font(name,size,style)
Set font
name - font name
size - font size
style - style
Set multiple styles by combining options
"b" - bold
"i" - italic
"u" - underline
"s" - strikethrough

$set_font_color(color)
Set font color
color - color

$draw_text(str,x,y)
Draw text
str - string
x - start point x coordinate
y - start point y coordinate

$draw_text(str,x,y,width,height,[option1],[option2],...)
Draw text within the set limit
str - string
x - start point x coordinate
y - start point y coordinate
width - drawing width
height - drawing height
option - other option
"bottom" - draw at bottom, needs singleline
"center" - center aligned
"end_ellipsis" - if out of limit, append "...."
"left" - left aligned
"noclip" - no clip, same as no settings for width and height
"path_ellipsis" – like end_ellipsis but used for file path
"right" – right aligned
"singleline" - display with 1 line
"top" - draw at top
"vcenter" - vertical center aligned, needs singleline
"wordbreak" - display with multiple lines
"word_ellipsis" - truncates any word that does not fit in the
rectangle and adds ellipsis.
Details at [url=http://msdn2.microsoft.com/en-us/library/ms533909.aspx]http://msdn2.microsoft.com/en-us/library/ms533909.aspx[/url]

$calc_text(str)
$calc_text(str,width,height,[option1],[option2],...)
Calculate size of str when drawn.
Arguments are the same as $draw_text except x and y.
Use %gb_calc_*% to obtain values after this function.

$set_pen(color)
$set_pen(color,width)
$set_pen(color,width,style)
Pen settings
color - color
width - width[1], only effective when using "solid" style
style - style["solid"]
"solid" - solid line
"dash" - dashed line
"dot" - dotted line
"dashdot" - line with alternating dashes and dots
"dashdotdot" - line  with alternating dashes and double dots
Details at [url=http://msdn2.microsoft.com/en-us/library/ms535467(VS.85).aspx]http://msdn2.microsoft.com/en-us/library/m...467(VS.85).aspx[/url]

$set_brush(color)
$set_brush(color,style)
Brush settings
color - color
style - style: if it is not set, then brush is solid
"bdiagonal" - A 45-degree upward, left-to-right line pattern
"cross" - Horizontal and vertical cross pattern
"diagcross" - 45-degree cross pattern
"fdiagonal" - A 45-degree downward, left-to-right line pattern
"horizontal" - Horizontal line pattern
"vertical" - Vertical line pattern

$draw_rect(x,y,width,height)
Draw rectangle using pen
x - start point x coordinate
y - start point y coordinate
width - width
height - height

$fill_rect(x,y,width,height)
Fill rectangle using brush
x - start point x coordinate
y - start point y coordinate
width - width
height - height

$fill_draw_rect(x,y,width,height)
Draw rectangle using pen and brush
x - start point x coordinate
y - start point y coordinate
width - width
height - height

$round_rect(x,y,width,height,ellipse_width,ellipse_height)
Draw round corner rectangle with pen and brush
x - start point x coordinate
y - start point y coordinate
width - width
height - height
ellipse_width - ellipse width
ellipse_height - ellipse height

$draw_line(x1,y1,x2,y2)
Draw line using pen, end point is not drawn.
x1 - start point x coordinate
y1 - start point y coordinate
x2 - end point x coordinate
y2 - end point y coordinate


● GDI+ function
Because pen, brush, font do not have default values, please set them up with
$gp_set_* before using.

$gp_set_pen(argb,width)
$gp_set_pen(argb,width,style,line_join)
○ Overview:
Pen settings
○ Arguments:
argb - color
width - width
style - style ["solid"]
"solid" - solid line
"dash" - dashed line
"dot" - dotted line
"dashdot" - line with alternating dashes and dots
"dashdotdot" - line  with alternating dashes and double dots
line_join - stroke corner style ["miter"]
"miter"
"bevel"
"round"

$gp_set_brush(argb)
○ Overview:
Monocolor brush setting
○ Arguments:
argb - color

$gp_set_brush(style,argb1,argb2)
○ Overview:
Hatch brush settings
○ Argument:
style - Style
Use number in range 0 ~ 53.
Details at http://msdn2.microsoft.com/en-us/library/ms534127.aspx
argb1 - Foreground color.
argb2 - Background color.

$gp_set_brush(argb1,x1,y1,argb2,x2,y2)
○ Overview:
Set brush with linear gradual effect
○ Arguments:
argb1 - color 1
x1 - color 1 x coordinate
y1 - color 1 y coordinate
argb2 - color 2
x2 - color 2 x coordinate
y2 - color 2 y coordinate

$gp_set_font(name,size)
$gp_set_font(name,size,style_1,style_2...)
○ Overview:
Font settings
○ Arguments:
name - font name
size - font size
style - style
"b" - bold
"i" - italic
"bi" - bold and italic
"u" - underline
"s" - strikethrough

$gp_set_string_format(alignment,line_alignment,[trimming])
○ Overview:
Text drawing method settings
○ Arguments:
alignment - horizontal alignment
"near" - left
"center" - center
"far" - right
line_alignment - vertical alignment
"near" - top
"center" - center
"far" - bottom
trimming - Trimming.
"character"
"word"
"ellipsis_character"
"ellipsis_word"
"ellipsis_path"

$gp_set_smoothing_mode(antialias)
○ Overview:
Shape anti-alias setting
○ Arguments:
antialias - anti-alias
0 - disable
1 - enable

$gp_set_text_rendering_hint(mode)
○ Overview:
Text rendering method setting
○ Arguments:
mode - method
"default" - default
"sb+" - single bit per pixel grid fit
"sb" - single bit per pixel
"aa+" - anti alias grid fit
"aa" - anti alias
"ct" - clear type

$gp_draw_arc(x,y,width,height,start_angle,sweep_angle)
○ Overview:
Draw arc using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
start_angle - start angle (degree)
sweep_angle - end angle (degree)
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_ellipse(x,y,width,height)
○ Overview:
Draw ellipse using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_line(x1,y1,x2,y2)
○ Overview:
Draw line using pen
○ Arguments:
x1 - start point x coordinate
y1 - start point y coordinate
x2 - end point x coordinate
y2 - end point y coordinate
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_pie(x,y,width,height,start_angle,sweep_angle)
○ Overview:
Draw pie (fan shape) using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
start_angle - start angle (degree)
sweep_angle - end angle (degree)
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_rectangle(x,y,width,height)
○ Overview:
Draw rectangle using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_string(str,x,y)
$gp_draw_string(str,x,y,width,height)
○ Overview:
Draw string using brush
○ Arguments:
str - string
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_font
$gp_set_brush
$gp_set_text_rendering_hint
$gp_set_string_format

$gp_calc_string(str)
$gp_calc_string(str,width,height)
○ Overview
Calculate size of str when drawn

$gp_fill_ellipse(x,y,width,height)
○ Overview:
Fill ellipse using brush
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_brush
$gp_set_smoothing_mode

$gp_fill_pie(x,y,width,height,start_angle,sweep_angle)
○ Overview:
Fill pie using brush
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
start_angle - start angle (degree)
sweep_angle - end angle (degree)
○ Settings:
$gp_set_brush
$gp_set_smoothing_mode

$gp_fill_rectangle(x,y,width,height)
○ Overview:
Fill rectangle using brush
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_brush
$gp_set_smoothing_mode

$gp_draw_string_path(str,size,mode,x,y)
$gp_draw_string_path(str,size,mode,x,y,width,height)
○ Overview:
Draw string with border.
○ Arguments:
str - string
size - character size, px unit (different from current font size)
mode - draw mode
"" - fill and border
"stroke" - only border
"fill" - only fill
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_pen
$gp_set_brush
$gp_set_font
$gp_set_string_format
$gp_set_smoothing_mode
○ Examples:
$gp_set_font(Tahoma,9,b)
$gp_set_pen(ff1500ff,2,,round)
$gp_set_brush(ffddeeff)
$gp_set_string_format(center,center)
$gp_set_smoothing_mode(1)
$gp_draw_string_path(%gb_group%,16,,0,0,%gb_width%,%gb_height%)

$gp_calc_string_path(str,size,mode)
$gp_calc_string_path(str,size,mode,width,height)
○ Overview
Calculate size of str with border when drawn


● Draw image function
$draw_image(x,y,width,height,path)
$draw_image(x,y,width,height,path,alpha)
$draw_image(x,y,width,height,path,alpha,option)
$draw_image(x,y,width,height,path,alpha,option,rotate_flip)
○ Overview:
Draw image
○ Arguments:
x - starting point x coordinate
y - starting point y coordinate
width - width
height - height
path - absolute path to image, wild cards are accepted.
alpha - degree of opacity[255]
option - other options[""]
"nokeepaspect" - don't keep picture aspect ratio
"top" - draw at the top
"topright" - draw on the top right
"right" - draw from the right
"bottomright" - draw on the bottom right
"bottom" - draw at the bottom
"bottomleft" - draw on the bottom left
"left" - draw from the left
"topleft" - draw on the top left
rotate_flip - Rotation and flip [0]
0 - No rotation = Rotate right 180 degrees,
flip vertically then horizontally
1 - Rotate right 90 degrees = Rotate right 270 degrees,
flip vertically then horizontally
2 - Rotate right 180 degrees = Flip vertically then
horizontally
3 - Rotate right 270 degrees = Rotate right 90 degrees,
flip vertically then horizontally
4 - Flip horizontally = Rotate right 180 degrees,
flip vertically
5 - Rotate right 90 degrees, flip horizontally = Rotate
right 270 degrees, flip vertically
6 - Rotate right 180 degrees, flip horizontally = Flip
vertically
7 - Rotate right 270 degrees, flip horizontally = Rotate
right 90 degrees, flip vertically
○ Reference
After executing this function, you can use
%gb_calc_*% to obtain the real dimensions used.


● Other functions
$set_size(width,height)
○ Overview
Modify popup size, please use it only when drawing the popup.
Popup size is the upper limits, you can only set to smaller sizes.
%gb_width%,%gb_height% values are changed accordingly.
When width or height is 0 or less, popup won't be drawn.
○ Arguments:
width - width
height - height

$set_org(x,y)
○ Overview
Starting point setting
○ Arguments:
x - starting point x coordinate
y - starting point y coordinate

$sum(tf)
○ Overview
Calculate sum of values designated by TitleFormat.
○ Arguments:
tf - TitleFormat
○ Example: Total number played
$sum('%play_count%')


$eval(expression)
Evaluate the expression and calculate
expression - expression
E.g.: $eval(5+3)
E.g.: $eval({%gp_width%-10}/2)
※ Divide by zero expression returns 0.
Can be used with sort

● Change logs:
2008/03/16 rev014
Added - $set_size function
Added - %gb_calc_x% variable
Added - %gb_calc_y% variable
Added - %gb_calc_width% variable
Added - %gb_calc_height% variable
Added - $calc_text function
Added - $gp_calc_string function
Added - $gp_calc_string_path function
Fixed - $draw_image function
Fixed - $gp_set_string_format function(trimming argument) (however, they can always be used before,
just forgot to write here…
Fixed - Several bugs fixed

2008/03/12 rev013
Fixed - Fixed the slip happens sometimes when using keyboard to jump from item to item
Fixed - When drawing in GDI mode, fixed a drawing background bug

2008/03/11 rev012
Fixed - Fatal resource leak
Added - Image cache options

2008/03/10 rev011
Added - Ability to move focus to an item when pressing the first character of %gb_group%
using keyboard
Added - Ability to add to specified playlist instead of replacing it
Fixed - Fixed a bug that prevents you to scroll in Windows 2000 (probably...)
(TL's note: not sure about the last one, the meaning is a little vague and I don't have
Windows 2000 to test)

2008/03/09 rev010
Fixed - For some reason, I changed the variable name %gb_subitem_count% to %gb_track_count%
(the one before can still be used)
Added - Function $gp_set_brush(style,argb1,argb2)
Added - Function $set_org(x,y)
Added - Popup display  transparent mode
Added - Popup delay setting
Added - Function $sum(tf)
Added - Variable %gb_isplaying%
Added - Variable %gb_track_index%
Added - Variable %gb_length%
Added - Variable %gb_length_seconds%

2008/03/02 rev009
Fixed - Fixed the bug that causes rotateflip does nothing
Fixed - Fixed behavior when there's no scroll bar
Added - Added mouse over popup.

2008/03/02 rev008
Fixed - Fixed bug that prevent the use of wild cards in $draw_image function

2008/03/02 rev007
Added - Ability to [always show|if necessary show|hide] scroll bar
Fixed - $set_font function (style)
Fixed - $draw_image function (rotate_flip)
Added - Middle mouse button action
Added - Ability to send to specified playlist
Older change logs omitted.


● Copyright
TitleFormatting Editor
Copyright 1998-2003 by Neil Hodgson <neilh@scintilla.org> All Rights Reserved
[url=http://scintilla.sourceforge.net/]http://scintilla.sourceforge.net/[/url]
Title: foo_uie_graphical_browser
Post by: krondor on 2008-03-16 15:19:11
Some new functions??
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-16 15:31:10
Some new functions??

I can be nice to help you. But my kindness can't really be extended to the point of helping you reading the readme that I have translated in my previous post, can I?
Title: foo_uie_graphical_browser
Post by: buktore on 2008-03-16 15:37:07
@Varluche

Delete top 4 line (except the image code I give you) which look like this.

Code: [Select]
$if(%gb_focused%,
  $set_pen(808080,1)
  $set_brush(128-192-255)
  $round_rect(0,0,%gb_width%,%gb_height%,5,5)
,)


If you hate to see the text, delete the next paragraph of code. the last paragraph of code draw the "box" around your cover when you hover your mouse over them. Delete them if you also hate that.

EDIT: THX thuan for translation, I'm start to getting confuse now with more thing added & using google to translated the readme..
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-16 15:47:07
I started to do it long ago, but until now I only PM Keikonium to post it on the first post.
Title: foo_uie_graphical_browser
Post by: Varluche on 2008-03-16 15:52:54
@Varluche

Delete top 4 line (except the image code I give you)


Thanks Buktore, working now.
Title: foo_uie_graphical_browser
Post by: 4nt1 on 2008-03-17 01:15:38
can anyone advise on how you would get artist art to display as well as cd covers... now that foo_discogs works the way I want for artist art locating the image will be very easy...

any suggestions?
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-03-17 01:38:27
can anyone advise on how you would get artist art to display as well as cd covers... now that foo_discogs works the way I want for artist art locating the image will be very easy...

any suggestions?


No problem but it all depends where you stored your artist images. Mine are in each artist's folders and are named folder.jpg or folder.gif (which makes XP show them as the folder icons/thumbnail).

Thus:

$draw_image(3,3,%gb_width%,%gb_width%,D:\Documents\My Music\%artist%\Folder.*,255,nokeepaspect)
Title: foo_uie_graphical_browser
Post by: thuan on 2008-03-17 04:19:04
My updated config:
).
Download [a href="http://www.mediafire.com/?jfbjv110kld" target="_blank"]this file (http://img231.imageshack.us/my.php?image=foodp2.png)[/b] and import it.

Requirements:
* Graphical browser rev014.
* Play icon (http://i170.photobucket.com/albums/u248/nagayanobu/Play-icon256-by-nagaya.png) and glare (http://img171.imageshack.us/img171/5822/glareyo0.png) images. Put them info foobar components folder, if not tweak my config to accommodate your new paths.
* Item size requirement: horizontal size is about twice of vertical size. If you see cut off album names then tweak the setting I point to in item code.
* Popup size requirement: vertical size is 54 pixels bigger than horizontal size and minimum horizontal size is 150.
* If you're using WinXP, you need to have East Asian languages support. Those rating star characters need it.
(http://img507.imageshack.us/img507/5721/expg4.th.png) (http://img507.imageshack.us/my.php?image=expg4.png)

Remember to set scroll size to your item vertical size if you change my settings so that your item isn't cut off when you scroll.
Title: foo_uie_graphical_browser
Post by: cmdrpaddy on 2008-03-24 18:19:28
I was thinking about some of the things you could do with this component for a while and I was wondering if it was possible to bind different instances to each other?

My idea was a sort of graphical facets. In one panel you have a picture of the artists. Clicking on the picture would focus that artists albums in another instance of a graphical browser and give a list of tracks in another.
This is a sort of mock up of what I was thinking of.
(http://img141.imageshack.us/img141/8019/foobared4.th.jpg) (http://img141.imageshack.us/my.php?image=foobared4.jpg)

Currently If you have more than one artist in the left graphical browser panel the middle panel shows all the albums from all the artists. It would be nice if it would only display the albums of the artist that was selected.
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-03-24 22:12:04
I'm hoping to build a graphical facets type interface, too.

I don't think it will be possible until you can feed an instance of graphical browser from a named playlist (rather than from the active playlist as at present). Then its pretty easy to do by using a couple of intermediate playlists.

I raised this as a feature request which is being considered/developed.
Title: foo_uie_graphical_browser
Post by: cmdrpaddy on 2008-03-24 22:29:40
That's cool.

The main reason I was thinking of it was because I'd love to use it as an interface for a touch screen.
Title: foo_uie_graphical_browser
Post by: hsadan on 2008-03-25 03:02:18
is there a way to use this with the library instead of the playlist?
Title: foo_uie_graphical_browser
Post by: Kiteroa on 2008-03-25 03:29:35
is there a way to use this with the library instead of the playlist?


Not at present. It works only from the active playlist.
Title: foo_uie_graphical_browser
Post by: Falstaff on 2008-04-05 16:05:45
Hi,

i hope developper read will read these lines ...

1 - sometimes, text lose its anti-aliasing and looks ugly indeed, it looks to be a bug, could you fix it please ?

2 - to do list request : is it possible to add a default backgroud picture for the whole panel in order to fill the blank space left when there are only a few albums and that they don't fill the whole panel (only see the background color for now) ?

--> (http://xs226.xs.to/xs226/08146/untitled5290.jpg)

thanx by advance
Title: foo_uie_graphical_browser
Post by: thuan on 2008-04-05 16:43:18
Development of this component has stopped.
Title: foo_uie_graphical_browser
Post by: Falstaff on 2008-04-05 17:33:47
Development of this component has stopped.


what a shame !
Title: foo_uie_graphical_browser
Post by: thuan on 2008-04-05 18:34:26
BTW, where is the place you say that text loses its anti-aliasing? Is it in the popup?
Title: foo_uie_graphical_browser
Post by: Falstaff on 2008-04-05 18:51:37
BTW, where is the place you say that text loses its anti-aliasing? Is it in the popup?


No, in the Draw Item Section, it happens sometimes, i haven't yet determine when exactely
Title: foo_uie_graphical_browser
Post by: thuan on 2008-04-06 14:01:52
@Falstaff: There're three functions that can draw string/text. You may want to try a different function than what you're using now.
Title: foo_uie_graphical_browser
Post by: 4nt1 on 2008-04-09 02:29:38
with the latest foobar beta the cd case image and gloss effect I use over the album art no longer display.. I have not  changed anything and its as well?


never mind it works now.. weird
Title: foo_uie_graphical_browser
Post by: thuan on 2008-04-09 03:07:25
Some times, this component just fails to display images if you use relative path for them, restart foobar should fix it. I think this is your problem.
Title: foo_uie_graphical_browser
Post by: odyssey on 2008-04-09 11:36:21

Development of this component has stopped.


what a shame !

I guess this is one of the components that will break in future foobar2000, because it uses titleformatting instead of a proper language for graphical display.

What a shame that devs does take this into account, when it's widely proclaimed that this is REALLY deprecated! (especially when nice concept components like this shows up)
Title: foo_uie_graphical_browser
Post by: thuan on 2008-04-09 12:54:17
Likely, it won't break is what he told me after some exchanges in emails (he said that this component does not use metadb_display_hook). The reason that the development of this component was stopped is to honor the decision of foobar developers. He might come up with a component similar to this one in the future which doesn't use title formatting. No need to make a fuss. And I think that other developers that are currently developing components like this one should consider the same action.
Title: foo_uie_graphical_browser
Post by: thuan on 2008-04-20 03:29:29
New version rev015 anyway, so new readme translation.
Code: [Select]
Graphical Browser

● What this component does:
Album cover browser for the active playlist.


● Caution
Settings are per panel so if you delete a panel, the settings for that panel
also disappear.


● Sort
Blank → Whatever works.
* → Sorted by grouped strings.

If you want to arrange in the same order as the playlist → $num(%gb_playlist_number%,10)


● Popup
Transparent mode
You can apply different level of transparence to every pixel. (e.g.: transparent background
with full opacity image and text.)
I think that GDI can't be used, please use GDI+ only.
Even with GDI+, text rendering without using $gp_set_text_rendering_hint(aa) doesn't look
good enough.

Per track
Draw order:
Popup → Per track(0) → Per track(1) → ...
Rendering settings (e.g.: pen, brush, font, ...) can't be set again midway.


● Image cache methods
Old
rev011 and older way. Cache images of all items.
Image cache is purged when switching playlist.

Default
Cache images to the set size.
Image cache is not purged when switching playlist.
If the image cache reach the limit, it will be purged.


● Variables
%gb_group%
[Item], [Popup], [Per track(Popup)]
Return the group string. E.g.: If you used $if2(%album%,@skip) to group,
it will return %album%.

%gb_width%
[Item]
Item width
[Popup], [Per track(Popup)]
Popup width

%gb_height%
[Item]
Item height
[Popup], [Per track(Popup)]
Popup height

%gb_focused%
[Item], [Popup], [Per track(Popup)]
Check whether focus is on the item or not

%gb_mouse_over%
[Item]
Check whether mouse cursor is on the item or not
[Popup], [Per track(Popup)]
Probably always true

%gb_item_index%
[Item], [Popup], [Per track(Popup)]
Return item index

%gb_item_count%
[Item], [Popup], [Per track(Popup)]
Return item count

%gb_track_count%
[Sort], [Item], [Popup], [Per track(Popup)]
Return number of songs in an item

%gb_playlist_number%
[Sort], [Item], [Popup]
Return position of song in playlist for the first song in an item
[Per track(Popup)]
Return position of song in playlist

%gb_col%
[Item], [Popup], [Per track(Popup)]
Return item column number

%gb_row%
[Item], [Popup], [Per track(Popup)]
Return item row number

%gb_col_count%
[Item], [Popup], [Per track(Popup)]
Return number of columns

%gb_row_count%
[Item], [Popup], [Per track(Popup)]
Return number of rows

%gb_isplaying%
[Item], [Popup]
Return true if a song in the item is playing
[Per track (Popup)]
Return true if it is playing

%gb_track_index%
[Per track (Popup)]
Position of track in item (O based)

%gb_length%
[Sort], [Item], [Popup], [Per track(Popup)]
Total length of item/track

%gb_length_seconds%
[Sort], [Item], [Popup], [Per track(Popup)]
Total length in seconds of item/track

%gb_calc_x%
%gb_calc_y%
%gb_calc_width%
%gb_calc_height%
[Item], [Popup], [Per track(Popup)]
Dimension calculations
Values change with functions below
$calc_text
$gp_calc_string
$gp_calc_string_path
$draw_image


● About functions:
Functions are divided into GDI and GDI+. They are different in pens, brushes and points.
For GDI, to set color with "r-g-b", use a base 10 number for each color component;
otherwise use base 16 number with "rrggbb". For GDI+, to set color with "a-r-g-b",
use a base 10 number for each color component and alpha channel; otherwise use
base 16 number with "aarrggbb". If you want to draw some thing with transparency
or effects like anti-aliasing, use GDI+. Some fonts (probably OpenType fonts with
PostScript outline) can't be used in GDI+ mode. Full-width hyphen can't be
displayed right in GDI+ mode.


● GDI function
$set_font(name,size,style)
Set font
name - font name
size - font size
style - style
Set multiple styles by combining options
"b" - bold
"i" - italic
"u" - underline
"s" - strikethrough

$set_font_color(color)
Set font color
color - color

$draw_text(str,x,y)
Draw text
str - string
x - start point x coordinate
y - start point y coordinate

$draw_text(str,x,y,width,height,[option1],[option2],...)
Draw text within the set limit
str - string
x - start point x coordinate
y - start point y coordinate
width - drawing width
height - drawing height
option - other option
"bottom" - draw at bottom, needs singleline
"center" - center aligned
"end_ellipsis" - if out of limit, append "...."
"left" - left aligned
"noclip" - no clip, same as no settings for width and height
"path_ellipsis" – like end_ellipsis but used for file path
"right" – right aligned
"singleline" - display with 1 line
"top" - draw at top
"vcenter" - vertical center aligned, needs singleline
"wordbreak" - display with multiple lines
"word_ellipsis" - truncates any word that does not fit in the
rectangle and adds ellipsis.
Details at [url=http://msdn2.microsoft.com/en-us/library/ms533909.aspx]http://msdn2.microsoft.com/en-us/library/ms533909.aspx[/url]

$draw_text_blur(str,x,y,strength,[deep])
$draw_text_blur(str,x,y,width,height,strength,[deep],[option1],[option2],...)
○ Overview
Draw blurred text.
○ Arguments
str - string
x - start point x coordinate
y - start point y coordinate
strength - Blur strength (1..20)
deep - enable [1]
option - see $draw_text

$calc_text(str)
$calc_text(str,width,height,[option1],[option2],...)
Calculate size of str when drawn.
Arguments are the same as $draw_text except x and y.
Use %gb_calc_*% to obtain values after this function.

$set_pen(color)
$set_pen(color,width)
$set_pen(color,width,style)
Pen settings
color - color
width - width[1], only effective when using "solid" style
style - style["solid"]
"solid" - solid line
"dash" - dashed line
"dot" - dotted line
"dashdot" - line with alternating dashes and dots
"dashdotdot" - line  with alternating dashes and double dots
Details at [url=http://msdn2.microsoft.com/en-us/library/ms535467(VS.85).aspx]http://msdn2.microsoft.com/en-us/library/m...467(VS.85).aspx[/url]

$set_brush(color)
$set_brush(color,style)
Brush settings
color - color
style - style: if it is not set, then brush is solid
"bdiagonal" - A 45-degree upward, left-to-right line pattern
"cross" - Horizontal and vertical cross pattern
"diagcross" - 45-degree cross pattern
"fdiagonal" - A 45-degree downward, left-to-right line pattern
"horizontal" - Horizontal line pattern
"vertical" - Vertical line pattern

$draw_rect(x,y,width,height)
Draw rectangle using pen
x - start point x coordinate
y - start point y coordinate
width - width
height - height

$fill_rect(x,y,width,height)
Fill rectangle using brush
x - start point x coordinate
y - start point y coordinate
width - width
height - height

$fill_draw_rect(x,y,width,height)
Draw rectangle using pen and brush
x - start point x coordinate
y - start point y coordinate
width - width
height - height

$round_rect(x,y,width,height,ellipse_width,ellipse_height)
Draw round corner rectangle with pen and brush
x - start point x coordinate
y - start point y coordinate
width - width
height - height
ellipse_width - ellipse width
ellipse_height - ellipse height

$draw_line(x1,y1,x2,y2)
Draw line using pen, end point is not drawn.
x1 - start point x coordinate
y1 - start point y coordinate
x2 - end point x coordinate
y2 - end point y coordinate


● GDI+ function
Because pen, brush, font do not have default values, please set them up with
$gp_set_* before using.

$gp_set_pen(argb,width)
$gp_set_pen(argb,width,style,line_join)
○ Overview:
Pen settings
○ Arguments:
argb - color
width - width
style - style ["solid"]
"solid" - solid line
"dash" - dashed line
"dot" - dotted line
"dashdot" - line with alternating dashes and dots
"dashdotdot" - line  with alternating dashes and double dots
line_join - stroke corner style ["miter"]
"miter"
"bevel"
"round"

$gp_set_brush(argb)
○ Overview:
Monocolor brush setting
○ Arguments:
argb - color

$gp_set_brush(style,argb1,argb2)
○ Overview:
Hatch brush settings
○ Argument:
style - Style
Use number in range 0 ~ 53.
Details at http://msdn2.microsoft.com/en-us/library/ms534127.aspx
argb1 - Foreground color.
argb2 - Background color.

$gp_set_brush(argb1,x1,y1,argb2,x2,y2)
○ Overview:
Set brush with linear gradual effect
○ Arguments:
argb1 - color 1
x1 - color 1 x coordinate
y1 - color 1 y coordinate
argb2 - color 2
x2 - color 2 x coordinate
y2 - color 2 y coordinate

$gp_set_font(name,size)
$gp_set_font(name,size,style_1,style_2...)
○ Overview:
Font settings
○ Arguments:
name - font name
size - font size
style - style
"b" - bold
"i" - italic
"bi" - bold and italic
"u" - underline
"s" - strikethrough

$gp_set_string_format(alignment,line_alignment,[trimming])
○ Overview:
Text drawing method settings
○ Arguments:
alignment - horizontal alignment
"near" - left
"center" - center
"far" - right
line_alignment - vertical alignment
"near" - top
"center" - center
"far" - bottom
trimming - Trimming.
"character"
"word"
"ellipsis_character"
"ellipsis_word"
"ellipsis_path"

$gp_set_smoothing_mode(antialias)
○ Overview:
Shape anti-alias setting
○ Arguments:
antialias - anti-alias
0 - disable
1 - enable

$gp_set_text_rendering_hint(mode)
○ Overview:
Text rendering method setting
○ Arguments:
mode - method
"default" - default
"sb+" - single bit per pixel grid fit
"sb" - single bit per pixel
"aa+" - anti alias grid fit
"aa" - anti alias
"ct" - clear type

$gp_draw_arc(x,y,width,height,start_angle,sweep_angle)
○ Overview:
Draw arc using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
start_angle - start angle (degree)
sweep_angle - end angle (degree)
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_ellipse(x,y,width,height)
○ Overview:
Draw ellipse using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_line(x1,y1,x2,y2)
○ Overview:
Draw line using pen
○ Arguments:
x1 - start point x coordinate
y1 - start point y coordinate
x2 - end point x coordinate
y2 - end point y coordinate
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_pie(x,y,width,height,start_angle,sweep_angle)
○ Overview:
Draw pie (fan shape) using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
start_angle - start angle (degree)
sweep_angle - end angle (degree)
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_rectangle(x,y,width,height)
○ Overview:
Draw rectangle using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_string(str,x,y)
$gp_draw_string(str,x,y,width,height)
○ Overview:
Draw string using brush
○ Arguments:
str - string
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_font
$gp_set_brush
$gp_set_text_rendering_hint
$gp_set_string_format

$gp_calc_string(str)
$gp_calc_string(str,width,height)
○ Overview
Calculate size of str when drawn

$gp_fill_ellipse(x,y,width,height)
○ Overview:
Fill ellipse using brush
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_brush
$gp_set_smoothing_mode

$gp_fill_pie(x,y,width,height,start_angle,sweep_angle)
○ Overview:
Fill pie using brush
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
start_angle - start angle (degree)
sweep_angle - end angle (degree)
○ Settings:
$gp_set_brush
$gp_set_smoothing_mode

$gp_fill_rectangle(x,y,width,height)
○ Overview:
Fill rectangle using brush
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_brush
$gp_set_smoothing_mode

$gp_draw_string_path(str,size,mode,x,y)
$gp_draw_string_path(str,size,mode,x,y,width,height)
○ Overview:
Draw string with border.
○ Arguments:
str - string
size - character size, px unit (different from current font size)
mode - draw mode
"" - fill and border
"stroke" - only border
"fill" - only fill
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_pen
$gp_set_brush
$gp_set_font
$gp_set_string_format
$gp_set_smoothing_mode
○ Examples:
$gp_set_font(Tahoma,9,b)
$gp_set_pen(ff1500ff,2,,round)
$gp_set_brush(ffddeeff)
$gp_set_string_format(center,center)
$gp_set_smoothing_mode(1)
$gp_draw_string_path(%gb_group%,16,,0,0,%gb_width%,%gb_height%)

$gp_calc_string_path(str,size,mode)
$gp_calc_string_path(str,size,mode,width,height)
○ Overview
Calculate size of str with border when drawn


● Draw image function
$draw_image(x,y,width,height,path)
$draw_image(x,y,width,height,path,alpha)
$draw_image(x,y,width,height,path,alpha,option)
$draw_image(x,y,width,height,path,alpha,option,rotate_flip)
○ Overview:
Draw image
○ Arguments:
x - starting point x coordinate
y - starting point y coordinate
width - width
height - height
path - absolute path to image, wild cards are accepted.
alpha - degree of opacity[255]
option - other options[""]
"nokeepaspect" - don't keep picture aspect ratio
"top" - draw at the top
"topright" - draw on the top right
"right" - draw from the right
"bottomright" - draw on the bottom right
"bottom" - draw at the bottom
"bottomleft" - draw on the bottom left
"left" - draw from the left
"topleft" - draw on the top left
rotate_flip - Rotation and flip [0]
0 - No rotation = Rotate right 180 degrees,
flip vertically then horizontally
1 - Rotate right 90 degrees = Rotate right 270 degrees,
flip vertically then horizontally
2 - Rotate right 180 degrees = Flip vertically then
horizontally
3 - Rotate right 270 degrees = Rotate right 90 degrees,
flip vertically then horizontally
4 - Flip horizontally = Rotate right 180 degrees,
flip vertically
5 - Rotate right 90 degrees, flip horizontally = Rotate
right 270 degrees, flip vertically
6 - Rotate right 180 degrees, flip horizontally = Flip
vertically
7 - Rotate right 270 degrees, flip horizontally = Rotate
right 90 degrees, flip vertically
○ Reference
After executing this function, you can use
%gb_calc_*% to obtain the real dimensions used.


● Other functions
$set_size(width,height)
○ Overview
Modify popup size, please use it only when drawing the popup.
Popup size is the upper limits, you can only set to smaller sizes.
%gb_width%,%gb_height% values are changed accordingly.
When width or height is 0 or less, popup won't be drawn.
○ Arguments:
width - width
height - height

$set_org(x,y)
○ Overview
Starting point setting
○ Arguments:
x - starting point x coordinate
y - starting point y coordinate

$set_clip_rect()
$set_clip_rect(x,y,width,height)
○ Overview
Only draw GDI, GDI+, and pictures inside the designated area.
Cancel this function effect by calling it with no argument.

$sum(tf)
○ Overview
Calculate sum of values designated by TitleFormat.
○ Arguments:
tf - TitleFormat
○ Example: Total number played
$sum('%play_count%')


$eval(expression)
Evaluate the expression and calculate
expression - expression
E.g.: $eval(5+3)
E.g.: $eval({%gp_width%-10}/2)
※ Divide by zero expression returns 0.
Can be used with sort

● Change logs:
2008/04/20 rev015
Added - $draw_text_blur function
Added - $set_clip_rect function
Added - "(show track menu)" action

2008/03/16 rev014
Added - $set_size function
Added - %gb_calc_x% variable
Added - %gb_calc_y% variable
Added - %gb_calc_width% variable
Added - %gb_calc_height% variable
Added - $calc_text function
Added - $gp_calc_string function
Added - $gp_calc_string_path function
Fixed - $draw_image function
Fixed - $gp_set_string_format function(trimming argument) (however, they can always be used before,
just forgot to write here…
Fixed - Several bugs fixed

2008/03/12 rev013
Fixed - Fixed the slip happens sometimes when using keyboard to jump from item to item
Fixed - When drawing in GDI mode, fixed a drawing background bug

2008/03/11 rev012
Fixed - Fatal resource leak
Added - Image cache options

2008/03/10 rev011
Added - Ability to move focus to an item when pressing the first character of %gb_group%
using keyboard
Added - Ability to add to specified playlist instead of replacing it
Fixed - Fixed a bug that prevents you to scroll in Windows 2000 (probably...)
(TL's note: not sure about the last one, the meaning is a little vague and I don't have
Windows 2000 to test)

2008/03/09 rev010
Fixed - For some reason, I changed the variable name %gb_subitem_count% to %gb_track_count%
(the one before can still be used)
Added - Function $gp_set_brush(style,argb1,argb2)
Added - Function $set_org(x,y)
Added - Popup display  transparent mode
Added - Popup delay setting
Added - Function $sum(tf)
Added - Variable %gb_isplaying%
Added - Variable %gb_track_index%
Added - Variable %gb_length%
Added - Variable %gb_length_seconds%

2008/03/02 rev009
Fixed - Fixed the bug that causes rotateflip does nothing
Fixed - Fixed behavior when there's no scroll bar
Added - Added mouse over popup.

2008/03/02 rev008
Fixed - Fixed bug that prevent the use of wild cards in $draw_image function

2008/03/02 rev007
Added - Ability to [always show|if necessary show|hide] scroll bar
Fixed - $set_font function (style)
Fixed - $draw_image function (rotate_flip)
Added - Middle mouse button action
Added - Ability to send to specified playlist
Older change logs omitted.


● Copyright
TitleFormatting Editor
Copyright 1998-2003 by Neil Hodgson <neilh@scintilla.org> All Rights Reserved
[url=http://scintilla.sourceforge.net/]http://scintilla.sourceforge.net/[/url]
Title: foo_uie_graphical_browser
Post by: BlackDiggs on 2008-04-24 21:46:11
Can any offer some advice? I want to do random "no cover art" images, but this doesn't seem to work:

$puts(nocover,images\noalbumart$rand(10).png)
Title: foo_uie_graphical_browser
Post by: Falstaff on 2008-04-24 22:09:51
New version rev015 anyway, so new readme translation.
Code: [Select]
Graphical Browser

● What this component does:
Album cover browser for the active playlist.


● Caution
Settings are per panel so if you delete a panel, the settings for that panel
also disappear.


● Sort
Blank → Whatever works.
* → Sorted by grouped strings.

If you want to arrange in the same order as the playlist → $num(%gb_playlist_number%,10)


● Popup
Transparent mode
You can apply different level of transparence to every pixel. (e.g.: transparent background
with full opacity image and text.)
I think that GDI can't be used, please use GDI+ only.
Even with GDI+, text rendering without using $gp_set_text_rendering_hint(aa) doesn't look
good enough.

Per track
Draw order:
Popup → Per track(0) → Per track(1) → ...
Rendering settings (e.g.: pen, brush, font, ...) can't be set again midway.


● Image cache methods
Old
rev011 and older way. Cache images of all items.
Image cache is purged when switching playlist.

Default
Cache images to the set size.
Image cache is not purged when switching playlist.
If the image cache reach the limit, it will be purged.


● Variables
%gb_group%
[Item], [Popup], [Per track(Popup)]
Return the group string. E.g.: If you used $if2(%album%,@skip) to group,
it will return %album%.

%gb_width%
[Item]
Item width
[Popup], [Per track(Popup)]
Popup width

%gb_height%
[Item]
Item height
[Popup], [Per track(Popup)]
Popup height

%gb_focused%
[Item], [Popup], [Per track(Popup)]
Check whether focus is on the item or not

%gb_mouse_over%
[Item]
Check whether mouse cursor is on the item or not
[Popup], [Per track(Popup)]
Probably always true

%gb_item_index%
[Item], [Popup], [Per track(Popup)]
Return item index

%gb_item_count%
[Item], [Popup], [Per track(Popup)]
Return item count

%gb_track_count%
[Sort], [Item], [Popup], [Per track(Popup)]
Return number of songs in an item

%gb_playlist_number%
[Sort], [Item], [Popup]
Return position of song in playlist for the first song in an item
[Per track(Popup)]
Return position of song in playlist

%gb_col%
[Item], [Popup], [Per track(Popup)]
Return item column number

%gb_row%
[Item], [Popup], [Per track(Popup)]
Return item row number

%gb_col_count%
[Item], [Popup], [Per track(Popup)]
Return number of columns

%gb_row_count%
[Item], [Popup], [Per track(Popup)]
Return number of rows

%gb_isplaying%
[Item], [Popup]
Return true if a song in the item is playing
[Per track (Popup)]
Return true if it is playing

%gb_track_index%
[Per track (Popup)]
Position of track in item (O based)

%gb_length%
[Sort], [Item], [Popup], [Per track(Popup)]
Total length of item/track

%gb_length_seconds%
[Sort], [Item], [Popup], [Per track(Popup)]
Total length in seconds of item/track

%gb_calc_x%
%gb_calc_y%
%gb_calc_width%
%gb_calc_height%
[Item], [Popup], [Per track(Popup)]
Dimension calculations
Values change with functions below
$calc_text
$gp_calc_string
$gp_calc_string_path
$draw_image


● About functions:
Functions are divided into GDI and GDI+. They are different in pens, brushes and points.
For GDI, to set color with "r-g-b", use a base 10 number for each color component;
otherwise use base 16 number with "rrggbb". For GDI+, to set color with "a-r-g-b",
use a base 10 number for each color component and alpha channel; otherwise use
base 16 number with "aarrggbb". If you want to draw some thing with transparency
or effects like anti-aliasing, use GDI+. Some fonts (probably OpenType fonts with
PostScript outline) can't be used in GDI+ mode. Full-width hyphen can't be
displayed right in GDI+ mode.


● GDI function
$set_font(name,size,style)
Set font
name - font name
size - font size
style - style
Set multiple styles by combining options
"b" - bold
"i" - italic
"u" - underline
"s" - strikethrough

$set_font_color(color)
Set font color
color - color

$draw_text(str,x,y)
Draw text
str - string
x - start point x coordinate
y - start point y coordinate

$draw_text(str,x,y,width,height,[option1],[option2],...)
Draw text within the set limit
str - string
x - start point x coordinate
y - start point y coordinate
width - drawing width
height - drawing height
option - other option
"bottom" - draw at bottom, needs singleline
"center" - center aligned
"end_ellipsis" - if out of limit, append "...."
"left" - left aligned
"noclip" - no clip, same as no settings for width and height
"path_ellipsis" – like end_ellipsis but used for file path
"right" – right aligned
"singleline" - display with 1 line
"top" - draw at top
"vcenter" - vertical center aligned, needs singleline
"wordbreak" - display with multiple lines
"word_ellipsis" - truncates any word that does not fit in the
rectangle and adds ellipsis.
Details at [url=http://msdn2.microsoft.com/en-us/library/ms533909.aspx]http://msdn2.microsoft.com/en-us/library/ms533909.aspx[/url]

$draw_text_blur(str,x,y,strength,[deep])
$draw_text_blur(str,x,y,width,height,strength,[deep],[option1],[option2],...)
○ Overview
Draw blurred text.
○ Arguments
str - string
x - start point x coordinate
y - start point y coordinate
strength - Blur strength (1..20)
deep - enable [1]
option - see $draw_text

$calc_text(str)
$calc_text(str,width,height,[option1],[option2],...)
Calculate size of str when drawn.
Arguments are the same as $draw_text except x and y.
Use %gb_calc_*% to obtain values after this function.

$set_pen(color)
$set_pen(color,width)
$set_pen(color,width,style)
Pen settings
color - color
width - width[1], only effective when using "solid" style
style - style["solid"]
"solid" - solid line
"dash" - dashed line
"dot" - dotted line
"dashdot" - line with alternating dashes and dots
"dashdotdot" - line  with alternating dashes and double dots
Details at [url=http://msdn2.microsoft.com/en-us/library/ms535467(VS.85).aspx]http://msdn2.microsoft.com/en-us/library/m...467(VS.85).aspx[/url]

$set_brush(color)
$set_brush(color,style)
Brush settings
color - color
style - style: if it is not set, then brush is solid
"bdiagonal" - A 45-degree upward, left-to-right line pattern
"cross" - Horizontal and vertical cross pattern
"diagcross" - 45-degree cross pattern
"fdiagonal" - A 45-degree downward, left-to-right line pattern
"horizontal" - Horizontal line pattern
"vertical" - Vertical line pattern

$draw_rect(x,y,width,height)
Draw rectangle using pen
x - start point x coordinate
y - start point y coordinate
width - width
height - height

$fill_rect(x,y,width,height)
Fill rectangle using brush
x - start point x coordinate
y - start point y coordinate
width - width
height - height

$fill_draw_rect(x,y,width,height)
Draw rectangle using pen and brush
x - start point x coordinate
y - start point y coordinate
width - width
height - height

$round_rect(x,y,width,height,ellipse_width,ellipse_height)
Draw round corner rectangle with pen and brush
x - start point x coordinate
y - start point y coordinate
width - width
height - height
ellipse_width - ellipse width
ellipse_height - ellipse height

$draw_line(x1,y1,x2,y2)
Draw line using pen, end point is not drawn.
x1 - start point x coordinate
y1 - start point y coordinate
x2 - end point x coordinate
y2 - end point y coordinate


● GDI+ function
Because pen, brush, font do not have default values, please set them up with
$gp_set_* before using.

$gp_set_pen(argb,width)
$gp_set_pen(argb,width,style,line_join)
○ Overview:
Pen settings
○ Arguments:
argb - color
width - width
style - style ["solid"]
"solid" - solid line
"dash" - dashed line
"dot" - dotted line
"dashdot" - line with alternating dashes and dots
"dashdotdot" - line  with alternating dashes and double dots
line_join - stroke corner style ["miter"]
"miter"
"bevel"
"round"

$gp_set_brush(argb)
○ Overview:
Monocolor brush setting
○ Arguments:
argb - color

$gp_set_brush(style,argb1,argb2)
○ Overview:
Hatch brush settings
○ Argument:
style - Style
Use number in range 0 ~ 53.
Details at http://msdn2.microsoft.com/en-us/library/ms534127.aspx
argb1 - Foreground color.
argb2 - Background color.

$gp_set_brush(argb1,x1,y1,argb2,x2,y2)
○ Overview:
Set brush with linear gradual effect
○ Arguments:
argb1 - color 1
x1 - color 1 x coordinate
y1 - color 1 y coordinate
argb2 - color 2
x2 - color 2 x coordinate
y2 - color 2 y coordinate

$gp_set_font(name,size)
$gp_set_font(name,size,style_1,style_2...)
○ Overview:
Font settings
○ Arguments:
name - font name
size - font size
style - style
"b" - bold
"i" - italic
"bi" - bold and italic
"u" - underline
"s" - strikethrough

$gp_set_string_format(alignment,line_alignment,[trimming])
○ Overview:
Text drawing method settings
○ Arguments:
alignment - horizontal alignment
"near" - left
"center" - center
"far" - right
line_alignment - vertical alignment
"near" - top
"center" - center
"far" - bottom
trimming - Trimming.
"character"
"word"
"ellipsis_character"
"ellipsis_word"
"ellipsis_path"

$gp_set_smoothing_mode(antialias)
○ Overview:
Shape anti-alias setting
○ Arguments:
antialias - anti-alias
0 - disable
1 - enable

$gp_set_text_rendering_hint(mode)
○ Overview:
Text rendering method setting
○ Arguments:
mode - method
"default" - default
"sb+" - single bit per pixel grid fit
"sb" - single bit per pixel
"aa+" - anti alias grid fit
"aa" - anti alias
"ct" - clear type

$gp_draw_arc(x,y,width,height,start_angle,sweep_angle)
○ Overview:
Draw arc using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
start_angle - start angle (degree)
sweep_angle - end angle (degree)
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_ellipse(x,y,width,height)
○ Overview:
Draw ellipse using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_line(x1,y1,x2,y2)
○ Overview:
Draw line using pen
○ Arguments:
x1 - start point x coordinate
y1 - start point y coordinate
x2 - end point x coordinate
y2 - end point y coordinate
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_pie(x,y,width,height,start_angle,sweep_angle)
○ Overview:
Draw pie (fan shape) using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
start_angle - start angle (degree)
sweep_angle - end angle (degree)
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_rectangle(x,y,width,height)
○ Overview:
Draw rectangle using pen
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_pen
$gp_set_smoothing_mode

$gp_draw_string(str,x,y)
$gp_draw_string(str,x,y,width,height)
○ Overview:
Draw string using brush
○ Arguments:
str - string
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_font
$gp_set_brush
$gp_set_text_rendering_hint
$gp_set_string_format

$gp_calc_string(str)
$gp_calc_string(str,width,height)
○ Overview
Calculate size of str when drawn

$gp_fill_ellipse(x,y,width,height)
○ Overview:
Fill ellipse using brush
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_brush
$gp_set_smoothing_mode

$gp_fill_pie(x,y,width,height,start_angle,sweep_angle)
○ Overview:
Fill pie using brush
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
start_angle - start angle (degree)
sweep_angle - end angle (degree)
○ Settings:
$gp_set_brush
$gp_set_smoothing_mode

$gp_fill_rectangle(x,y,width,height)
○ Overview:
Fill rectangle using brush
○ Arguments:
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_brush
$gp_set_smoothing_mode

$gp_draw_string_path(str,size,mode,x,y)
$gp_draw_string_path(str,size,mode,x,y,width,height)
○ Overview:
Draw string with border.
○ Arguments:
str - string
size - character size, px unit (different from current font size)
mode - draw mode
"" - fill and border
"stroke" - only border
"fill" - only fill
x - top left x coordinate
y - top left y coordinate
width - width
height - height
○ Settings:
$gp_set_pen
$gp_set_brush
$gp_set_font
$gp_set_string_format
$gp_set_smoothing_mode
○ Examples:
$gp_set_font(Tahoma,9,b)
$gp_set_pen(ff1500ff,2,,round)
$gp_set_brush(ffddeeff)
$gp_set_string_format(center,center)
$gp_set_smoothing_mode(1)
$gp_draw_string_path(%gb_group%,16,,0,0,%gb_width%,%gb_height%)

$gp_calc_string_path(str,size,mode)
$gp_calc_string_path(str,size,mode,width,height)
○ Overview
Calculate size of str with border when drawn


● Draw image function
$draw_image(x,y,width,height,path)
$draw_image(x,y,width,height,path,alpha)
$draw_image(x,y,width,height,path,alpha,option)
$draw_image(x,y,width,height,path,alpha,option,rotate_flip)
○ Overview:
Draw image
○ Arguments:
x - starting point x coordinate
y - starting point y coordinate
width - width
height - height
path - absolute path to image, wild cards are accepted.
alpha - degree of opacity[255]
option - other options[""]
"nokeepaspect" - don't keep picture aspect ratio
"top" - draw at the top
"topright" - draw on the top right
"right" - draw from the right
"bottomright" - draw on the bottom right
"bottom" - draw at the bottom
"bottomleft" - draw on the bottom left
"left" - draw from the left
"topleft" - draw on the top left
rotate_flip - Rotation and flip [0]
0 - No rotation = Rotate right 180 degrees,
flip vertically then horizontally
1 - Rotate right 90 degrees = Rotate right 270 degrees,
flip vertically then horizontally
2 - Rotate right 180 degrees = Flip vertically then
horizontally
3 - Rotate right 270 degrees = Rotate right 90 degrees,
flip vertically then horizontally
4 - Flip horizontally = Rotate right 180 degrees,
flip vertically
5 - Rotate right 90 degrees, flip horizontally = Rotate
right 270 degrees, flip vertically
6 - Rotate right 180 degrees, flip horizontally = Flip
vertically
7 - Rotate right 270 degrees, flip horizontally = Rotate
right 90 degrees, flip vertically
○ Reference
After executing this function, you can use
%gb_calc_*% to obtain the real dimensions used.


● Other functions
$set_size(width,height)
○ Overview
Modify popup size, please use it only when drawing the popup.
Popup size is the upper limits, you can only set to smaller sizes.
%gb_width%,%gb_height% values are changed accordingly.
When width or height is 0 or less, popup won't be drawn.
○ Arguments:
width - width
height - height

$set_org(x,y)
○ Overview
Starting point setting
○ Arguments:
x - starting point x coordinate
y - starting point y coordinate

$set_clip_rect()
$set_clip_rect(x,y,width,height)
○ Overview
Only draw GDI, GDI+, and pictures inside the designated area.
Cancel this function effect by calling it with no argument.

$sum(tf)
○ Overview
Calculate sum of values designated by TitleFormat.
○ Arguments:
tf - TitleFormat
○ Example: Total number played
$sum('%play_count%')


$eval(expression)
Evaluate the expression and calculate
expression - expression
E.g.: $eval(5+3)
E.g.: $eval({%gp_width%-10}/2)
※ Divide by zero expression returns 0.
Can be used with sort

● Change logs:
2008/04/20 rev015
Added - $draw_text_blur function
Added - $set_clip_rect function
Added - "(show track menu)" action

2008/03/16 rev014
Added - $set_size function
Added - %gb_calc_x% variable
Added - %gb_calc_y% variable
Added - %gb_calc_width% variable
Added - %gb_calc_height% variable
Added - $calc_text function
Added - $gp_calc_string function
Added - $gp_calc_string_path function
Fixed - $draw_image function
Fixed - $gp_set_string_format function(trimming argument) (however, they can always be used before,
just forgot to write here…
Fixed - Several bugs fixed

2008/03/12 rev013
Fixed - Fixed the slip happens sometimes when using keyboard to jump from item to item
Fixed - When drawing in GDI mode, fixed a drawing background bug

2008/03/11 rev012
Fixed - Fatal resource leak
Added - Image cache options

2008/03/10 rev011
Added - Ability to move focus to an item when pressing the first character of %gb_group%
using keyboard
Added - Ability to add to specified playlist instead of replacing it
Fixed - Fixed a bug that prevents you to scroll in Windows 2000 (probably...)
(TL's note: not sure about the last one, the meaning is a little vague and I don't have
Windows 2000 to test)

2008/03/09 rev010
Fixed - For some reason, I changed the variable name %gb_subitem_count% to %gb_track_count%
(the one before can still be used)
Added - Function $gp_set_brush(style,argb1,argb2)
Added - Function $set_org(x,y)
Added - Popup display  transparent mode
Added - Popup delay setting
Added - Function $sum(tf)
Added - Variable %gb_isplaying%
Added - Variable %gb_track_index%
Added - Variable %gb_length%
Added - Variable %gb_length_seconds%

2008/03/02 rev009
Fixed - Fixed the bug that causes rotateflip does nothing
Fixed - Fixed behavior when there's no scroll bar
Added - Added mouse over popup.

2008/03/02 rev008
Fixed - Fixed bug that prevent the use of wild cards in $draw_image function

2008/03/02 rev007
Added - Ability to [always show|if necessary show|hide] scroll bar
Fixed - $set_font function (style)
Fixed - $draw_image function (rotate_flip)
Added - Middle mouse button action
Added - Ability to send to specified playlist
Older change logs omitted.


● Copyright
TitleFormatting Editor
Copyright 1998-2003 by Neil Hodgson <neilh@scintilla.org> All Rights Reserved
[url=http://scintilla.sourceforge.net/]http://scintilla.sourceforge.net/[/url]

very good news
Title: foo_uie_graphical_browser
Post by: thuan on 2008-04-25 02:39:08
Can any offer some advice? I want to do random "no cover art" images, but this doesn't seem to work:

$puts(nocover,images\noalbumart$rand(10).png)

I have never used $rand function much, so I don't really know but it seems $rand function does not work on latest foobar. Guess that's it?
Title: foo_uie_graphical_browser
Post by: pIv on 2008-04-25 09:30:39
thuan
$rand function does not work on latest foobar, you must use next one: $cwb_rand()
Title: foo_uie_graphical_browser
Post by: BlackDiggs on 2008-04-25 16:03:26
thuan
$rand function does not work on latest foobar, you must use next one: $cwb_rand()


Code: [Select]
//cover sources, if you add more sources please add more $draw_image functions below
$puts(cpath1,$replace(%path%,%filename_ext%,*))
$puts(cpath2,$replace(%path%,%directory%\%filename_ext%,*))

//no cover source, remember to change this if needed
$puts(nocover1,images\noalbumart$cwb_rand(16).png)

//other image sources
$puts(glareImage,images\glare.png)
$puts(playIcon,images\av_play.png)

//dimensions and positions of objects
$puts(itemW,$eval(%gb_width%-1))
$puts(itemH,$eval(%gb_height%-1))
$puts(frameD,$eval(%gb_height%-8))
$puts(frameCu,$eval(%gb_height%/30))
$puts(coverD,$eval($get(frameD)-4))
$puts(textX,$eval($get(frameD)+7))
$puts(textW,$eval(%gb_width%-$get(textX)-4))
$puts(textH,$eval(%gb_height%-20))
$puts(subitem_countY,$eval($get(textH)+6))

//check whether item is playing
$puts(isplaying,$if($and($strcmp(%cwb_activelist%,%cwb_playinglist%),
$greater($add(%gb_playlist_number%,%gb_subitem_count%,1),%cwb_playing_index%),
$greater(%cwb_playing_index%,%gb_playlist_number%)),
1,))
///////////////////////////////////

$set_brush(240-240-240,cross)
$fill_rect(0,0,%gb_width%,%gb_height%)

$select($add($mod(%gb_item_index%,2),1),
$gp_set_brush(100-200-200-200),
$gp_set_brush(100-240-240-240)
)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)

$if(%gb_focused%,
$set_pen(0-0-0)
$draw_rect(0,0,$get(itemW),$get(itemH))
)

$set_pen(0-0-0)
$set_brush(0-0-0)
$round_rect(5,4,$get(frameD),$get(frameD),$get(frameCu),$get(frameCu))

//add more cover sources here
$if3(
$draw_image(7,6,$get(coverD),$get(coverD),$get(cpath1),255,nokeepaspect),
$draw_image(7,6,$get(coverD),$get(coverD),$get(cpath2),255,nokeepaspect),
$draw_image(7,6,$get(coverD),$get(coverD),$get(nocover1),255,nokeepaspect)
)

$draw_image(7,6,$get(coverD),$get(coverD),$get(glareImage),50,nokeepaspect)

$if($get(isplaying),
$draw_image(50,50,40,40,$get(playIcon),196)
)

$set_font(Calibri,8)
$draw_text(%gb_group%,$get(textX),6,$get(textW),$get(textH),right,wordbreak,word_ellipsis)
$set_font(Calibri,8,bi)
$draw_text(%gb_subitem_count%
$ifgreater(%gb_subitem_count%,1, tracks, track),
$get(textX),$get(subitem_countY),$get(textW),12,right,singleline,bottom)

$if(%gb_mouse_over%,
$gp_set_brush(128-255-255-255,0,0,0-255-255-255,%gb_width%,%gb_height%)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)
)


I have about 16 "no cover" album arts that I want to use (see 5th line of code). Pretty sure this code that you  wrote. But I'm not having any luck.
Title: foo_uie_graphical_browser
Post by: Purple Monkey on 2008-04-25 16:11:10
Have you got foo_cwb_hooks installed? It's provided by that component.
Title: foo_uie_graphical_browser
Post by: BlackDiggs on 2008-04-25 16:58:55
Yeah I got it.
Title: foo_uie_graphical_browser
Post by: thuan on 2008-04-25 17:50:26
That's ambiguous lol. Did you get it to work, or you have the component but it's still doesn't work? Which is it?
Title: foo_uie_graphical_browser
Post by: BlackDiggs on 2008-04-25 18:34:11
My bad, yeah I have cwb_foo_hooks. I've tried $cwb_rand() but have gotten nothing. I've also tried $mod($cwb_rand(),16) same (visual) results.
Title: foo_uie_graphical_browser
Post by: thuan on 2008-04-26 04:04:53
Well, it has nothing to do with my code as mine should work fine without random number generation. With it, it does work over here using $mod($cwb_rand(),X) with X is the number of nocover image, but with a weird though plausible glitch. That is every time an item is refreshed, the random number is changed, too, this makes it look weird. If this is what you said by visual result, then I can't help you.

If what you said is it displays nothing at all, then AFAIK, there's only another reason. That is you're using the wrong extensions for your images. Try replacing the fifth line with this
Code: [Select]
$puts(nocover1,images\noalbumart$mod($cwb_rand(),16).*)


EDIT: I have an idea, instead of using random number, you can use $crc32, something like this $mod($crc32(%gb_group%),16)
Title: foo_uie_graphical_browser
Post by: D.Sync on 2008-04-26 09:39:58
My updated config:
).
Download [a href="http://www.mediafire.com/?jfbjv110kld" target="_blank"]this file (http://img231.imageshack.us/my.php?image=foodp2.png)[/b] and import it.

Requirements:
* Graphical browser rev014.
* Play icon (http://i170.photobucket.com/albums/u248/nagayanobu/Play-icon256-by-nagaya.png) and glare (http://img171.imageshack.us/img171/5822/glareyo0.png) images. Put them info foobar components folder, if not tweak my config to accommodate your new paths.
* Item size requirement: horizontal size is about twice of vertical size. If you see cut off album names then tweak the setting I point to in item code.
* Popup size requirement: vertical size is 54 pixels bigger than horizontal size and minimum horizontal size is 150.
* If you're using WinXP, you need to have East Asian languages support. Those rating star characters need it.
(http://img507.imageshack.us/img507/5721/expg4.th.png) (http://img507.imageshack.us/my.php?image=expg4.png)

Remember to set scroll size to your item vertical size if you change my settings so that your item isn't cut off when you scroll.


I'm currently using 'thuan' script and it is really good!

I'm just wondering how can I change the cover image source to a certain name, namely cover_front.jpg instead of it uses the first image file it can locate in the music folder (as in the script uses, [cpath1]

Example:
//add more cover sources here
$if3(
$draw_image(7,6,$get(coverD),$get(coverD),$get(cpath1),255,nokeepaspect),
$draw_image(7,6,$get(coverD),$get(coverD),$get(cpath2),255,nokeepaspect),
$draw_image(7,6,$get(coverD),$get(coverD),$get(nocover),255,nokeepaspect)
)
Title: foo_uie_graphical_browser
Post by: thuan on 2008-04-26 09:52:29
Change the asterisk (*) in the first part of my code, the one under
Code: [Select]
//cover sources, if you add more sources please add more $draw_image functions below
to
Code: [Select]
$puts(cpath1,$replace(%path%,%filename_ext%,cover_front.jpg))
Title: foo_uie_graphical_browser
Post by: D.Sync on 2008-04-26 10:05:32
I see. Thanks for the fast reply and solution. Never thought of such good plugin and the script you had contributed though! Nice work!! 
Title: foo_uie_graphical_browser
Post by: BlackDiggs on 2008-04-29 14:23:58
Well, it has nothing to do with my code as mine should work fine without random number generation. With it, it does work over here using $mod($cwb_rand(),X) with X is the number of nocover image, but with a weird though plausible glitch. That is every time an item is refreshed, the random number is changed, too, this makes it look weird. If this is what you said by visual result, then I can't help you.

If what you said is it displays nothing at all, then AFAIK, there's only another reason. That is you're using the wrong extensions for your images. Try replacing the fifth line with this
Code: [Select]
$puts(nocover1,images\noalbumart$mod($cwb_rand(),16).*)


EDIT: I have an idea, instead of using random number, you can use $crc32, something like this $mod($crc32(%gb_group%),16)


Oh, I never said it had anything to do with your code. The code works excellently. As a matter of fact this [/i]$mod($crc32(%gb_group%),16) helped fix my problem. Thanks a million.
Title: foo_uie_graphical_browser
Post by: Dawid Ciecierski on 2008-04-30 11:37:49
Hi guys, just a short question: has anyone emailed the author with the idea to config this plugin to display the Library instead of a playlist? Then upon double click it would send / add the album in question to a playlist as it does currently.

The above would basically give us a graphical browser for the libary, instead of a tree we have for now. It may also be that I'm missing something obvious, do let me know if it is possible with this / other plugins!
Title: foo_uie_graphical_browser
Post by: thuan on 2008-04-30 12:49:04
It has been mailed before, but I don't know there'll be another version as this component has been removed from his site (the front page that is) and before that it had a message saying development of this component has ceased.
Title: foo_uie_graphical_browser
Post by: thuan on 2008-05-11 03:26:32
In case ppl are wondering, this component does work with foobar 0.9.5.3 beta 1.
Title: foo_uie_graphical_browser
Post by: D.Sync on 2008-05-15 13:26:57
I'm currently using this script:

//cover sources, if you add more sources please add more $draw_image functions below
$puts(cpath1,$replace(%path%,%filename_ext%,folder.jpg))
$puts(cpath2,$replace(%path%,%directory%\%filename_ext%,*))
$puts(cpath3,$replace(%path%,%filename_ext%,cover_front.jpg))

//no cover source, remember to change this if needed
$puts(nocover,D:\Program Files\foobar2000\components\default.png)

//other image sources
$puts(glareImage,D:\Program Files\foobar2000\components\glareyo0.png)
$puts(playIcon,D:\Program Files\foobar2000\components\Play-icon256-by-nagaya.png)
$puts(casing,D:\Program Files\foobar2000\components\cdcaseck3.png)

//font settings
$puts(fontName,Segoe UI)
$puts(fontSize,9)
$puts(fontStyle1,)
$puts(fontStyle2,i)

//dimensions and positions of objects
$puts(itemW,$eval(%gb_width%-1))
$puts(itemH,$eval(%gb_height%-1))
$puts(frameD,$eval(%gb_height%-8))
$puts(frameCu,$eval(%gb_height%/30))
$puts(coverD,$eval($get(frameD)-4))
$puts(textX,$eval($get(frameD)+7))
$puts(textW,$eval(%gb_width%-$get(textX)-4))
$puts(textH,$eval(%gb_height%-20))
$puts(subitem_countY,$eval($get(textH)+6))
///////////////////////////////////

$if(%gb_focused%,
$set_pen(44-98-139)
$draw_rect(0,0,$get(itemW),$get(itemH))
$gp_set_brush(255-109-182-221,0,%gb_height%,0-255-255-255,0,0)
$gp_fill_rectangle(1,1,$eval(%gb_width%-2),$eval(%gb_height%-2)),
$set_brush(240-240-240,cross)
$fill_rect(0,0,%gb_width%,%gb_height%)

$select($add($mod(%gb_item_index%,2),1),
$gp_set_brush(100-200-200-200),
$gp_set_brush(100-240-240-240)
)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)
)

$set_pen(0-0-0)
$set_brush(0-0-0)
$round_rect(5,4,$get(frameD),$get(frameD),$get(frameCu),$get(frameCu))

//add more cover sources here
$if3(
$draw_image(7,6,$get(coverD),$get(coverD),$get(cpath1),255,nokeepaspect),
$draw_image(7,6,$get(coverD),$get(coverD),$get(cpath2),255,nokeepaspect),
$draw_image(7,6,$get(coverD),$get(coverD),$get(cpath3),255,nokeepaspect),
$draw_image(7,6,$get(coverD),$get(coverD),$get(nocover),255,nokeepaspect)
)

$draw_image(7,6,$get(coverD),$get(coverD),$get(glareImage),50,nokeepaspect)
$draw_image(7,6,$get(coverD),$get(coverD),$get(casing),175,nokeepaspect)

$if(%gb_isplaying%,
$draw_image(7,6,$get(coverD),$get(coverD),$get(playIcon),128)
)

$set_font($get(fontName),$get(fontSize),$get(fontStyle1))
$draw_text(%gb_group%,$get(textX),6,$get(textW),$get(textH),right,wordbreak,end_ellipsis)
$set_font($get(fontName),$get(fontSize),$get(fontStyle2))
$draw_text($add(%gb_item_index%,1)/%gb_item_count% %gb_track_count%
$ifgreater(%gb_track_count%,1, tracks, track),
$get(textX),$get(subitem_countY),$get(textW),12,right,singleline,bottom)

$if(%gb_mouse_over%,
$gp_set_brush(128-255-255-255,0,0,0-255-255-255,%gb_width%,%gb_height%)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)
)

And I have deleted the line as below because I want it to show the album title only when no cover art is available for the particular album. Any idea on how to change the script? Thanks for your help~ The script code below shows album title for all album regardless if they got cover art or not. So if a particular album already has a cover art, it would be quite annoyed for the title to show again as I identify each album according to their cover art.

$if(%gb_focused%,
,
$gp_set_font(Tahoma,9,b)
$gp_set_text_rendering_hint(ct)
$gp_set_smoothing_mode(1)
$gp_set_string_format(center,center)
$if(%gb_mouse_over%,
$gp_set_pen(255-255-255-255,3,,bevel)
$gp_set_brush(255-0-0-0),
$gp_set_pen(255-0-0-0,3,,bevel)
$gp_set_brush(255-255-255-255)
)
$gp_draw_string_path(%gb_group%,12,,4,4,$eval(%gb_width%-6),$eval(%gb_height%-6))
)
Title: foo_uie_graphical_browser
Post by: D.Sync on 2008-05-15 14:28:51
Another question, what option should I set if I want it to display the track list of a particular album only in album list panel when I single click the album.

Now whenever I click on the album, what it does is it highlight the tracks of the album in my entire album library.

(http://i179.photobucket.com/albums/w306/DeoxySynchro89/th_ScreenHunter_01May152144.gif) (http://i179.photobucket.com/albums/w306/DeoxySynchro89/ScreenHunter_01May152144.gif)

Moderation: Please do not inline images larger than roughly 800x600 and 80KB. Please use thumbnails and/or links for large pictures instead.
Title: foo_uie_graphical_browser
Post by: D.Sync on 2008-05-16 02:59:04
Can I save the cache for the graphical browser? Coz' now everytime I restart my computer or restart foobar2k, when I scroll the cover art it seems laggy. But after a while it become smooth again.

So I assume that it delete all cache after I closing foobar2k?
Title: foo_uie_graphical_browser
Post by: thuan on 2008-05-16 03:03:17
Your last two posts can't be done, as this component developer had decided to stop developing this component. As for your question about GB code, can you point me to the post you got the code. That code is not complete for me to work on.
Title: foo_uie_graphical_browser
Post by: D.Sync on 2008-05-16 06:17:52
It's your post here:
http://www.hydrogenaudio.org/forums/index....st&p=553118 (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=61412&view=findpost&p=553118)
Title: foo_uie_graphical_browser
Post by: thuan on 2008-05-16 10:35:15
@D.Sync: Erh, to be honest, I can't find the code you said you had removed anywhere inside the post you linked to. I made a new one using my latest code for GB.
(http://img364.imageshack.us/img364/7854/fookz2.th.jpg) (http://img364.imageshack.us/my.php?image=fookz2.jpg)
Import this file (http://www.mediafire.com/?jjbrl10gz3y).
Requirements:
Previously required pictures and latest GB.
Title: foo_uie_graphical_browser
Post by: D.Sync on 2008-05-16 13:18:29
Thanks for the upload~ btw how to change the color of the font when no cover art is available? It's yellow now, plan to change to white~

Another question is do you know how to BOLD the album title in NG Playlist to differentiate easily between tracks & album title.

Thanks thuan you had been a great help to me~ 
Title: foo_uie_graphical_browser
Post by: thuan on 2008-05-16 14:04:25
Near the end of Item code pane, search for this section:
Code: [Select]
$if($get(isNoCover),
$gp_set_font(Tahoma,9,b)
$gp_set_pen(255-0-0-0,2,,round)
$gp_set_brush(255-255-255-0)
$gp_set_string_format(center,center)
$gp_set_smoothing_mode(1)
$gp_draw_string_path(%gb_group%,14,,6,6,$get(coverD),$get(coverD))
)

$gp_set_pen changes the text border color, thickness, style, and line joint (same order as parameters).
$gp_set_brush changes the text stroke color which is what you wanna change and the correct value is 255-255-255-255 (alpha-red-green-blue).
For more information, read the readme I translated.
As for NG_Playlist group format question, you can't make it bold or change its font but you can color it. If you need more info post it in Columns UI thread or PM me as this is OT.
Title: foo_uie_graphical_browser
Post by: D.Sync on 2008-05-16 17:06:23
I see thanks a lot~
Title: foo_uie_graphical_browser
Post by: pepito on 2008-05-19 18:47:18
Hello,
I have a question about the pop-up
When the title of a song is too long then the display is all mess up
I mean the rest of the title is under but messed with the next line
I tried to expand the pop-up to enlarge the space between lines without
results. The pop-up is bigger but the lines stay still

(http://img371.imageshack.us/img371/3640/image0018gi2.th.png) (http://img371.imageshack.us/my.php?image=image0018gi2.png)


So,where in the code I can change this ?
thank you
Title: foo_uie_graphical_browser
Post by: CepiPerez on 2008-05-19 19:12:33
Hello,
I have a question about the pop-up
When the title of a song is too long then the display is all mess up
I mean the rest of the title is under but messed with the next line
I tried to expand the pop-up to enlarge the space between lines without
results. The pop-up is bigger but the lines stay still

(http://img371.imageshack.us/img371/3640/image0018gi2.th.png) (http://img371.imageshack.us/my.php?image=image0018gi2.png)


So,where in the code I can change this ?
thank you
Why don't you ask me?
You must modify "Per track (Popup)" code:
this is the first line:
$set_org(10,$add($mul(15,%gb_track_index%),68))    --> space between lines (try 30 or more)
And this is the last line:
$gp_draw_string($add(%gb_track_index%,1)  $upper(%title%),0,0,%gb_width%,18)    --> text height (put 30 or more for 2 lines)
Title: foo_uie_graphical_browser
Post by: pepito on 2008-05-19 22:59:50
Thank you Cépi
I am also on your thread of course,but I am waiting for answers there too
So I don't want to exagerate and trying not bother you every minute
anyway a big thanks !!!

EDIT : 22 was the best  with a pop-up at 240 and the "MORE" at 225
and it shows 7 titles
Btw I made the pop-up also in left panel 
Title: foo_uie_graphical_browser
Post by: Light on 2008-06-23 19:37:33
hi, i would like my pop up tracks to be the same as the album name, check out the pic:

(http://img153.imagevenue.com/loc841/th_45922_carp_122_841lo.jpg) (http://img153.imagevenue.com/img.php?image=45922_carp_122_841lo.jpg)

my popup track code is like this:

Code: [Select]
$set_org(4,$mul(15,%gb_track_index%))
$if(%gb_isplaying%,$gp_set_brush(255-255-0-0),$gp_set_brush(255-255-255-255))
$gp_set_font(Calibri,9,b)
$gp_set_pen(255-255-255-255,3,5,round)
$gp_set_brush(255-255-255-0)
$gp_set_string_format(center,center)

$gp_set_text_rendering_hint(aa)
$gp_draw_string($add(%gb_track_index%,1). %title%,0,42,$eval(%gb_width%-38),15)
$gp_draw_string(%length%,$eval(%gb_width%-38),42,36,15)


how do i get the tracklisting to have a different bordercolour? I read somewhere it could be done with the gp_set_brush, or pen, but i've been trying and i dont get it to work...
Title: foo_uie_graphical_browser
Post by: Onkel Andy on 2008-12-07 23:07:52
Could anyone please repost the latest version of Thuan? The link to his version for rev14 is not working anymore. Thanks alot!!!
Title: foo_uie_graphical_browser
Post by: thuan on 2008-12-08 16:45:25
http://www.mediafire.com/?sharekey=39939ce...2db6fb9a8902bda (http://www.mediafire.com/?sharekey=39939ce53425b5b5d2db6fb9a8902bda)
Here, it's the readme and the code I backed up a long time ago, haven't used it in a long time.
Title: foo_uie_graphical_browser
Post by: Onkel Andy on 2008-12-08 21:49:12
http://www.mediafire.com/?sharekey=39939ce...2db6fb9a8902bda (http://www.mediafire.com/?sharekey=39939ce53425b5b5d2db6fb9a8902bda)
Here, it's the readme and the code I backed up a long time ago, haven't used it in a long time.


Perfect - big thanks! I love that plugin and your scripts are a super duper start for that.
Title: foo_uie_graphical_browser
Post by: krabapple on 2008-12-09 00:55:24
Just to be clear -- this component only works with PanelsUI?

I'm looking for something that treats album art graphics as clickable objects, but I'm using 0.9.5 so PanelsUI is *right out*.
Title: foo_uie_graphical_browser
Post by: thuan on 2008-12-09 01:21:16
Clarification: This component is a Columns UI extension, has nothing to do with PanelsUI but can also be used with it.
Title: foo_uie_graphical_browser
Post by: krabapple on 2008-12-09 04:21:16
Excellent news, thanks.

Addendum:  OK , so I go tit up and running, sort of, in ColumnsUI , but instead of showing the album art in the new panel, it's just showing the album names, as placeholders.  So Im close but not there yet. Looks like I'll have to read this thread more intensively.  (FWIW, my art is distributed with the corresponding music as 'folder.jpg' files, i.e  the path is F:/Master_music_folder/Artist/Album/folder.jpg)
Title: foo_uie_graphical_browser
Post by: RavenSoft on 2008-12-16 04:31:46
anyone have contact with the author to see if he will release the source code so this plugin can continue development or ask him to reconsider releasing new updates for it?
Title: foo_uie_graphical_browser
Post by: Onkel Andy on 2008-12-16 23:59:26
Excellent news, thanks.

Addendum:  OK , so I go tit up and running, sort of, in ColumnsUI , but instead of showing the album art in the new panel, it's just showing the album names, as placeholders.  So Im close but not there yet. Looks like I'll have to read this thread more intensively.  (FWIW, my art is distributed with the corresponding music as 'folder.jpg' files, i.e  the path is F:/Master_music_folder/Artist/Album/folder.jpg)

Just define it like that:
Code: [Select]
$puts(cover.path,$replace(%path%,%filename_ext%,folder.jpg))
Title: foo_uie_graphical_browser
Post by: dyermaker on 2009-02-09 01:45:48
hey folks, bit stumped here! been tryna get the browser to display images with wildcards..

in the main graphical browser i have this code
Code: [Select]
$draw_image(12,4,$eval(%gb_width%-18),$eval(%gb_width%-20),$if($cwb_fileexists($replace(%path%,%filename_ext%,)cover.jpg),$replace(%path%,%filename_ext%,)cover.jpg,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)folder.jpg),$replace(%path%,%filename_ext%,)folder.jpg,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)folder.jpeg),$replace(%path%,%filename_ext%,)folder.jpeg,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)cover.jpeg),$replace(%path%,%filename_ext%,)cover.jpeg,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)*.jpg),$replace(%path%,%filename_ext%,)*.jpg,.\images\fooAVA\nocoverb234.png))))),255, nokeepaspect)


that seems to work okay for everything except the wildcard entry (have also tried *.* and *)

the problem is pretty much the same with mouse over..

Code: [Select]
$puts(Cover,$if($cwb_fileexists($replace(%path%,%filename_ext%,)cover.jpg),$replace(%path%,%filename_ext%,)cover.jpg,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)folder.jpg),$replace(%path%,%filename_ext%,)folder.jpg,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)*),$replace(%path%,%filename_ext%,)*,
$if($cwb_fileexists($replace(%path%,%filename_ext%,)*.*),$replace(%path%,%filename_ext%,)*.*,.\ima\fooAVA\nocover.jpg)))))


my head hurts, please help!!

ps the scripts above are in one line.. just put them under each other so the browser wouldnt scroll a mile wide
Title: foo_uie_graphical_browser
Post by: 2E7AH on 2009-05-25 06:00:39
I've made GB iTunes rip (nothing original but I wanted to share), so if anybody likes it just download it:

http://www.mediafire.com/file/yjl2zzzrhtg/gb.rar (http://www.mediafire.com/file/yjl2zzzrhtg/gb.rar)

[a href="http://yfrog.com/5falbumsp" target="_blank"]
Title: foo_uie_graphical_browser
Post by: mystNZ on 2009-05-26 00:19:53
That's brilliant 2E7AH, thanks. Its a great component, shame its not updated any longer.
Title: foo_uie_graphical_browser
Post by: _oao on 2009-05-26 04:51:52
I've made GB iTunes rip (nothing original but I wanted to share), so if anybody likes it just download it:

http://www.mediafire.com/file/yjl2zzzrhtg/gb.rar (http://www.mediafire.com/file/yjl2zzzrhtg/gb.rar)

Nice GB config!
Thanks for sharing. 

I guess it's time to play again with Columns UI!

Just a suggestion: use $swapprefix(%album artist%) instead of %album artist% for better alphabetical sorting of albums/artists...
Title: foo_uie_graphical_browser
Post by: Jack Schmaltz on 2009-05-26 19:06:34
iv been having a play with this (after being inspired by 2E7AH config, thanks btw) & was just curious whether it is possible to change the format of the "show track menu"?
i would just like to change it to "%tracknumber% %artist% - %title" which is a minor variation of what it is now but handy for compilations.

any help appreciated
Title: foo_uie_graphical_browser
Post by: 2E7AH on 2009-05-30 08:24:35
Here is WMP rip:

http://www.mediafire.com/file/khjqzj0mjjy/GB_WMP.zip (http://www.mediafire.com/file/khjqzj0mjjy/GB_WMP.zip)

[a href="http://yfrog.com/59albumsiconsp" target="_blank"]

@ mystNZ: It's a shame really, I have many requests now, like multiple selections, update on tag change, where are some foobar context menu commands, drag & drop, info about item subitems based on title formatting and more

@ _oao: Good point, I corrected that, also I somehow forgot "grey" edge style in GB albums so I changed that to "none" and reduced by 2px toolbar buttons height

@ Jack Schmaltz: If you a refering to item subtitles just change %album artist% or %album% in $drawtext() under the "// item subtitles" comment

[edit] reuploaded due to mistake
Title: foo_uie_graphical_browser
Post by: bowen_tk on 2009-05-30 10:41:44
It's really nice but can you make juste a simple fcl config like that everything is make and you don't have to prepare your own config every time.
Which version of graphical browser do you use.??
thanks for sharing this work
Title: foo_uie_graphical_browser
Post by: 2E7AH on 2009-05-30 11:21:46
Every two times?
Maybe you are right, if you mean to test it in portable install, than OK, otherwise it will rewrite your config:

http://www.mediafire.com/file/zwnwr3xfyny/GB_WMP_fcl.zip (http://www.mediafire.com/file/zwnwr3xfyny/GB_WMP_fcl.zip)

components needed:
CUI, graphical browser (rev15) and panel stack splitter (images included in archive)

[edit] Please untick everything in PSS (behaviour tab)
Title: foo_uie_graphical_browser
Post by: Falstaff on 2009-05-30 11:41:39
there is an IMPORT/EXPORT feature in Graphical Browser, it generate .gbs files, why don't using it ?

btw good work 2E7AH, thanx for sharing
Title: foo_uie_graphical_browser
Post by: 2E7AH on 2009-05-30 11:57:36
Well, that was the reason why I edited my first post, but I probably pasted wrong link again. Thanks for poining this.

http://www.mediafire.com/file/d0yn5yyymfz/GB_WMP.zip (http://www.mediafire.com/file/d0yn5yyymfz/GB_WMP.zip)

Now it all looks like a big mess, hm...
Title: foo_uie_graphical_browser
Post by: Jack Schmaltz on 2009-06-01 01:21:22
@ Jack Schmaltz: If you a refering to item subtitles just change %album artist% or %album% in $drawtext() under the "// item subtitles" comment


im referring to the click options menu, i have it set to "(show track menu)" on double click & im just wondering if i can change the format of what is shown when i do double click.

at the moment the format appears to be "%tracknumber% - %title%", & i wouldnt mind being able to change that but cant figure out whether it is possible or not.
is this actually possible?

thanx for your time
Title: foo_uie_graphical_browser
Post by: barty on 2009-06-01 15:28:18
I have a question:

I have several sources for image:

folder.*
%FOOBAR_PATH%lastfm\artist\%artist%.*
%FOOBAR_PATH%lastfm\album\%album artist%-%album%.*
<nocover image> if all else fails.

Right now I draw all the images in order from lowest to highest preference.  But that makes scrolling a little slow b/c potentially I could draw 4 cover images for every item (plus an ovelay image).  I'd rather just stop drawing as soon as I successfully find one.  But $draw_image doesn't appear to return TRUE if successful.  Is there a way around this?

thanks

PS: actually, if there's a way to use artreader (to take advantage of foo_covers), that'll solve my problem too.
Title: foo_uie_graphical_browser
Post by: ~TN~ on 2009-06-20 19:01:39
 The graphical browser is so F'IN slow (for me at least)!  So everytime, I have to browse through it for all covers to be cached, and then I could enjoy it at full speed.  Is there anyway I could make the cache remain always there even when I quit and restart foobar? 

That would be great. 
 
Title: foo_uie_graphical_browser
Post by: mystNZ on 2009-06-21 11:10:06
The graphical browser is so F'IN slow (for me at least)!  So everytime, I have to browse through it for all covers to be cached, and then I could enjoy it at full speed.  Is there anyway I could make the cache remain always there even when I quit and restart foobar?
That would be great.

I agree, the initial load time is my only gripe with this component. To bad it's not maintained any longer..
Title: foo_uie_graphical_browser
Post by: marc2003 on 2009-06-24 11:00:03
i only recently discovered this and it's sweet. it's the first 3rd party eye candy component that i have actually found useful. i can't really see the point in most of the others.... 

i now use this as the main interface for browsing my collection using the option to have the track list appear on a single click. it's a shame that can't be set with custom title formatting though. other than that this component is perfect for me.
Title: foo_uie_graphical_browser
Post by: Derialstrazus on 2009-07-11 21:34:30
Link isn't working, and I can't find anywhere else to download this from.    Help?
Title: foo_uie_graphical_browser
Post by: lvqcl on 2009-07-11 22:01:27
Quote
I can't find anywhere else to download this from.  Help?

After some googling:

1) http://foobar2000.xrea.jp/index.php?User%2...erface#l8a1a420 (http://foobar2000.xrea.jp/index.php?User%20interface#l8a1a420)
2) http://www.fohguild.org/forums/millies-mus...tml#post1042504 (http://www.fohguild.org/forums/millies-music-house/33941-foobar-layouts.html#post1042504)
3) IIRC, Curaçao skin (http://br3tt.online.fr/html/C/index.htm) also has this component.
Title: foo_uie_graphical_browser
Post by: odyssey on 2009-07-27 22:17:13
When I try to assign a custom mouse click action, I'd like to choose one of my defined "Run" commands, however they don't show up. It only displays "Run service" which doesn't make much sense. It's available when I create buttons in toolbars, so why not here???
Title: foo_uie_graphical_browser
Post by: odyssey on 2009-07-29 09:45:11
Am I the only one having problems using keyboard shortcuts on this plugin?
Title: foo_uie_graphical_browser
Post by: cheesebanana on 2009-09-11 16:04:10
So, i've racked my brain but i cant think of anything:

Is there any way to force this to always retrieve from your entire library, and not just your active playlist? Its a bit useless to browse through music you already have in your playlist...no?

would like to be able to do something like this in this component or something completely different: while i'm listening to my current playlist (of say, 1-2 albums), i could scroll through all my album art and go "oooh i fancy that" and add it to the playlist.
Title: foo_uie_graphical_browser
Post by: waaateva on 2009-09-12 01:50:49
I think the complete opposite .

The reason I dumped Chronflow is because it doesn't provide a "Playlist mode" like GB, which I find much more useful and intuitive. If I want to browse my library, I'll click my "Library" playlist.

To each his own I guess.

Edit: Technically speaking, there should be 2 modes for every "browsing" component: a library mode to browse the library and create playlists (a la Album List, Filter Panels, Chronflow...), and a playlist mode to browse through the active playlist and play(GB). The only component I'm aware of that supports both modes are Quicksearch Toolbar. Maybe its usefulness doesn't justify its complexity, so developers just choose the one mode they prefer .
Title: foo_uie_graphical_browser
Post by: adrianmak on 2010-01-20 22:58:03
compatible with foobar2000 1.0 ?
Title: foo_uie_graphical_browser
Post by: marc2003 on 2010-01-20 23:12:53
works fine, no messages on startup. it's still blacklisted if you visit the online troubleshooter page but it's never caused me any problems.
Title: foo_uie_graphical_browser
Post by: cerAmik on 2010-01-23 15:38:22
here's a little piece of code to avoid the "nokeepaspect" and however hide the "no cover" picture

Code: [Select]
$draw_image(3,3,$eval(%gb_width%-6),$eval(%gb_height%-6),pictures\nocover.png)
$draw_image(3,3,$eval(%gb_width%-6),$eval(%gb_height%-6),$replace(%path%,%filename_ext%,folder.*))
$puts(rect-height,$div($sub($eval(%gb_height%-3),%gb_calc_height%),2))
$puts(rect-width,$div($sub($eval(%gb_width%-3),%gb_calc_width%),2))
$gp_set_brush(255-22-32-41) // set it to your background color
$if($greater($get(rect-height),0),
$gp_fill_rectangle(3,3,$eval(%gb_width%-6),$get(rect-height))
$gp_fill_rectangle(3,$sub($eval(%gb_width%-3),$get(rect-height)),$eval(%gb_width%-6),$get(rect-height))
)
$if($greater($get(rect-width),0),
$gp_fill_rectangle(3,3,$get(rect-width),$eval(%gb_height%-6))
$gp_fill_rectangle($sub($eval(%gb_height%-3),$get(rect-width)),3,$get(rect-width),$eval(%gb_height%-6))
)


I have just discovered this component and I'm sad that it's no more developed... The graveyard of foobar2000's great components is already full, I hope this one will still be compatible until his resurrection or that a good replacement come
Title: foo_uie_graphical_browser
Post by: kopf on 2010-02-12 01:58:35
I've been dying for something like this for the default UI.... anyone?
Title: foo_uie_graphical_browser
Post by: marc2003 on 2010-02-12 02:15:24
not likely. it hasn't been updated on CUI for nearly 2 years now.
Title: foo_uie_graphical_browser
Post by: adrianmak on 2010-02-12 05:56:47
how to use this component ?
I put in fb component but I didn't find any configuration page .
Title: foo_uie_graphical_browser
Post by: marc2003 on 2010-02-12 13:53:10
you have to add a panel on the CUI layout editing page in the preferences.
Title: foo_uie_graphical_browser
Post by: adrianmak on 2010-02-12 22:33:12
you have to add a panel on the CUI layout editing page in the preferences.


I added a panel to put uie_graphical_browser, but album covers art images cannot be shown

(http://i36.photobucket.com/albums/e28/adrianmak2/Capture-4.jpg)
Title: foo_uie_graphical_browser
Post by: marc2003 on 2010-02-12 22:44:45
it doesn't use the foobar artreader or read embedded album art. you have to configure each pattern you want to use manually. this is what i use...

Code: [Select]
$gp_set_pen(FFAFAFAF,1)
$gp_draw_rectangle(3,3,$sub(%gb_width%,4),$sub(%gb_height%,4))
$draw_image(4,4,$sub(%gb_width%,5),$sub(%gb_height%,5),$directory_path(%path%)\cover.jpg)


you'll have to adjust the title formatting at the end of line 3 to match wherever your art is. (the first 2 lines of code put a border around each cover)

I've been dying for something like this for the default UI.... anyone?


maybe my reply to your comment was a little hasty. there is a brand new playlist component being developed which works in DUI and replicates how GB looks. see here....

http://www.hydrogenaudio.org/forums/index....st&p=687341 (http://www.hydrogenaudio.org/forums/index.php?showtopic=62133&view=findpost&p=687341)

(ignore the first part of the post. that was a reply to an unrelated question above.)
Title: foo_uie_graphical_browser
Post by: adrianmak on 2010-02-13 02:47:26
where should I paste these few lines of code?
Title: foo_uie_graphical_browser
Post by: marc2003 on 2010-02-13 06:49:09
right click panel>settings.
Title: foo_uie_graphical_browser
Post by: adrianmak on 2010-02-14 03:03:07
For album with multiple CDs
I put cover.jpg in the root folder instead of independent CD folder
ie

Artist name - album\CD1
Artist name - album\CD2
Artist name - album\CD3
Artist name - album\cover.jpg


I added
$draw_image(4,4,$sub(%gb_width%,5),$sub(%gb_height%,5), ..\cover.jpg)

however cover didn't show up
Title: foo_uie_graphical_browser
Post by: phunkydizco on 2010-05-15 07:05:21
What is the latest version of this component?

Is it possible to send an album to a playlist and start playback on double click?
Title: foo_uie_graphical_browser
Post by: Neonphytismo on 2010-05-15 08:58:50
What is the latest version of this component?

Is it possible to send an album to a playlist and start playback on double click?

the latest version is rev015.....

maybe you can refer to the settings about the mouse behaviors, and it was a view of the existed albums in you current playlist.
(my poor english.....
Title: foo_uie_graphical_browser
Post by: phunkydizco on 2010-05-15 10:59:40
I want to send the selected album a specific playlist and start playback. I entered the playlist name in the settings, but it is not the active playlist. I will try to explain what I mean: Graphical Browser shows playlist A. Now I want to send an album to playlist B and start playback. Perhaps there is a component to add an custom context menu entry for that?
Title: foo_uie_graphical_browser
Post by: Neonphytismo on 2010-05-16 04:36:29
I want to send the selected album a specific playlist and start playback. I entered the playlist name in the settings, but it is not the active playlist. I will try to explain what I mean: Graphical Browser shows playlist A. Now I want to send an album to playlist B and start playback. Perhaps there is a component to add an custom context menu entry for that?


got your idea~
impossible......is my whole answer......at least in my opinion......but i think it might be a function of EsPlaylist?i'm not sure....sorry...
Title: foo_uie_graphical_browser
Post by: phunkydizco on 2010-05-16 11:28:30
I found a component called "Playlist Tools" (foo_utils (http://foosion.foobar2000.org/components/?id=utils&version=0.6.2+beta+6)) and now I can choose a double click action "Send to new playlist and play". With a WSH Panel Mod I set the active playlist and now I can use "Graphical Browser" as a library viewer
Title: foo_uie_graphical_browser
Post by: Chris Norman on 2010-10-20 12:53:52
Though the component sadly seems to be dead I updated it's wikipage (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9/Graphical_Browser_%28foo_uie_graphical_browser%29#.24round_rect.28x.2Cy.2Cwidth.2Cheight.2Cellipse_width.2Cellipse_height.29).

Everyone is welcomed to extend information there. It would be also useful if someone could provide a regular download link (not RS).
Title: foo_uie_graphical_browser
Post by: thuan on 2010-10-20 13:29:26
Download link (https://docs.google.com/leaf?id=0By5oGIJU70FaNGNiYzlmMTYtYTAyOC00MmZkLTgxYjktYTE5NDk4MTg3NWIw&hl=en) for latest version with translation. I threw in the code I used with it before abandoning this component in my foobar config.
Title: foo_uie_graphical_browser
Post by: Chris Norman on 2010-10-20 18:07:16
@thuan:
Just out of curiosity: Did you use another component as a replacement?
Title: foo_uie_graphical_browser
Post by: thuan on 2010-10-21 04:34:41
From the day, I got ngplaylist in CUI and now I use es_playlist in DUI which provides the same features I use in ng and more.
Title: foo_uie_graphical_browser
Post by: GaryExo on 2011-03-21 10:21:32
Generally speaking, I like this component but there's one little thing that's slowly driving me insane! I have one or two albums which I've compiled into my own personal "Best Of" for a particular artist and sometimes this browser shows the compilation exactly as I intended but sometimes it doesn't. I cannot figure out why. I made the compilations in exactly the same manner, employing the same forms of tagging for all the sound files yet one album will appear in the list while another is completely ignored. If you look at the screen-shot you'll see I'm highlighting one compilation from Embrace, titled My Collection and using a custom made "Folder.jpg" image for album art. Now, also residing in my library at this point is another such compilation for Godley & Creme also titled My Collection and using a custom made "Folder.jpg" image for album art but it refuses to display. Does anyone have similar experience of this or have any idea what could be causing it? If I can't sort it my only option will be to split up these collections into their individual albums which seems a bit dumb considering I've only taken one track from an album in many cases!

Thanks for any help you can give with this.

(http://img822.imageshack.us/img822/4148/clipboard1y.jpg) (http://img822.imageshack.us/i/clipboard1y.jpg/)
Title: foo_uie_graphical_browser
Post by: nine09 on 2011-03-23 20:00:57
Hello.

I am a beginner at foobar2000. I really like this plugin but, I can't make it display album covers

All of my music are MP3 files with embedded album art. In other words the album art is coded into each song. I have absolutely no idea what file name the album art has inside the ID3 tag's though...

Can anyone please help me?

Thanks so much
Title: foo_uie_graphical_browser
Post by: marc2003 on 2011-03-23 20:03:01
i'll make it really easy for you. it doesn't support embedded album art.
Title: foo_uie_graphical_browser
Post by: nine09 on 2011-03-23 20:36:08
Thanks for letting me know at least
Do you know any other plugin that might do the same thing only with embedded album art then?
Title: foo_uie_graphical_browser
Post by: kopf on 2011-03-23 22:12:32
Would really love a viable DUI alternative to this.... Seriously, dying for it
Title: foo_uie_graphical_browser
Post by: marc2003 on 2011-03-23 22:23:36
you can achieve something similar with EsPlaylist (works with DUI and CUI) in "browse library" mode with "side info" turned off.

(http://dl.dropbox.com/u/22801321/esp_gb.png)

Title: foo_uie_graphical_browser
Post by: Decalicatan_Decalicatan on 2011-05-07 09:37:51
Sorry don't bother to read I managed to do what I wanted
Title: foo_uie_graphical_browser
Post by: (((STEREO))) on 2011-10-17 02:20:35
Nice to see this plugin is still valuable to some...Been using it for over 3 years without any failure.  Thought I'd share the screenshots making this plugin a major reason I use Foobar.  I've incorporated it into Columns UI as a side scroller for my entire collection along with Lyric Show Panel and Quick Search toolbar. All images appear with a CD case image overlay and reflection overlay.

(http://img510.imageshack.us/img510/8971/foobargraphicalbrowser1.jpg)

Hovering over each CD cover pops up the rear CD cover:

(http://img822.imageshack.us/img822/636/foobargraphicalbrowser2.jpg)

Doubling clicking on any CD cover brings up the selectable album track list:

(http://img411.imageshack.us/img411/6720/foobargraphicalbrowser3.jpg)


...An awesome Foobar component deserving of greater attention and further development (need to cache cover images!)
Title: foo_uie_graphical_browser
Post by: qazws on 2011-11-29 06:38:10

can share you config?
I lOVE CD cover View Too!!


Nice to see this plugin is still valuable to some...Been using it for over 3 years without any failure.  Thought I'd share the screenshots making this plugin a major reason I use Foobar.  I've incorporated it into Columns UI as a side scroller for my entire collection along with Lyric Show Panel and Quick Search toolbar. All images appear with a CD case image overlay and reflection overlay.

(http://img510.imageshack.us/img510/8971/foobargraphicalbrowser1.jpg)

Hovering over each CD cover pops up the rear CD cover:

(http://img822.imageshack.us/img822/636/foobargraphicalbrowser2.jpg)

Doubling clicking on any CD cover brings up the selectable album track list:

(http://img411.imageshack.us/img411/6720/foobargraphicalbrowser3.jpg)


...An awesome Foobar component deserving of greater attention and further development (need to cache cover images!)

Title: foo_uie_graphical_browser
Post by: DickPope on 2014-03-12 10:34:40
Added new links to Graphical Browser, because all the previous ones are gone. Also updated download link in the wiki page.

http://www26.zippyshare.com/v/75280797/file.html (http://www26.zippyshare.com/v/75280797/file.html)
https://dl.dropboxusercontent.com/u/9000763...cal_browser.dll (https://dl.dropboxusercontent.com/u/90007630/foo_uie_graphical_browser.dll)
Title: foo_uie_graphical_browser
Post by: nikolai4ik on 2014-03-26 15:57:26
Guys, can anyone give a hand? I have GB in my config (well not mine but the one I'm using, one of Br3tt's) and it has been working fine for 7 years but recently I've noticed I can't use it jump navigate my library autoplaylist. Only this one, it works in all other playlists and autoplaylists, that's quite strange.
Title: foo_uie_graphical_browser
Post by: samithaj on 2015-07-08 14:02:41
Is this (http://i.imgur.com/ExM9nfZ.png) Artist filter (alphabetic) thing is made is made of using graphical browser popups??
Can someone please let me how to do it??
Title: foo_uie_graphical_browser
Post by: lender1257 on 2015-10-04 11:04:40
is it possible to make border flashing with two different colours,
when album is in focus?

(http://i61.tinypic.com/1zyuclt.jpg)

I've found this variable %gb_length_seconds%, but hadn't any chance to get it run

that's the code now:
$if(%gb_focused%,
$set_pen(44-98-139)
$draw_rect(0,0,$get(itemW),$get(itemH))
//$gp_set_brush(255-109-182-221,0,%gb_height%,0-255-255-255,0,0)
$gp_set_brush(255-255-255-0,0,%gb_height%,255-0-255-255,0,0)
$gp_fill_rectangle(1,1,$eval(%gb_width%-2),$eval(%gb_height%-2)),
$set_brush(240-240-240,cross)
$fill_rect(0,0,%gb_width%,%gb_height%)

//background
$select($add($mod(%gb_item_index%,2),1),
$gp_set_brush(100-200-200-200),
$gp_set_brush(100-240-240-240)
)
$gp_fill_rectangle(0,0,%gb_width%,%gb_height%)
)

thanks
Title: foo_uie_graphical_browser
Post by: imidway on 2016-01-04 00:12:11
Guys, can anyone give a hand? I have GB in my config (well not mine but the one I'm using, one of Br3tt's) and it has been working fine for 7 years but recently I've noticed I can't use it jump navigate my library autoplaylist. Only this one, it works in all other playlists and autoplaylists, that's quite strange.



could you tell me the name of this skin???please
Title: foo_uie_graphical_browser
Post by: imidway on 2016-01-06 05:09:04
Is this (http://i.imgur.com/ExM9nfZ.png) Artist filter (alphabetic) thing is made is made of using graphical browser popups??
Can someone please let me how to do it??

could you tell me the name of this skin???please
Title: Re: foo_uie_graphical_browser
Post by: OoNebsoO on 2016-01-28 16:27:10
Is it possible to 'group' only currently playing album? Even though the main playlist is now populated with everything from particular artist...?
Title: Re: foo_uie_graphical_browser
Post by: OoNebsoO on 2016-02-14 15:27:56
Can anyone help me identify the problem with the script I have? With the help of customdb tag %play_count_cd%, I'm trying to get GB to display play counts by albums.

(http://i.imgur.com/mb1TD12.png)

But for some reason, I do not get correct counts -- in this case on half the albums, usually on those with more plays.

Real counts...
Spoiler (click to show/hide)

I guess GB probably is not the best element to do this (JScript panel better?), but if it actually can, would greatly appreciate the help.

Thanks.
Title: Re: foo_uie_graphical_browser
Post by: jazzthieve on 2017-01-24 13:47:25
It seems this component has for some reason a maximum item with size of 500px. Whatever I do, it doesn't seem to want to go beyond 500px. Can anyone confirm this? For example item width is set at 600, I draw a rectangle with the same size but it cuts off at 500px, same goes for text and images. Everything just gets cut off. Yes I know this is an old component and hasn't been updated in a while but it still works great except for this minor issue.