HydrogenAudio

Hosted Forums => foobar2000 => 3rd Party Plugins - (fb2k) => Topic started by: terrestrial on 2006-07-24 20:48:00

Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-07-24 20:48:00
This is a modified foo_uie_trackinfo which uses a differet display function, which allows for different fonts / alignment.

Example screenshot:

(http://img189.imageshack.us/img189/5489/tidu9.png) (http://imageshack.us)

and the code from the example:

Code: [Select]
$if(%_trackinfo_notrack%,
Stopped,

$align(left,top)
$font(forte,15,shadow,255-255-255)%title%$char(10)
$font(,12,,64-0-0)%album% ['['%date%']']$char(10)
$rgb(0,64,0)%artist%$char(10)
$rgb(64,0,0)%composer%test$char(10)

$align(right,bottom)
$font(Verdana,10,,0-0-0)%__codec%@%__bitrate%$char(10)
[%playback_time% / ]%length%

$align(left,bottom)
$font(Wingdings 2,13,,)
$if(%rating%,
$select(%rating%,
$rgb(155,0,0)ê,
êê,
êêê,
êêêê,
$rgb(0,155,0)êêêêê),
$rgb(155,155,155)ê)
)


This is very much still a beta, so please beware of bugs.

Download here (http://users.bowie-cass.com/singa/foobar).

For documentation, please refer to the wiki (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_(foo_uie_trackinfo_mod)). (thanks to FofR, Sw!ng, and the other contributors).

Requires:

MS Visual C++ 2005 Runtime Library (http://www.microsoft.com/downloads/details.aspx?familyid=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&displaylang=en)
GDI+ - only needed for Windows 2000 (http://www.microsoft.com/downloads/details.aspx?familyid=6A63AB9C-DF12-4D41-933C-BE590FEAA05A&displaylang=en)
Title: Track Info Panel with ability to change font
Post by: pepoluan on 2006-07-25 00:28:14
Is it possible to use the scrolling feature only on a certain portion of the trackinfo?
With the standard trackinfo, no way.


hey guys...
I have modified trackinfo a little bit to support mixing of different fonts/styles.
Sounds interesting. Will try and report ASAP.

I had to remove some stuff (scrolling, alignment support), but otherwise this is the same as the original. This is my first plugin in for foobar, so beware
Happily, I don't need these, so if your plugin works, it fits my needs perfectly.

I assume the 0-0-0 is R-G-B values?

You PM creator of trackinfo and coordinate your development. Or if that is not possible, change the name so that people will not confuse your trackinfo and the 'standard' trackinfo.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-07-25 10:30:07
Would it be possible for you to change your font code to me more consistent with TAGZ? IE:

'#FONT,tahoma,14,BOLD,0-0-0#'

would become

$font(tahoma,14,bold,$rgb(0,0,0))



Just a suggestion.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-07-28 22:19:43
made a couple of bug fixes, and other changes:

example screenshot:
[a href="http://imageshack.us" target="_blank"]
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-07-28 22:58:37
First off I'd like to thank you for continuing the development of this popular plugin. There are, however, a few issues I'd like to point out.

1) No Default Font.  Absolutely no text will appear unless a $font() is defined. So if you have code such as:
Code: [Select]
%album artist% - $font(tahoma,14,,0-0-0)%title%

You will see the title but not the artist. Perhaps you could reimplement the old font settings in the configuration, and use that as the default font. Also, the font appears to reset on every line of code. So unless you define a font at the beginning of every line text will disappear.

2) Inconsistent Font Size.  If I use the function $font(tahoma,8,,0-0-0), text appears significantly smaller than when I choose Tahoma 8pt in other components.


3) Broken $rgb().  Both colors in the format of $rgb(0,0,0) and 000000 no longer appear and are displayed as normal text.  The color can be redefined with a $font() command but this requires everyone to rewrite their existing code. Also, a simple $font(,,,0-0-0) does not work as apparently the $font() function requires an actual font to be specified.

4) Broken $tab().  The use of $tab() appears to simply bump the text to the next tabstop instead of the allignment behavior found in other foobar components. I am unable to figure out a way to right-allign text using this version of trackinfo.


On the other hand, I was pleasantly surprised to see that despite being a component of a different name and chosing not to save the settings for the old component, your component successfully inherited all my existing settings and code from the old component. Also, thank you for changing your font code format to be more consistent with TAGZ :)

Using multiple fonts in the same panel is definitely an improvement for this component, however I think some more development is in order for myself (and I would assume many others) to make the switch. Keep up the good work!
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-07-28 23:27:00
Thanks for your comments

1) No Default Font.  Absolutely no text will appear unless a $font() is defined. So if you have code such as:
Code: [Select]
%album artist% - $font(tahoma,14,,0-0-0)%title%


Yes, there needs to be a $font in the beginning and after every $align. I will bring back the font dialog and use that as the default.

Quote
2) Inconsistent Font Size.  If I use the function $font(tahoma,8,,0-0-0), text appears significantly smaller than when I choose Tahoma 8pt in other components.


I am using the font size in pixels, whereas others are using point sizes... I think I can convert to make it more consistant.

Quote
3) Broken $rgb().  Both colors in the format of $rgb(0,0,0) and 000000 no longer appear and are displayed as normal text.  The color can be redefined with a $font() command but this requires everyone to rewrite their existing code. Also, a simple $font(,,,0-0-0) does not work as apparently the $font() function requires an actual font to be specified.


can be fixed also

Quote
4) Broken $tab().  The use of $tab() appears to simply bump the text to the next tabstop instead of the allignment behavior found in other foobar components. I am unable to figure out a way to right-allign text using this version of trackinfo.


unfortunately, this will not be easy to change, since this display system is completly different from the regular one. However, you should be able to achieve the same effect (with even more flexability) by using something like this:

Code: [Select]
$align(left,top)
$font(tahoma,11,,0-0-0)
This text will appear at the top left
$align(right,bottom)
$font(tahoma,11,,0-0-0)
This text will appear at the bottom right
Title: Track Info Panel with ability to change font
Post by: pepoluan on 2006-07-29 02:41:52
2 suggestions:

1.
Please provide a readme.txt too to describe the difference with the old trackinfo, including new commands, how to align, change font, etc. Then put the readme.txt in a zip alongside the new .dll, and presto.

2.
Saving of not only trackinfo text, but also default font, default (background) color, etc. So just in case I screwed up my trackinfo, I only need to reload a .titagz file (or whatever extension) to restore. No need to fiddle manually the background color, fontsize, scroll speed, etc. like the older trackinfo.
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-07-29 23:33:46
terrestrial - amazing work, thank you so much for working on this plugin. few questions though:thoughts, anyone ...
[edit] i tried your version and stroked out things that already work ...
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-07-30 12:10:35
download (http://users.bowie-cass.com/singa/foo_uie_trackinfo_mod.dll)
Please just one uie_trackinfo project!

This guy has fixed some annoying bugs and introduced an additional wrapping mode. Just to let you know.

http://www.hydrogenaudio.org/forums/index....st&p=415116 (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=46704&view=findpost&p=415116)
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-07-30 21:11:05
Bug
In the latest foobar beta multiple trackinfo fields no longer work.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-07-30 22:11:39
  • i would like to be able to change only for example font, size or style, not everything ... does $font(,11,,) work like this? maybe you could add support for multiple $font functions with different arity, like $font(fontname), $font(fontname, style), $font(fontname, style, size). also $size and functions for quick bold / italics / underline would be great - maybe as $b() - or $b(text to be bold).
added. stuff like $font(,,bold,) should work now.
Quote
  • ability to disable / enable antialiasing or cleartype. some fonts work well only without it. this could be set in the configuration dialog
added (although I haven't tested it). add nocleartype to the option to disable cleartype.

Quote
  • when i change tracks (or during normal playback), when foobar is moving onto new song, there's registrable period of time when trackinfo thinks (probably properly), that there's no song playing - so it reacts to this (redraws itself) with the formatting having no song info available (which in my case means mostly that i do not output anything). this is distracting me *a lot*. could you find some workaround for this, please?
fixed.

Quote
  • extra feature would be to be able to 'measure' text's width (in pixels or % of available space), would that be possible? something like $fontwidth(fontname,style,size,text to measure) or $fontwidth(text to measure using current style).
I do this internally, but why would you need the values exposed?


i would like to be able to change only for example font, size or style, not everything ... does $font(,11,,) work like this? maybe you could add support for multiple $font functions with different arity, like $font(fontname), $font(fontname, style), $font(fontname, style, size). also $size and functions for quick bold / italics / underline would be great - maybe as $b() - or $b(text to be bold).

added. stuff like $font(,,bold,) should work now.
Quote
ability to disable / enable antialiasing or cleartype. some fonts work well only without it. this could be set in the configuration dialog

added (although I haven't tested it). add nocleartype to the option to disable cleartype.

Quote
when i change tracks (or during normal playback), when foobar is moving onto new song, there's registrable period of time when trackinfo thinks (probably properly), that there's no song playing - so it reacts to this (redraws itself) with the formatting having no song info available (which in my case means mostly that i do not output anything). this is distracting me *a lot*. could you find some workaround for this, please?

fixed.

Quote
extra feature would be to be able to 'measure' text's width (in pixels or % of available space), would that be possible? something like $fontwidth(fontname,style,size,text to measure) or $fontwidth(text to measure using current style).

I do this internally, but why would you need the values exposed?

New version can be found here (http://users.bowie-cass.com/singa/foo_uie_trackinfo_mod.zip)
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-07-30 22:41:27
Thanks for fixing the multiple fields bug so quickly

EDIT: Your new feature $font(,,bold,) doesn't work though. Makes the text disappear.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-07-31 02:48:46
Wow thanks for the quick update and thank you for correcting most of the issues I previously mentioned. I installed your latest update and after a few minor code edits I have made the switch. Still still remains a few issues I'd like to mention.

1) With other components, we can use $rgb() with no parameters or double color escape code to reset the text color to the default.  It was easy enough for me to change my $rgb() to $rgb(0,0,0) but otherwise existing code will not work. Would you perhaps consider re-implementing the configuration for the default text color and allow $rgb() or double color escape to reset the text to that color?

2) Bold and Italic on the default font is ignored. Also, $rgb(,,bold,) and $rgb(,,italic,) does not work as expected, instead it changes the text to some totally different font setting (is it filling in the blanks with something?)

3) $align() appears to be buggy, or I am not using it properly. If I use $align(right,) at the beginning of every line like this:

$align(right,)Text line one.$char(10)
$align(right,)Text line two.$char(10)

instead of seeing two lines right alligned, the lines are overlapped on top of each other. This can be corrected with $align(right,top) $align(right,center) $align(right,bottom) but that only fixes up to three lines of aligned text.  After playing around a bit I discovered that the $align() is inherited from one line to another so I can replace the code with:

$align(right,)
Text line one.$char(10)
Text line two.$char(10)

which IMO is actually more efficient code, however with people migrating from the old $tab() system you may want to implement some code to allow for the first example.

There also appears to be something wrong with $align(center,). When using this on multi-line text like this:

Text line one.$char(10)
$align(center,)Text line two.$char(10)

the second line is indeed centered, however the text appears overlapped onto the first line instead of appearing on the second line as expected.  I corrected this by using $align(center,bottom) but as stated before this approach will only help with up to three lines of aligned text.

You have corrected most of the major obsticals and I think that if you could atleast correct the first issue most legacy trackinfo code should migrate, requiring the end user to only to change their $tab() alignments o $align(). Again, keep up the good work!
Title: Track Info Panel with ability to change font
Post by: takt on 2006-07-31 09:20:35
Is this version of trackinfo a branch or just a update in features?

Any links to it? Any requirements?
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-07-31 15:11:43
Yotsuya

1) the way $align works right now is, as you found out, like this:

text flows from top-left corner; when new $align is encountered, the reference point / alignment is changed according to it. with this system, you can't truly make lines with both left and right aligned text. you can, though put some text on the left (even on multiple lines) and then put different text on the right. these two texts do not interact though, so they can overlap etc (which may be handy in some cases and not in others).

i think that the logical extension to $align would be to allow inherit-vertical-position mode, when for example $align(right,) would put text to the right border, but stay on the same vertical position as the last text rendered. another would be to allow pixel adjustments to the point's position like this: $align(center-1,top) or $align(+10,20) etc. +/- sign would mean relative adjustment; you could also specify those keywords like center etc. with this system. it would be possible to do quite a few effects including any-size line spacing, pseudo text shadows etc. i think that the way this track info mod works, it opens possibility to even more things in the future, like placement of images

with the current implementation you could do some interesting stuff though, like this:



1) could you please read what i posted in response to Yotsuya? there are still some things broken with the $font when omitting some parameters. plus only 'bold' works for me.

2) that size measuring - i would use it to detect if i can fit some text into the panel (for example when i show some, possibly long, text in one line only). if not, i could skip some parts or show it with smaller font (which is possible with your mod  )

3) as it is now, when text doesn't fit, it flows (wraps) to the next line. there are cases though, when there won't be space on the next line either - like when the word is wider than the width of the panel. i would like to be able to sometime somehow disable wrapping / clipping and show what fits.

4) somehow related to 3) and also to that $align +/- stuff mentioned in the response to Yotsuya. some fonts especially at bigger sizes have quite some space (vertically) around glyphs and it doesn't look right with regards to panel's borders. i would like to compensate for this by using for example $align(left,-3), but that would have to make sure the text as whole wouldn't get rejected as it's not starting inside the panel's boundaries (or is taller than panel's height).

5) this is much off the current scope of track info panel and you (or others) may disagree to go this way (which is fine by me), but it could be interesting to add settings for left / right / double click actions (so one could set it to different commands, not only to switch between playing / focused mode.

advanced possibility would be to define 'regions' in the formatting, either by $region(x,y,width,height,action) like $region(0,0,10,10,playback\cursor follows playback) or $region(text,action) like $region($ifgreater(%rating%,0,+,-),custom info\rate 1)$region($ifgreater(%rating%,1,+,-),custom info\rate 2) ... the latter example could make rating by simply clicking on corresponding symbol.

note: i somehow like that $font takes size parameter in pixels, as it allows much more accurate size setting for some 'pixel' ttf fonts.

Is this version of trackinfo a branch or just a update in features?

Any links to it? Any requirements?

i would say it's more of a branch, as it takes different approach to text positioning and other major issues. link has been posted by terrestrial, the author. it's here (http://users.bowie-cass.com/singa/foo_uie_trackinfo_mod.zip). it needs some later 0.9.x version of foobar.

there's also another work-in-progress track info project here (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=46704&view=findpost&p=415116), which is more focused on bug fixing (at the moment) the previous official track info panel.
Title: Track Info Panel with ability to change font
Post by: Andrea on 2006-07-31 15:20:39
i would say it's more of a branch, as it takes different approach to text positioning and other major issues. link has been posted by terrestrial, the author. it's here (http://users.bowie-cass.com/singa/foo_uie_trackinfo_mod.zip). it needs some later 0.9.x version of foobar.

there's also another work-in-progress track info project here (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=46704&view=findpost&p=415116), which is more focused on bug fixing (at the moment) the previous official track info panel.


Thanks for posting the links! It took me a while find them for foobar 0.9
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-07-31 17:05:59
Ok, new version (http://users.bowie-cass.com/singa/foo_uie_trackinfo_mod.zip) with bug fixes and some additions.

mazy is correct about the way $align works, but I've also added in a "compatibility" mode that should achieve the same effect as the original.

Quote
with the current implementation you could do some interesting stuff though, like this:


interesting  although, it technically shouldn't overlap as the code is supposed to move things out of the way, but I like the idea so I'll have to add in the ability to do this.

Quote
it would be possible to do quite a few effects including any-size line spacing, pseudo text shadows etc.


any-size line spacing is already there but I haven't exposed the function. As for shadows, try adding "shadow" to the font options.

Quote
that size measuring - i would use it to detect if i can fit some text into the panel (for example when i show some, possibly long, text in one line only). if not, i could skip some parts or show it with smaller font (which is possible with your mod  )


I eventually want to add different line ending styles, instead of just wrapping (including some sort of "fit" where the font sizes will be adjusted to fit the text). The idea of showing different text is interesting, though... I'll have to think about how best to implement this.

#4 is on the todo list already, and #5 is interesting... I like the idea of having "buttons" to preform actions, but it may take a while before I have the chance to add it in
Title: Track Info Panel with ability to change font
Post by: drbeachboy on 2006-07-31 17:53:56
I received this failure notice from FB2K_v0.9.3b4:

Failed to load DLL: foo_uie_trackinfo_mod.dll
Reason: This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem.

The last version (foo_uie_trackinfo_v0.8) has no problems loading. Was this new mod version created differently? Generally, I get this failure notice due to not having the proper library files. If so, can you let me know which library files are needed? Thank you.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-07-31 18:01:22
I know someone said that the font sizes where all wrong in the last version, and now you "fixed it". But they where correct in the old version. Now they are wrong. In columns ui and playlist dropdown my font is set to Tahoma 8, in trackinfo the font has to be set to 10 to be the same size as the rest of Foobar. In the version before this one I had the font size set to 8 witch was the same size as everything else.

Btw. Thanks for continuing the development on this component. Keep up the good work.
Title: Track Info Panel with ability to change font
Post by: pepoluan on 2006-07-31 18:42:21
@terrestrial: Now that you have your own thread  ... can you change the link on the first post? It still links to foo_uie_trackinfo.dll . I do think you have renamed your .dll to foo_uie_trackinfo_mod.dll, right?

Edit: Even better if you totally change the first posting like you're announcing a new plugin, e.g. the right download link, state the latest release date, version, etc.
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-07-31 18:49:47
terrestrial, thanks for fixes! that shadow stuff is nice hidden feature, i see you think a lot ahead of us . i'm going to report few bugs though.

1) as for style, i can make bold, italics and nocleartype work. underline and strikeout not.

2) also there are some problems with $font interfering with color codes etc. examples:

C8C8C8$font(Charriot Deluxe,9,nocleartype,)artist - the $font resets color to default one. i would think it should stay at the last color set.

$font(Charriot Deluxe,9,nocleartype,)C8C8C8artist - that color code resets anything related to font, so "artist" shows with the default font and style (ignoring everything in the $font, nocleartype including).

imho as with $rgb() returing to default color, maybe $font() could set (return to) the default font too.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-07-31 20:14:27
Nice to see this component is continuing to evolve.

This last release is a considerable improvement and now legacy code appears to migrate with the exception of the alignments.

I think I need a little more practice with the $align() system though.  Is there a way to have a line of text right justified without pushing the text to the top or bottom of the box, and without relying on the alignment of the line before it?  I tried:
Code: [Select]
$align(left,)Text line one.$char(10)
$align(right,)Text line two.$char(10)
But both lines of text appear on the top line. I tried putting numerical values in the second parameter of $align()  but that did not appear to make much dfference. Also, $align(right,) appears to break if it comes after an $align(center,). For example I was trying to create three columns of text:
Code: [Select]
$align(left,)one$align(center,)two$align(right,)three
but the second and third columns get grouped together.

As mil3s already indicated, font sizes appear to have reverted back to the "pixel" size instead of the "point" size you corrected in the last release.

I'd also like to second mazy's request to be able to pull the pixel length of a string of text, and also the height and width of the infobox if possible, I can see how it can be very useful with long song names. Using the $len() function does not really account for different width letters, especially when doublebyte characters are involved.  I'm currently trying to write an infobox that will change font sizes to accomodate different lenghths of song names and this is what I came up with.  I currently rely on static offsets I found with trial/error but it would be much nicer if I could use dynamic offsets computed from the panel and font sizes.. so I can change fonts or resize the panel without rewriting the code:

(http://img199.imageshack.us/img199/9969/infoboxuq6.gif) (http://imageshack.us)

Code: [Select]
$ifgreater($len(%artist%%title%%album%%date%),45,$font(,12,Bold,),$font(,16,Bold,))
$align(left,)$rgb(233,233,233)$if(%artist%,%artist% $rgb(0,128,255)$char(47)$rgb(233,233,233)  ,)$if2(%title%,)

$ifgreater($len(%artist%%title%%album%%date%),45,$char(10)$align(right,bottom),$align(right,))
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),,
$ifgreater($len(%artist%%title%%album%%date%),82,$font(,9,,),$font(,,,))
$rgb(180,180,180)$if2(%album%,)$if(%date%, $rgb(0,128,255)$char(40)$rgb(180,180,180)%date%$rgb(0,128,255)$char(41),)
)

Edit: Also, bold still does not appear to work from either the default font or with $font().
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-07-31 20:15:34
I received this failure notice from FB2K_v0.9.3b4:

Failed to load DLL: foo_uie_trackinfo_mod.dll
Reason: This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem.

The last version (foo_uie_trackinfo_v0.8) has no problems loading. Was this new mod version created differently? Generally, I get this failure notice due to not having the proper library files. If so, can you let me know which library files are needed? Thank you.


it needs the C runtime library for vs .net 2005 (msvcr80.dll I think). Do you have this file in your system?

--------

The font sizes used to be pixel sizes, but now are point sizes. To convert between them you can use this formula: pixels = points*dpi/72 (where dpi is normally 92). Point size seems to be consistent with Columns UI and everything else, at least to me. Are you sure you have the latest version?

--------

The underline / strikeout have been added, and the font / color issues have been fixed. There may still be some glitches, and if so, please let me know
Title: Track Info Panel with ability to change font
Post by: Schinkentoni on 2006-07-31 21:15:07
Thank you very much for your development efforts.

But I get the same mistake as drbeachboy. I have msvr80.dll in my system32 folder.

One suggestion: the ability to autoscroll like in Winamp (at least in the 2.8 version I was using), not only on line ending
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-07-31 21:26:30
are you guys running the latest version of foobar (0.9x)?
Title: Track Info Panel with ability to change font
Post by: Schinkentoni on 2006-07-31 21:31:35
the latest stable, yes (0.9.2)
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-07-31 22:41:55
i've been playing with the new version and found out some more hidden features . i apologize in advance, as these are probably just proof-of-concept features which are not meant to be used by users at the moment. i've found about them looking at the binary (as i couldn't make $alignrelative work). interesting stuff though. behold:

(http://mazy.johanka.cz/my_pics/temp/foobar/trackinfo-2.png)

edit: i've realized that this screenshot isn't 100% correct, #endshade# doesn't work atm, so #shade# changes background only of the current line (which in the case on the screenshots is rather long and spans over two "render lines").

as for other things, well the recent changes to the way $align works are a bit confusing to me. with the old (= overlapping blocks) version, it seemed more straightforward. i will post screenshots later.

also $alignrelative isn't working for me, i have even tried to use #align-rel# or #align-set# to no avail.

$rgb() seems to reset to black instead to the default text color.
Title: Track Info Panel with ability to change font
Post by: drbeachboy on 2006-07-31 23:05:17
are you guys running the latest version of foobar (0.9x)?

I am running the very latest (FB2K_v0.9.3b4). My work computer does not have the latest .Net installed, so I may not have the msvcr80.dll file installed. I am on my home computer at the moment. Tomorrow, I will copy that file from my home computer over to my work computer and see if that does the trick. Thank you for your quick reply.
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-07-31 23:28:34
ok, so here goes the 'align' post . formatting:

Code: [Select]
text$char(10)
// first block
$align(left,)$rgb(200,50,50)left$char(10)l
$align(center,)$rgb(50,200,50)center$char(10)c
$align(right,)$rgb(50,50,200)right$char(10)r
// this has no effect to the second block
$align(,bottom)
// second block
$align(left,)$rgb(100,0,0)left
$align(right,)$rgb(0,0,100)right
$align(center,)$rgb(0,100,0)center
// third block
$align(left,bottom)$rgb(200,50,50)left
$align(right,bottom)$rgb(50,50,200)right
$align(center,bottom)$rgb(50,200,50)center
result:

.

it gets interesting again for the last, third block. i've only changed the order in which i specify texts for corresponding columns. i put right in front of center - and the result is what one would expect in the other blocks too - right column has adjustment line on the right edge of the panel.
Title: Track Info Panel with ability to change font
Post by: rouge on 2006-08-01 04:06:43
Can this be made into a seperate component from foo_uie_infopanel?

In case people want to use a mix of modified and unmodified info panels.

edit:  This appears to be possible, but there is no difference in the layout names, so you wouldn't be able to tell which is which.  And my old infopanels were automatically converted to the moded ones upon installation.
Title: Track Info Panel with ability to change font
Post by: year98 on 2006-08-01 04:36:18
Great works!

Some suggestions...somewhat irrelevant with your mod.

1. show foobar volume, playback order.
2. combine album art...
3. double-click behavior configure.

Is these possible? or shoud be just my dream...
Title: Track Info Panel with ability to change font
Post by: thuan on 2006-08-01 06:13:16
I second the configurable double click behavior.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-01 07:36:57
Quote
I've been playing with the new version and found out some more hidden features


nice detective work  most of the "hidden" stuff is still untested/incomplete, so be careful, but there are some that are pretty much done.

------------

fixed the problem with alignrelative, and renamed to $alignrel
also fixed the $rgb() problem

fixed the alignment problem (caused by that center column). it should work now.

if you don't specify a parameter for $align (eg $align(left,)) the blank either default to top or left.

------

If will try to change it into a separate dll from foo_uie_trackinfo so that you can run both at the same time for the next version.

-----

Quote
Some suggestions...somewhat irrelevant with your mod.


I think I can do #1. #2 is low down on the todo list. #3 also, but first I want to fix the basic formatting stuff

-------

I've uploaded a new version, with the aforementioned bug fixes + some new commands (including one to measure length). Please see the readme for more details.
Title: Track Info Panel with ability to change font
Post by: year98 on 2006-08-01 07:44:15
Oh! Can you do everything? I'll wait forerver...^^
Title: Track Info Panel with ability to change font
Post by: Hamallainen on 2006-08-01 09:42:16
Thanks a lot for your work
Code: [Select]
$alignabs(X,Y,W,H,H,V)
%_width%
%_height%
$calcwidth(TEXT)
$calcheight(TEXT)

those are a great improvement 
Title: Track Info Panel with ability to change font
Post by: Generalverdacht on 2006-08-01 11:22:04
just wanted to thank you (creator of new features), no time in the moment going to wacken festival soon. so trying to get into it next week.

seems really (!!!!) nice work to me.
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-01 12:04:36
terrestrial, i can confirm that $rgb() works and that center column alignment problem is gone! the new features summed by Hamallainen are great .

now i have something new for us. picture:

.

let's move to 2a. it's $alignrel test, 2b has the first line in the code bellow uncommented:

Code: [Select]
//$alignrel(left,top)
<line1>
$char(10)
<line 2>
$alignrel(center,top)<line 2 center>
$alignrel(right,top)<line 2 right>
$char(10)<line3>
$alignrel(left,top)<line 3 left>
we can see in the first example, that until <line 3 left> it works as one would expect. now if we uncomment the first line with the $alignrel (which is set to default values), things get messy starting from <line 2 center>. my guess is that $alignrel doesn't work correctly with multiline blocks. it does as long as there's no $alignrel before, otherwise it takes that as reference point. i think this is a bug.

example no. 1, is extended one from my previous post. you can see there's no longer that center column alignment problem. there are some interesting observations to note, though.

in the top-left corner, there are two major multiline blocks. one has lines with "left", "l" and "longer left"; the other has 4 lines with one underscore character each. interesting is that the underscore on the second line is not directly alongside that "l" and similarly dark-red "left" to the light one on the first line.

my explanation is that this is rather good feature of multiline blocks. whenever blocks spans over multiple lines, the edge of its longest line (or rather the line with most major "adjustment point"), in this case the third line "longer left", affects neighbours of this block on its every line. it basically creates columns, but only affecting the lines that block spans over (that's why the 4. underscore is directly to the left panel's edge).

another feature demonstrated is the $alignabs. at first please note those two light-blue underscores on the right edge (second sub-block of 5. block in the code). these are part of multiline block positioned with $alignabs, so they do not "flow" with other text there and overwrite "right" and "r". i used the "shortcut" 2-parameter version of $alignabs, as that's basically version of $align without overwriting text check.

the full $alignabs(x,y,width,height,halign,valign) is demonstrated by the rectangles with "absolute" text. in this case, x, y, width and height define rectangle which is used as boundaries for following text, and halign plus valign control this text's positioning inside that rectangle. #SHADE# came handy in here, is it allowed for showing width of these rectangles.

you can see that $alignabs supports negative coordinates and also that it shows even if part of the rectangle is outside panel's boundaries. this is all good news . i have one feature request though: it would be nice if $alignabs(x,y,,,halign,valign) - i.e. without width and/or height specified - substitutes these omitted parameters with values equal to that block's width / height.

there's another thing to mention regarding this example. only text blocks aligned with $align(,top) do not overwrite other text. you can see that capital letters "L", "C" and "R" overwrite "left", "center" and "right" respectively. all these blocks have "middle" vertical alignment.

code:

Code: [Select]
text$char(10)
// 1. block
$align(left,)$rgb(200,50,50)left$char(10)l$char(10)longer left
$align(center,)$rgb(50,200,50)center$char(10)c
$align(right,)$rgb(50,50,200)right$char(10)r
// has no effect on 2. block
$align(,bottom)
// 2. block
$align(left,)$rgb(100,0,0)left
$align(right,)$rgb(0,0,100)right
$align(center,)$rgb(0,100,0)center
// 3. block
$align(left,middle)$rgb(200,50,50)left
$align(right,middle)$rgb(50,50,200)right
$align(center,middle)$rgb(50,200,50)center
// 4. block
$align(left,middle)$rgb(200,50,50)L
$align(right,middle)$rgb(50,50,200)R
$align(center,middle)$rgb(50,200,50)C
// 5. block
$align(left,top)$rgb(255,100,100)_$char(10)_$char(10)_$char(10)_
$alignabs(right,top)$rgb(100,100,255)_$char(10)_
// 6. block
$alignabs(-30,80,70,16,center,middle)#SHADE#absolute
$alignabs(100,80,70,16,center,middle)#SHADE#absolute
$alignabs(140,80,70,16,center,middle)#SHADE#absolute
$alignabs(260,80,45,15,center,middle)#SHADE#absolute
// 7. block
$alignabs(100,96,200,16,,)"absolute" is
$calcwidth(absolute) x $calcheight(absolute) pixels
[edit] colors and some syntax. my computer went down while i was editing this post, and i wasn't able to get it running until now :/. i should buy new harddrive for my system ...
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-01 18:13:03
Thank you terrestrial for your dedication, this component is evolving quickly. At this time all my issues have been resolved and I have happily migrated to your version of this panel.  The only things I have left are feature requests:

1) I would like to be able to use $font() without any parameters to set the current font to the default font. And for that matter an $align() without parameters to reset the alignment to the upper left corner would probably be useful too.

2) Ability to export and import settings of a panel including "Font", "Colours", "Display options", and "Formatting string" to an external file would assist tremendously when redesigning layouts or sharing configurations.

3) Text that can be clicked on to start events such as URL's from online radio.  This has been mentioned before and would obviously take quite a bit of work so I dont expect to see it anytime soon.

4) Defining a background bitmap or embedding graphic sources such as icons inline with text would be icing on the cake.  When combined with request #3 this would provide a pleasant alternative to the default buttons toolbar (which I've heard has many problems under Win2k).

I would like to particularly thank you for providing the functions for analyzing pixel length of strings and the panel itself, when used properly these allow us to develop panels that dynamically resize the text based on the panel's size. I'd also like to thank you for resolving the $rgb()$font() conflict and $align() bugginess, the component is much more flexible.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-01 18:21:45
Quote
first start with 3. using the new measurement features coupled with #SHADE#, one can make nice pixel-accurate trackbar. code:

nice! I didn't even think about that  I think I need to add the ability to add picture now

Quote
we can see in the first example, that until <line 3 left> it works as one would expect. now if we uncomment the first line with the $alignrel (which is set to default values), things get messy starting from <line 2 center>. my guess is that $alignrel doesn't work correctly with multiline blocks. it does as long as there's no $alignrel before, otherwise it takes that as reference point. i think this is a bug.

this code

Code: [Select]
//$alignrel(left,top)
<line1>
$char(10)
<line 2>
$alignrel(center,top)<line 2 center>
$alignrel(right,top)<line 2 right>
$char(10)<line3>
$alignrel(left,top)<line 3 left>

get automatically converted to

Code: [Select]
//$alignrel(left,top)
$alignrel(left,top)<line1>
$alignset()$alignrel(left,top)
<line 2>
$alignrel(center,top)<line 2 center>
$alignrel(right,top)<line 2 right>
$char(10)<line3>
$alignrel(left,top)<line 3 left>

with the first line not commented out, the automatic conversion doesn't happen (it doesn't happen after the first $align), so if you change the subsequent $char(10)s to $alignset()$align(left,top) it should work.

Quote
my explanation is that this is rather good feature of multiline blocks. whenever blocks spans over multiple lines, the edge of its longest line (or rather the line with most major "adjustment point"), in this case the third line "longer left", affects neighbours of this block on its every line. it basically creates columns, but only affecting the lines that block spans over (that's why the 4. underscore is directly to the left panel's edge).

exactly right.. the new text should "flow" around the obstruction. It's useful when you have a small "box" of text that you want your main text to flow around.

Quote
it would be nice if $alignabs(x,y,,,halign,valign) - i.e. without width and/or height specified - substitutes these omitted parameters with values equal to that block's width / height.

do you mean substitute the total display width, height (%_width%, %_height%) or something else?

Quote
only text blocks aligned with $align(,top) do not overwrite other text.

correct also  block detection / avoidance for middle and bottom aren't written yet (eventually...)
Title: Track Info Panel with ability to change font
Post by: FrDelefortrie on 2006-08-01 18:58:51
Another feature request: Can you create $font(NAME,SIZE,OPTIONS,COLOR) generator as you do with the color (e.g.: 000000)?, We just need a standart font box with as output  the $font() syntax ready to cut'n'paste

At least could you update the ""color generator" to create color with the the new rgb (e.g.: $rgb() ) syntax?.

Thank you very much for your very good work.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-01 19:05:15
I stumbled upon a small inconsistency.

$align(left,)$repeat( ,4)text
$align(right,)text$repeat( ,4)

The right alignment will strip any spaces at the end of text, while the left alignment does not strip any spaces at the beginning of text.  I would prefer if the right alignment would allow for spaces, but either way I think the functions should act similarly.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-01 19:21:13
I know a lot of people out there are using trackinfo code that uses $progress2() to create a stylized progress bar.  Well I modified mine to auto-resize with the panel and thought I'd share the code. Change $rgb() and $char() values to suit your tastes, the 5th line is key:

Code: [Select]
$align(center,bottom)
$progress2(
%playback_time_seconds%,
%length_seconds%,
$sub($div(%_width%,$calcwidth($char(9679))),1),
$rgb(0,128,255)$char(9679),
$rgb(0,0,202)$char(9679)
)
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-01 19:41:25
Quote
1) I would like to be able to use $font() without any parameters to set the current font to the default font. And for that matter an $align() without parameters to reset the alignment to the upper left corner would probably be useful too.


added.

Quote
2) Ability to export and import settings of a panel including "Font", "Colours", "Display options", and "Formatting string" to an external file would assist tremendously when redesigning layouts or sharing configurations.


already on the todo list, but may take a while

Quote
3) Text that can be clicked on to start events such as URL's from online radio. This has been mentioned before and would obviously take quite a bit of work so I dont expect to see it anytime soon.


I should be able to do this after I add in images. I may have a version that can do images today, but buttons may take a couple of days.

Quote
Can you create $font(NAME,SIZE,OPTIONS,COLOR) generator as you do with the color (e.g.: 000000)?, We just need a standart font box with as output the $font() syntax ready to cut'n'paste


This should be doable.

Quote
At least could you update the ""color generator" to create color with the the new rgb (e.g.: $rgb() ) syntax?.


The old syntax should work fine (eg. 000000 = rgb(0,0,0) and both will be recognized).

Quote
The right alignment will strip any spaces at the end of text, while the left alignment does not strip any spaces at the beginning of text. I would prefer if the right alignment would allow for spaces, but either way I think the functions should act similarly.


spaces to the right of words are counted as insignificant because word breaks, etc are calculated from there, so I think it may be better to also strip out spaces from the beginning. You should be able to use non-breaking spaces (not sure what the char code for this is) to achieve what you want though.
Title: Track Info Panel with ability to change font
Post by: FrDelefortrie on 2006-08-01 19:55:38
Quote
At least could you update the ""color generator" to create color with the the new rgb (e.g.: $rgb() ) syntax?.


The old syntax should work fine (eg. 000000 = rgb(0,0,0) and both will be recognized).



I know but i just don't want to do the hexadecimal->decimal conversion to retrieve the "rgb" of the color. And I think it's more consistant with fb2k 0.9
Title: Track Info Panel with ability to change font
Post by: Hamallainen on 2006-08-01 23:22:36
Hi,

I have a problem with the $align(H,V) fonction. If someone could confirm please. ( I use 0.9.3 beta4)

Here is the code i use, to explain:
Code: [Select]
$if(%_trackinfo_notrack%,
,
$align(left,top)$font(tahoma,16,,0-0-0)$repeat(7,12)
$align(center,top)$font(tahoma,16,,255-0-0)$repeat(8,12)
$align(right,top)$font(tahoma,16,,0-255-0)$repeat(9,12)

$align(left,middle)$font(tahoma,16,,0-0-255)$repeat(4,12)
$align(center,middle)$font(tahoma,16,,255-255-0)$repeat(5,12)
$align(right,middle)$font(tahoma,16,,0-255-255)$repeat(6,12)

$align(left,bottom)$font(tahoma,16,,255-0-255)$repeat(1,12)
$align(center,bottom)$font(tahoma,16,,128-128-255)$repeat(2,12)
$align(right,bottom)$font(tahoma,16,,255-128-128)$repeat(3,12)
)

and a screenshot:
(http://img185.imageshack.us/img185/7193/problemze4.th.png) (http://img185.imageshack.us/my.php?image=problemze4.png)

It's seems $align(*,top) behave differently than $align(*,middle) and $align(*,bottom)
Well it seems $align(*,middle) and $align(*,bottom) overlap text if it's too long while $align(*,top) do not overlap but "discard" text. I don't know which one is the intended behaviour. I think both behaviour are interesting and that would be great if we could have access to both with for example $align(H,V) for no overlap and $aligno(H,V) for overlap.

thanks
Title: Track Info Panel with ability to change font
Post by: Shakedown on 2006-08-01 23:30:20
This may be a stupid question, but I'm fairly new to foobar and I can't find it documented anywhere.  But anyway, here goes nothin':

Is there a modifier that would make all of the text affected by the font statement display using capital characters?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-01 23:49:42
Shakedown I believe the function you are looking for is $upper().  This is the wrong thread and is not handled by $font(). Please refer to your C:\Program Files\foobar2000\titleformat_help.html

see mazy's post below.
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-01 23:58:08
It's seems $align(*,top) behave differently than $align(*,middle) and $align(*,bottom)
Well it seems $align(*,middle) and $align(*,bottom) overlap text if it's too long while $align(*,top) do not overlap but "discard" text. I don't know which one is the intended behaviour. I think both behaviour are interesting and that would be great if we could have access to both with for example $align(H,V) for no overlap and $aligno(H,V) for overlap.

yes, you're right. you could read my and terrestrial's posts as there's lot of information how this works, but i reckon that it's lots of information .

in short - only $align(*,top) avoids to overwrite text and "flows" it. this is probably going to change, this is simply work-in-progress and there's only anti-overlapping code for the top scenario.

as for the other question you've asked - there's already way to output text without overlap checking. you can use $alignabs. it's more complex function which allows for positioning block of text anywhere you want, with the ability to specify it's box and vertical / horizontal alignment inside that box. the syntax is $alignabs(x,y,width,height,halign,valign). there's also shortcut version which is similar to $align - $alignabs(halign,valign).


Shakedown, Yotsuya is right, but there's also hidden feature in this plugin. you can use "uppercase" or "lowercase" directly in the $font statement, in the style parameter. example: $font(,,bold uppercase,)
Title: Track Info Panel with ability to change font
Post by: Hamallainen on 2006-08-02 07:37:04
@ mazy
thanks for your explanations
Title: Track Info Panel with ability to change font
Post by: mobyduck on 2006-08-02 08:01:26
Ok, my turn for a stupid question: how do I add a blank line? It looks like multiple $char(10) are ignored and treated as one. The same happens if the text I display contains carriage returns.

Note that I had the same problem with the "other" trackinfo plugin.

Regards.

Alessandro

[Edit]Using foobar v0.9.2 and foo_uie_trackinfo_mod v0.8 (1-AUG-2006)
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-08-02 09:01:40
I also do not see how to insert a blank line. I use a dirty trick now: $char(10) $char(10)

Additional request: Would you please explain any command on top of your text file? Now its a bit of a searching odyssey... For example, you are writing about "$alignset()" in the bottom of your text file. But its explained nowhere...

And: Do you have any plans to implement line end style again? I really need the ellipsize mode  Cannot live without it, at least as a global option...

And thanks for making the font sizes compatible now!
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-02 10:08:15
Ok, my turn for a stupid question: how do I add a blank line? It looks like multiple $char(10) are ignored and treated as one. The same happens if the text I display contains carriage returns.
I also do not see how to insert a blank line.I use a dirty trick now: $char(10) $char(10)
i have just done tests and it seems that this is because of the default legacy support kicking in. just add $align(top,left) (or whatever justification suits you) before the rest of your code ...

Additional request: Would you please explain any command on top of your text file? Now its a bit of a searching odyssey... For example, you are writing about "$alignset()" in the bottom of your text file. But its explained nowhere...

And: Do you have any plans to implement line end style again? I really need the ellipsize mode  Cannot live without it, at least as a global option...
i'm with you on $alignset(), i would like to know what it does too. i guess it's simply that there are many not finished or testing features and the plugin is in early stages of development, so many things can change etc.

as for line end styles, that's on the todo list, iirc.

[edit] now i think i know what $alignset does . it works with conjunction to $alignrel and its use is rather essential for $alignrel. simply - you use $alignset() to mark new top alignment line. instead of $char(10) to move to new line, you can use $alignset(). any subsequent $alignrel is not allowed to move above that line.

with this knowledge i was finally able to make what i wanted before: align text to center / right edge on any given line. i would think that $alignrel would implicitly work like this without the need for $alignset, but i guess this give us more control over the flow / positioning. as it is now, you have to set alignment after any $alignset - like $alignset()$alignrel(left,top) - or you wouldn't see anything (not sure why this happens, need to ask terrestrial). you can use $align of course, but there wouldn't by any point using $alignset then (as it only accounts for relative positioning) ...

(http://mazy.johanka.cz/my_pics/temp/foobar/trackinfo-example-01.png)

check this example 1:

Code: [Select]
$alignrel(left,top)
<line1>
// we're done with line 1
$alignset()
// this is essential, terrestrial may explain why ...
$alignrel(left,top)
<line 2>
$alignrel(center,top)
<line 2 center>
$alignrel(right,top)
<line 2 right>
// we're done with line 2
$alignset()
$alignrel(right,top)
<line3 right>
$alignrel(left,top)
<line 3 left>

example 2 (try uncommenting the $alignset line etc.):

Code: [Select]
$alignrel(left,top)
<line1>
$char(10)
<line2>
$char(10)
<line3>
//$alignset()
$alignrel(left,top)
//$alignrel(right,top)
<right>
Title: Track Info Panel with ability to change font
Post by: stalnation on 2006-08-02 11:00:21
I received this failure notice from FB2K_v0.9.3b4:
Failed to load DLL: foo_uie_trackinfo_mod.dll
Reason: This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem.


I get this error too (I also have FB2K 0.9.3 Beta 4 running).
I ran DepencyWalker (http://www.dependencywalker.com/) to check the depencys.
It said i need the msvcr80.dll (http://www.dll-files.com/dllindex/dll-files.shtml?msvcr80) just as terrestrial said before...
I made hyperlinks to the download location so you can directly download it and put it into your Windows\System32 folder.
Anyway i did this and it does not work.

DepWalker says:
Code: [Select]
Error: The Side-by-Side configuration information in "c:\apps\foobar2000\components\FOO_UIE_TRACKINFO_MOD.DLL" contains errors. This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem (14001).
Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.


so, what is missing?

please help us terrestrial
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-02 11:41:31
so, what is missing?
i think this has something to do with collision with the original track info panel.

you could try to backup your foobar2000.cfg, remove foo_uie_trackinfo.dll (or rename it to for example *.foo) and start foobar (confirming any potential about removing plugin's configuration). if this doesn't help, do the same with foo_uie_trackinfo_mod.dll, start foobar (again confirm plugin's configuration) and then exit. put back foo_uie_trackinfo_mod.dll and start again. you would lose your panels' configuration though ...


Quote
it would be nice if $alignabs(x,y,,,halign,valign) - i.e. without width and/or height specified - substitutes these omitted parameters with values equal to that block's width / height.
do you mean substitute the total display width, height (%_width%, %_height%) or something else?
that's a bit tricky. i would like it to substitute for width and height of such a minimal box, that fits the block. that would be easy for single line blocks, but a bit tricky for multiline ones.
Title: Track Info Panel with ability to change font
Post by: stalnation on 2006-08-02 11:46:34
you could try to backup your foobar2000.cfg, remove foo_uie_trackinfo.dll (or rename it to for example *.foo) and start foobar (confirming any potential about removing plugin's configuration). if this doesn't help, do the same with foo_uie_trackinfo_mod.dll, start foobar (again confirm plugin's configuration) and then exit. put back foo_uie_trackinfo_mod.dll and start again. you would lose your panels' configuration though ...

I tried this and it does not work (I deleted the old trackinfo plugin anyway).
I even tried it with a clean new foobar2000.cfg but no luck.
Title: Track Info Panel with ability to change font
Post by: foosion on 2006-08-02 12:02:25
It said i need the msvcr80.dll (http://www.dll-files.com/dllindex/dll-files.shtml?msvcr80) just as terrestrial said before...
I made hyperlinks to the download location so you can directly download it and put it into your Windows\System32 folder.
Anyway i did this and it does not work.
Frankly, manually installing msvcr80.dll is one of the more stupid things you can do. If the component author insists on linking the C/C++ runtime dynamically, he/she should give you installation instructions for the component including a download link for the installer of said runtime.

Also see the comment by the Microsoft employee on the page you linked to:
Quote
#468, 2005-12-08 02:53:46, by: martynl@microsoft.com
a) This is the beta 2 version of msvcr80.dll. Don\'t install it. b) This file should never be installed in system32 (except on Win9x and Windows 2000). c) The .NET framework already installs the copy correctly (in WinSxS). d) The correct source for an msvcr80 binary is from your application provider, not from this site. Martyn
Title: Track Info Panel with ability to change font
Post by: mobyduck on 2006-08-02 12:05:52
Ok, my turn for a stupid question: how do I add a blank line? It looks like multiple $char(10) are ignored and treated as one. The same happens if the text I display contains carriage returns.
Well, restarted foobar and all's well now. 

Sorry for the unneeded report and thanks for your answers.

Alessandro
Title: Track Info Panel with ability to change font
Post by: stalnation on 2006-08-02 12:19:53
@foosion
I compared the msvcr80.dll from the website I linked to and the .net framework - they are the same
so this can't be the reason why it doesn't worked...
it has something to do with the .net framework.
Maybe terrestrial compiled his plugin for .net.

anyway,
it works when you install the .net Framework
I don't know if you must install .net Framework 1 or 2 since I installed them with a silent installer which contains both.
Title: Track Info Panel with ability to change font
Post by: thuan on 2006-08-02 14:02:55
It's just need this (http://www.microsoft.com/downloads/details.aspx?FamilyId=32BC1BEE-A3F9-4C13-9C99-220B62A191EE).  If you've already install .NET 2.0 then you don't need to install the C++ 2005 runtime it's included.
Title: Track Info Panel with ability to change font
Post by: FrDelefortrie on 2006-08-03 17:55:26
Bug report

Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 04BC253Fh
Access violation, operation: read, address: 00000002h
Call path:
entry=>app_mainloop
This is the first crash logged by this instance.
Code bytes (04BC253Fh):
04BC24FFh:  00 00 51 8D 94 24 80 02 00 00 52 D1 F8 8D 44 45
04BC250Fh:  00 68 64 4C BF 04 50 FF D6 8B C5 83 C4 18 8D 50
04BC251Fh:  02 66 8B 08 83 C0 02 66 85 C9 75 F5 2B C2 D1 F8
04BC252Fh:  8D 6C 45 00 EB 07 66 89 45 00 83 C5 02 83 C3 02
04BC253Fh:  66 83 3B 00 0F 85 0B FD FF FF 5F 5E 8B 8C 24 34
04BC254Fh:  03 00 00 66 C7 45 00 00 00 5D 5B 33 CC E8 3F CE
04BC255Fh:  02 00 81 C4 30 03 00 00 C3 CC CC CC CC CC CC CC
04BC256Fh:  CC 55 8B EC 83 E4 F8 6A FF 68 1F 09 BF 04 64 A1
Stack (0012F27Ch):
0012F25Ch:  00000000 0000000C BC6CD620 0012F7E0
0012F26Ch:  00009EC1 A7B84B60 BF81657A A7B84D38
0012F27Ch:  0A777410 0107640C 0012F6E4 01076390
0012F28Ch:  01000353 003C0000 0A777AD0 00310032
0012F29Ch:  0030002D 0030002D 00000000 00320032
0012F2ACh:  00000038 0012F20C E793A2DA 0012F2F8
0012F2BCh:  7C91EE18 0000000F 0012F4A4 7C927BF5
0012F2CCh:  01070608 7C927BB0 01079F10 00000008
0012F2DCh:  00000000 00000000 0012F34C 05E08DB8
0012F2ECh:  0A7770B0 0012F2DC 00000006 0012F370
0012F2FCh:  00494730 9FC28C80 0012F314 00000000
0012F30Ch:  7C9205C8 05ED6058 0012F3E0 7C920551
0012F31Ch:  003C06E8 7C92056D 00000008 05ED6060
0012F32Ch:  05ED6060 0012F340 00000000 7C9205C8
0012F33Ch:  05C42998 0012F40C 01079F18 003C0778
0012F34Ch:  7C92056D 00000000 05C429A0 00000000
0012F35Ch:  00000001 01070000 00000006 01079F20
0012F36Ch:  0145E4F1 0012F3CC 004A8DED 00000001
0012F37Ch:  0012F394 01079F90 0012F388 04F54810
0012F38Ch:  0012F664 00000008 0012F3B4 004613D1
Registers:
EAX: 00000010, EBX: 00000002, ECX: 00000000, EDX: 0A76ED18
ESI: 77D1A9B6, EDI: 00000000, EBP: 0A76ED36, ESP: 0012F27C
Crash location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h

Loaded modules:
foobar2000                      loaded at 00400000h - 004F1000h
ntdll                            loaded at 7C910000h - 7C9C7000h
kernel32                        loaded at 7C800000h - 7C904000h
COMCTL32                        loaded at 77390000h - 77492000h
msvcrt                          loaded at 77BE0000h - 77C38000h
ADVAPI32                        loaded at 77DA0000h - 77E4C000h
RPCRT4                          loaded at 77E50000h - 77EE1000h
GDI32                            loaded at 77EF0000h - 77F37000h
USER32                          loaded at 77D10000h - 77DA0000h
SHLWAPI                          loaded at 77F40000h - 77FB6000h
SHELL32                          loaded at 7C9D0000h - 7D1F3000h
ole32                            loaded at 774A0000h - 775DD000h
shared                          loaded at 10000000h - 1002A000h
comdlg32                        loaded at 76340000h - 7638A000h
IMM32                            loaded at 76320000h - 7633D000h
LPK                              loaded at 62DC0000h - 62DC9000h
USP10                            loaded at 753C0000h - 7542B000h
uxtheme                          loaded at 5B090000h - 5B0C8000h
msctfime                        loaded at 75140000h - 7516E000h
foo_abx                          loaded at 00A20000h - 00A53000h
foo_albumlist                    loaded at 00A60000h - 00AA1000h
foo_audioscrobbler              loaded at 00AD0000h - 00B07000h
WS2_32                          loaded at 719F0000h - 71A07000h
WS2HELP                          loaded at 719E0000h - 719E8000h
foo_autoplaylist                loaded at 00B30000h - 00B62000h
foo_burninate                    loaded at 00B90000h - 00BC6000h
VERSION                          loaded at 77BD0000h - 77BD8000h
foo_cdda                        loaded at 00BF0000h - 00C26000h
foo_centercut                    loaded at 00C50000h - 00C75000h
foo_channel_mixer                loaded at 00CA0000h - 00CDA000h
foo_common                      loaded at 00CF0000h - 00D2A000h
foo_converter                    loaded at 00D50000h - 00DBA000h
foo_convolve                    loaded at 00DE0000h - 00E31000h
foo_custominfo                  loaded at 00E60000h - 00EE6000h
foo_dbsearch                    loaded at 00F10000h - 00F85000h
OLEAUT32                        loaded at 770E0000h - 7716C000h
foo_dsp_channeldividerF          loaded at 00FB0000h - 00FDA000h
foo_dsp_channeldividerF3        loaded at 01000000h - 0102B000h
foo_dsp_skip_silence            loaded at 01050000h - 0105A000h
MSVCR80                          loaded at 78130000h - 781CB000h
foo_dsp_soundtouch              loaded at 01080000h - 0108F000h
MSVCP80                          loaded at 7C420000h - 7C4A7000h
foo_dsp_std                      loaded at 010A0000h - 010E1000h
foo_dsp_tube                    loaded at 01110000h - 01136000h
foo_dsp_xover                    loaded at 01150000h - 011D0000h
foo_freedb2                      loaded at 01DF0000h - 01E30000h
foo_input_shorten                loaded at 01E50000h - 01E7E000h
foo_input_std                    loaded at 01EA0000h - 01FAB000h
foo_lnk                          loaded at 01FD0000h - 01FE9000h
foo_masstag                      loaded at 02010000h - 0205F000h
foo_masstag_codepage            loaded at 02080000h - 0208A000h
foo_msnalt                      loaded at 020A0000h - 020B9000h
foo_navigator                    loaded at 020E0000h - 02100000h
foo_osd                          loaded at 02120000h - 02155000h
foo_playcount                    loaded at 02180000h - 021A8000h
foo_playlist_bind                loaded at 021D0000h - 021F5000h
foo_pqview                      loaded at 02210000h - 0222C000h
foo_prettypop                    loaded at 02250000h - 0229D000h
mscoree                          loaded at 79000000h - 79045000h
msvcm80                          loaded at 7C4C0000h - 7C53D000h
mscorwks                        loaded at 79E70000h - 7A3D1000h
mscorlib.ni                      loaded at 790C0000h - 79BA8000h
mscorjit                        loaded at 79060000h - 790B3000h
rsaenh                          loaded at 0FFD0000h - 0FFF8000h
foo_random                      loaded at 04730000h - 0476F000h
foo_rgscan                      loaded at 04810000h - 04855000h
foo_run                          loaded at 04880000h - 048AB000h
foo_runcmd                      loaded at 048D0000h - 048FF000h
foo_shutdown                    loaded at 04920000h - 04938000h
foo_sic                          loaded at 04960000h - 049B0000h
foo_tradersfriend                loaded at 049D0000h - 04A0D000h
foo_uie_albumart                loaded at 04A30000h - 04A62000h
gdiplus                          loaded at 4EB80000h - 4ED23000h
foo_uie_albumlist                loaded at 04AA0000h - 04ADF000h
foo_uie_quicksearch              loaded at 04B00000h - 04B48000h
foo_uie_tabs                    loaded at 04B70000h - 04B96000h
foo_uie_trackinfo_mod            loaded at 04BC0000h - 04BFF000h
foo_ui_columns                  loaded at 04C10000h - 04CAB000h
foo_ui_std                      loaded at 04CD0000h - 04D27000h
foo_unpack                      loaded at 04D50000h - 04D7E000h
foo_utils                        loaded at 04DA0000h - 04DD9000h
foo_version                      loaded at 04E00000h - 04E26000h
dbghelp                          loaded at 5D3F0000h - 5D491000h
ctagent                          loaded at 05250000h - 05256000h
System.ni                        loaded at 7A440000h - 7ABFE000h
System.Drawing.ni                loaded at 7ADE0000h - 7AF74000h
System.Windows.Forms.ni          loaded at 7AFD0000h - 7BC56000h
dciman32                        loaded at 73B10000h - 73B16000h
mswsock                          loaded at 71990000h - 719D0000h
DNSAPI                          loaded at 76ED0000h - 76EF7000h
rasadhlp                        loaded at 76F70000h - 76F76000h
hnetcfg                          loaded at 62E40000h - 62E99000h
wshtcpip                        loaded at 719D0000h - 719D8000h
xpsp2res                        loaded at 07F90000h - 0826A000h
DSOUND                          loaded at 73E60000h - 73EBC000h
WINMM                            loaded at 76AE0000h - 76B0F000h
WINTRUST                        loaded at 76BE0000h - 76C0E000h
CRYPT32                          loaded at 779E0000h - 77A76000h
MSASN1                          loaded at 77A80000h - 77A92000h
IMAGEHLP                        loaded at 76C40000h - 76C68000h
wdmaud                          loaded at 72C70000h - 72C79000h
msacm32                          loaded at 72C60000h - 72C68000h
MSACM32                          loaded at 77BB0000h - 77BC5000h
midimap                          loaded at 77BA0000h - 77BA7000h
KsUser                          loaded at 73E30000h - 73E34000h
netapi32                        loaded at 6FEE0000h - 6FF34000h
SETUPAPI                        loaded at 778E0000h - 779D8000h
MLANG                            loaded at 75D30000h - 75DC1000h
Apphelp                          loaded at 77B50000h - 77B72000h
CLBCATQ                          loaded at 76F80000h - 76FFF000h
COMRes                          loaded at 77000000h - 770D4000h
shdocvw                          loaded at 77720000h - 7788F000h
CRYPTUI                          loaded at 76610000h - 76694000h
WININET                          loaded at 77AA0000h - 77B47000h
WLDAP32                          loaded at 76F10000h - 76F3D000h
urlmon                          loaded at 77170000h - 77210000h
Secur32                          loaded at 77FC0000h - 77FD1000h
cscui                            loaded at 765B0000h - 76606000h
CSCDLL                          loaded at 76590000h - 765AD000h
browseui                        loaded at 75F10000h - 7600D000h
LINKINFO                        loaded at 76920000h - 76928000h
ntshrui                          loaded at 76930000h - 76956000h
ATL                              loaded at 76AC0000h - 76AD1000h
USERENV                          loaded at 76960000h - 76A15000h

Stack dump analysis:
Address: 7C91EE18h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "strchr" (+00000117h)
Address: 7C927BF5h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlReAllocateHeap" (+000001F8h)
Address: 7C927BB0h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlReAllocateHeap" (+000001B3h)
Address: 00494730h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 7C9205C8h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlFreeHeap" (+0000018Bh)
Address: 7C920551h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlFreeHeap" (+00000114h)
Address: 7C92056Dh, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlFreeHeap" (+00000130h)
Address: 7C9205C8h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlFreeHeap" (+0000018Bh)
Address: 7C92056Dh, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlFreeHeap" (+00000130h)
Address: 004A8DEDh, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004613D1h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 01F54858h, location: "foo_input_std", loaded at 01EA0000h - 01FAB000h
Address: 7C921538h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "wcsncpy" (+00000AA9h)
Address: 7C921596h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "wcsncpy" (+00000B07h)
Address: 7C9206EBh, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 7C920551h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlFreeHeap" (+00000114h)
Address: 7C92056Dh, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlFreeHeap" (+00000130h)
Address: 7C920F46h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "wcsncpy" (+000004B7h)
Address: 7C920D5Ch, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "wcsncpy" (+000002CDh)
Address: 7C92056Dh, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlFreeHeap" (+00000130h)
Address: 0049115Ch, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 7C9205C8h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlFreeHeap" (+0000018Bh)
Address: 7C91EE18h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "strchr" (+00000117h)
Address: 7C927BB8h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlReAllocateHeap" (+000001BBh)
Address: 7C927BB0h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlReAllocateHeap" (+000001B3h)
Address: 781352F8h, location: "MSVCR80", loaded at 78130000h - 781CB000h
Symbol: "realloc" (+0000035Fh)
Address: 7C91EE18h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "strchr" (+00000117h)
Address: 7C920570h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlFreeHeap" (+00000133h)
Address: 04BC5A99h, location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h
Address: 78138B79h, location: "MSVCR80", loaded at 78130000h - 781CB000h
Symbol: "_dllonexit" (+0000009Dh)
Address: 78134C5Ah, location: "MSVCR80", loaded at 78130000h - 781CB000h
Symbol: "free" (+000000ECh)
Address: 04BC10A9h, location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h
Address: 77D1ACA4h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "wvsprintfW" (+000002D3h)
Address: 77D1AC00h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "wvsprintfW" (+0000022Fh)
Address: 04BC2B0Fh, location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h
Address: 00EE00FCh, location: "foo_custominfo", loaded at 00E60000h - 00EE6000h
Address: 04BF4F04h, location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h
Address: 77D40467h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 77D1B3B0h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DefWindowProcW" (+00000074h)
Address: 04BC2110h, location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h
Address: 04BF091Fh, location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h
Address: 77D188E0h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "GetWindowLongW" (+0000003Ah)
Address: 04BC2155h, location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h
Address: 04BC2110h, location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h
Address: 77D18734h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "GetDC" (+0000006Dh)
Address: 04BC2110h, location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h
Address: 04BC2110h, location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h
Address: 77D18816h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "GetDC" (+0000014Fh)
Address: 04BC2110h, location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h
Address: 77D40467h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 77D18830h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "GetDC" (+00000169h)
Address: 77D1B4C0h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DefWindowProcW" (+00000184h)
Address: 04BC2110h, location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h
Address: 77D1EBF3h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "CallNextHookEx" (+000000F0h)
Address: 77D40467h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 77D1B4D0h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DefWindowProcW" (+00000194h)
Address: 77D1B50Ch, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DefWindowProcW" (+000001D0h)
Address: 04BC2110h, location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h
Address: 77D1EAC1h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "EnableMenuItem" (+00000092h)
Address: 7C91EAE3h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "KiUserCallbackDispatcher" (+00000013h)
Address: 04BC2110h, location: "foo_uie_trackinfo_mod", loaded at 04BC0000h - 04BFF000h
Address: 77D1B473h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DefWindowProcW" (+00000137h)
Address: 77D194D2h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "GetWindowLongA" (+00000075h)
Address: 77D1B530h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DefWindowProcW" (+000001F4h)
Address: 77D1929Bh, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "PeekMessageW" (+00000000h)
Address: 77D19402h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "PeekMessageW" (+00000167h)
Address: 77D40467h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 77D189F0h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "GetWindowLongW" (+0000014Ah)
Address: 77D18A10h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DispatchMessageW" (+0000000Fh)
Address: 7758F9E4h, location: "ole32", loaded at 774A0000h - 775DD000h
Symbol: "CreateDataCache" (+000039D9h)
Address: 77D40467h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 77D1B788h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "GetParent" (+00000059h)
Address: 77D1BF64h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "SetCursor" (+0000000Ch)
Address: 77590090h, location: "ole32", loaded at 774A0000h - 775DD000h
Symbol: "CreateDataCache" (+00004085h)
Address: 77590484h, location: "ole32", loaded at 774A0000h - 775DD000h
Symbol: "DoDragDrop" (+00000093h)
Address: 04AB3677h, location: "foo_uie_albumlist", loaded at 04AA0000h - 04ADF000h
Address: 04AB456Fh, location: "foo_uie_albumlist", loaded at 04AA0000h - 04ADF000h
Address: 77D18B26h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "GetWindowThreadProcessId" (+000000A6h)
Address: 04AC9B98h, location: "foo_uie_albumlist", loaded at 04AA0000h - 04ADF000h
Address: 04AB456Fh, location: "foo_uie_albumlist", loaded at 04AA0000h - 04ADF000h
Address: 004DD100h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 04AC6F64h, location: "foo_uie_albumlist", loaded at 04AA0000h - 04ADF000h
Address: 04AB4593h, location: "foo_uie_albumlist", loaded at 04AA0000h - 04ADF000h
Address: 004DD100h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 77D18734h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "GetDC" (+0000006Dh)
Address: 04AB456Fh, location: "foo_uie_albumlist", loaded at 04AA0000h - 04ADF000h
Address: 04AB456Fh, location: "foo_uie_albumlist", loaded at 04AA0000h - 04ADF000h
Address: 77D18816h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "GetDC" (+0000014Fh)
Address: 04AB456Fh, location: "foo_uie_albumlist", loaded at 04AA0000h - 04ADF000h
Address: 77D40467h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 77D18830h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "GetDC" (+00000169h)
Address: 77D189CDh, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "GetWindowLongW" (+00000127h)
Address: 04AB456Fh, location: "foo_uie_albumlist", loaded at 04AA0000h - 04ADF000h
Address: 77D1EC03h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "CallNextHookEx" (+00000100h)
Address: 77D31B4Dh, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "AppendMenuA" (+0000006Eh)
Address: 77D40467h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 77D189F0h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "GetWindowLongW" (+0000014Ah)
Address: 77D18A10h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DispatchMessageW" (+0000000Fh)
Address: 77D2E097h, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "IsDialogMessageW" (+000000DBh)
Address: 0042EC53h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004BCBA0h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 0042ECBDh, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 77D1DAEAh, location: "USER32", loaded at 77D10000h - 77DA0000h
Symbol: "DestroyWindow" (+00000000h)
Address: 0042F80Ch, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004BE37Ch, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 7C91EE18h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "strchr" (+00000117h)
Address: 004C55F8h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004C55F8h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004C55DCh, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 7C921538h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "wcsncpy" (+00000AA9h)
Address: 7C920732h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C91EE18h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "strchr" (+00000117h)
Address: 7C921538h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "wcsncpy" (+00000AA9h)
Address: 7C921596h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "wcsncpy" (+00000B07h)
Address: 7C9206EBh, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 004E2158h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004B29D4h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 1000E250h, location: "shared", loaded at 10000000h - 1002A000h
Address: 1000396Ah, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uGetCallStackPath" (+00000B5Ah)
Address: 7C9206F0h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlAllocateHeap" (+0000011Ch)
Address: 7C91EE18h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "strchr" (+00000117h)
Address: 7C9206F0h, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlAllocateHeap" (+0000011Ch)
Address: 7C9206EBh, location: "ntdll", loaded at 7C910000h - 7C9C7000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 004915DDh, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004E21D8h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 0044CAC9h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 0040C5ADh, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 0040372Bh, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004943AAh, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004BE4D0h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 10002D97h, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uPrintCrashInfo_SetDumpPath" (+000000B7h)
Address: 004BE4D0h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004ACB62h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004BE4D0h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 0042F9F8h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004DE970h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 00494434h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 0048F90Ch, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 0048F906h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004B29E8h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004B10F0h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004E21D0h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 00494730h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004ACF4Dh, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 00493B94h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 00494730h, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 7C816D4Fh, location: "kernel32", loaded at 7C800000h - 7C904000h
Symbol: "RegisterWaitForInputIdle" (+00000049h)
Address: 7C8399F3h, location: "kernel32", loaded at 7C800000h - 7C904000h
Symbol: "FindAtomW" (+00000094h)
Address: 7C816D58h, location: "kernel32", loaded at 7C800000h - 7C904000h
Symbol: "RegisterWaitForInputIdle" (+00000052h)
Address: 00493BFDh, location: "foobar2000", loaded at 00400000h - 004F1000h
Address: 004E0049h, location: "foobar2000", loaded at 00400000h - 004F1000h

Version info:
foobar2000 v0.9.3 beta 4
UNICODE

Additional info:
Center Cut 1.0  (foo_centercut)
freedb tagger 0.5.2  (foo_freedb2)
Album List 3.2.0  (foo_albumlist)
CD Audio Decoder 2.1.1  (foo_cdda)
Audio CD Writer 2.0  (foo_burninate)
Album list panel 0.2.1 beta 4  (foo_uie_albumlist)
Pretty Popup 1.2.3  (foo_prettypop)
channeldividerF Ver 0.50  (foo_dsp_channeldividerF)
Track info panel mod 0.8  (foo_uie_trackinfo_mod)
Navigator 0.1  (foo_navigator)
Shell link resolver 1.1  (foo_lnk)
Columns UI 0.1.3 beta 1v5  (foo_ui_columns)
Channel Mixer 0.9.4  (foo_channel_mixer)
Default User Interface 0.9acc  (foo_ui_std)
Live show tagger 0.6.1  (foo_tradersfriend)
Quick Search Toolbar 2.8f  (foo_uie_quicksearch)
Components versions viewer 0.3  (foo_version)
Common services 0.1  (foo_common)
codepage converter 0.1  (foo_masstag_codepage)
ReplayGain Scanner 2.0.2  (foo_rgscan)
MSN Now Playing (alt) 2.4  (foo_msnalt)
On-Screen Display 1.52  (foo_osd)
Playlist Bind 3.0  (foo_playlist_bind)
Masstagger 1.6  (foo_masstag)
SoundTouch DSP 0.1  (foo_dsp_soundtouch)
Album Art Panel 0.2.1  (foo_uie_albumart)
Audioscrobbler 1.3.4  (foo_audioscrobbler)
Run Command 1.0 beta 1  (foo_runcmd)
Standard Input Array 1.0  (foo_input_std)
Convolver 0.3  (foo_convolve)
FLAC decoder 1.1.0  (foo_input_std)
Run services 0.3.2  (foo_run)
Skip silence 0.1  (foo_dsp_skip_silence)
Playlist tools 0.5.7  (foo_utils)
foo_custominfo 0.1.0  (foo_custominfo)
Shorten decoder 0.4.2a  (foo_input_shorten)
Converter 1.0.1  (foo_converter)
Database Search 1.4 beta 4  (foo_dbsearch)
Randomized playlist entry 1.2.3  (foo_random)
Playback Statistics 1.2  (foo_playcount)
Tabbed panel modifyed 0.2.1  (foo_uie_tabs)
Foo Shutdown 0.9  (foo_shutdown)
channeldividerF3 Ver 0.40  (foo_dsp_channeldividerF3)
ZIP/GZIP reader 1.0  (foo_unpack)
foosic music database 1.0 beta 9  (foo_sic)
ABX comparator 1.3  (foo_abx)
Crossover 0.38  (foo_dsp_xover)
RAR reader 1.1  (foo_unpack)
Standard DSP array 1.0  (foo_dsp_std)
Tube Sound 0.7  (foo_dsp_tube)

It's happened 2 times

I wasn't doing something special, the foobar windows was open.

I only have one trackinfo panel with only these special functions :$alignabs() and $font()

another one
Title: Track Info Panel with ability to change font
Post by: madorangepanda on 2006-08-03 18:33:40
Is there any chance something like the titleformat reference (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Titleformat_Reference) could be made but for this panel. Im having trouble understanding alot of the commands and there are no real clear/simple explanations of any.
Title: Track Info Panel with ability to change font
Post by: Ran Sagy on 2006-08-03 22:57:19
Not sure if i'll use it right now, But as a programmer i'm somewhat impressed. Good work, Definitly.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-03 23:29:33
Bug report

It's happened 2 times

I wasn't doing something special, the foobar windows was open.

I only have one trackinfo panel with only these special functions :$alignabs() and $font()


can you please post your entire formatting string.. thanks.
Title: Track Info Panel with ability to change font
Post by: unabatedshagie on 2006-08-04 16:00:44
Could people post examples of their trackinfo strings using the new fonts?
Title: Track Info Panel with ability to change font
Post by: FrDelefortrie on 2006-08-04 17:44:28
Code: [Select]
 
$puts(color3,079AE9)
//35B5F9)
//$rgb(255,180,5))
//0000C4)
//75B0C1)
//93AEB7)
//756fc8)
//0000d8)
//3418cd)
$puts(color2,b3a593)
$puts(color1,$rgb(214,217,228))
///7733ae)
//***************************************************
$get(color1)
Title
$tab()
$get(color3)
[$cut($if2(%title%,%_filename%),50)]
$char(10)
$get(color2)
Artist
$tab()
$if(
$or($not(%album artist%),$stricmp(%album artist%,artist),$stricmp(%album artist%,unknown)),
$get(color2)Unknown artist,
$cut($get(color1)$meta_sep(artist,', ',' & '),50)
)

//album

$char(10)
$get(color2)
Album
$tab()
$get(color1)
$cut($if(
%album%,
$if(
%disc%,
$caps2(%album%$get(color2)' ('$get(color1)Disc %disc%$get(color2)')'),
%album%
),
$get(color2)Unknown album),
50)

//date genre

$char(10)
$alignabs(right,bottom)
$font(Mangal,20,,)
$get(color2)
Date
$get(color1)'  /  '$get(color2)
Genre
$tab()
$get(color1)
$if2(%date%,$get(color2)Unknown date)
$get(color2)'  /  '$get(color1)
$if2(%genre%,$get(color2)Unknown genre)

//********************************
$char(10)
//$alignrel(20,30)
// Progress Bar
$if(
%_length_seconds%,
$puts(progress,$muldiv(%_time_elapsed_seconds%,8,%_length_seconds%))
$transition($repeat( ,$get(progress)),$get(color1),$get(color3))
$transition($repeat( ,$sub(8,$get(progress))),$get(color3),$get(color1)),
//'  '$pad_right($muldiv(%_time_elapsed_seconds%,6,%//_length_seconds%),3)$get(violet)' %'$rgb()
)

//time
$tab(2)
$if(
%_time_total%,
$get(color2)'+ '$get(color1)%_time_elapsed%
$get(color2)  '- '$get(color1)%_time_remaining%
$get(color2)'  / '$get(color1)%_time_total%,
)
$char(10)

// format
$get(color2)
'Format '
$tab()
$get(color1)

$replace(%codec%,
Vorbis,OGG Vorbis,
AAC,AAC$get(color2) '('$get(color1)Advance Audio Codec$get(color2)')'$get(color2),
WMA,WMA $get(color2) '('$get(color1)W'$' Media Audio$get(color2)')'$get(color1),
MP3,MP3$get(color2) '('$get(color1)MPEG Layer 3$get(color2)')'$get(color1),
)

// set quality-info (bitrate, etc.)
$get(color2)'  |  '$get(color1)
$if(
$strcmp($codec(),MP3),
$if2(%__extrainfo%,CBR)$get(color2)' - '$get(color1)$upper($abbr(%__mp3_stereo_mode%))$get(color2)'  |  '$get(color1),
$if(%__codec_profile%,%__codec_profile%$get(color2)'  |  '$get(color1))
)

[%bitrate%] $get(color2)kbit
//$tab(3)

//stats
$char(10)
$get(color2)
Statistics
$tab()
// -rating
$if(
%rating%,
$puts(progress,$muldiv(%rating%,5,5))
$transition($repeat(✽ ,$get(progress)),$get(color1),$get(color3))
$get(color2)$repeat(✽ ,$sub(5,$get(progress))),
//'  '$pad_right($muldiv(%_time_elapsed_seconds%,100,%//_length_seconds%),3)$get(violet)' %'$rgb(),
$get(color1)
Not rated $get(color3)y$get(color1)et
)
$get(color2)
'  |  '
//$tab()
$if($not($add(%play_counter%,%play_count%)),
$get(color3)
N$get(color1)ever played
,
$if($stricmp($add(%play_counter%,%play_count%),1),
$get(color1)Played$get(color3) o$get(color1)nce
$get(color2)'  |  '$get(color1)
$get(color2)Last$get(color1)
'  '
$get(color1)
$if(%last_played%,$get(color1)
$left([%last_played%],11)
$get(color2)'at'
$get(color1)$left($right([%last_played%],9),6),
[%play_date%]
$get(color2)at$get(color1)
[%play_time%])
,
$get(color1)
Played $get(color3)$add(%play_counter%,%play_count%) $get(color1)times
$get(color2)'  |  '$get(color1)
$get(color2)Last$get(color1)
'  '
$get(color1)

$left([%last_played%],11)
$get(color2)at
$get(color1)$left($right([%last_played%],9),6)
))

at the end (before i removed the component, it crashed on starting.

Thank you for all the work on this component.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-04 19:44:09
Could people post examples of their trackinfo strings using the new fonts?

(http://img372.imageshack.us/img372/6132/panel1gy5.png) (http://imageshack.us)
This one auto-switches between 3 font layouts based on the length of the song & album titles
Code: [Select]
$font(Tahoma,16,,)
$ifgreater($add($calcwidth(%artist%%title%%album%%date%),10),%_width%,$font(,10,shadow,),$font(,14,shadow,))
$align(left,)$rgb(233,233,233)$if(%artist%,%artist% $rgb(0,128,255)$char(47)$rgb(233,233,233) ,)$if2(%title%,)

$font(Tahoma,16,,)
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),,
$ifgreater($add($calcwidth(%artist%%title%%album%%date%),10),%_width%,$font(,10,shadow,)$align(right,bottom),$font(,14,shadow,)$align(right,))
$ifgreater($add($calcwidth(%artist%%title%%album%%date%),10),%_width%,$font(,7,shadow,),)
$rgb(180,180,180)$if2(%album%,)$if(%date%, $rgb(0,128,255)$char(40)$rgb(180,180,180)%date%$rgb(0,128,255)$char(41),)
)

(http://img372.imageshack.us/img372/7439/panel2rc2.png) (http://imageshack.us) (http://img421.imageshack.us/img421/6894/panel3ek6.png) (http://imageshack.us)
This one switches between two layouts, and the progressbar auto-adjusts to fit the panel.
Code: [Select]
$font(Tahoma,7,,)
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),

$font(,,shadow,233-233-233)Online Radio $rgb(0,128,255):$char(10)
$font(,,shadow,233-233-233)%path%
,

$align(left,)$if(%_isplaying%,$font(,,shadow,233-233-233)Progress $rgb(0,128,255)$char(40)$font(,,shadow,233-233-233)$div($mul(%_time_elapsed_seconds%,100),%_time_total_seconds%)'%'$rgb(0,128,255)$char(41)$font(,,shadow,233-233-233):)
$align(right,)$if(%playback_time%,$font(,,shadow,233-233-233)%playback_time%$if2($rgb(0,128,255) $char(47) $font(,,shadow,233-233-233)%length%,),)$char(10)

$align(center,bottom)$progress2(%playback_time_seconds%,%length_seconds%,$sub($div(%_width%,$calcwidth($char(9679))),1),$rgb(0,128,255)$char(9679),$rgb(0,0,202)$char(9679))
)

(http://img262.imageshack.us/img262/6768/panel4pg6.png) (http://imageshack.us)
The text is overlayed on the flower, the flower is not an image but more text
Code: [Select]
$align(center,)$font(,56,,140-186-236)$char(10048)$alignabs(left,top)
$font(Tahoma,7,,0-0-0)
$if(%isplaying%,

$if2(%codec% ,)$if2($char(40)$caps($info(encoding))$char(41),)$char(10)
$if2($if($info(mp3_stereo_mode),$caps($info(mp3_stereo_mode)),$info(channels)),)$char(10)
$if2(%bitrate%kbps ,)$if($strcmp($upper($info(codec)),MP3),$if2($info(extrainfo),CBR),)$char(10)
$if2($div(%samplerate%,1000)$ifequal($div($mod(%samplerate%,1000),100),0,,.$div($mod(%samplerate%,1000),100))KHz,)$char(10)
$char(10)
$get(info)$div(1411,%__bitrate%).$substr($muldiv(1411,100,%__bitrate%),2,3):1 '('$get(info)$muldiv(%__bitrate%,100,1411)$get(anno)'%)'$char(10)

,)

(http://img200.imageshack.us/img200/4156/panel5ol3.png) (http://imageshack.us)
This one I plan to link to the foobar forums if/when click events are added
Code: [Select]
$align(right,top)$font(Verdana,12,bold,)$rgb(128,128,128)2000
$align(right,bottom)$font(Tahoma,10,shadow,)$rgb(255,255,255)Foobar$repeat( ,3).
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-04 21:24:33
It occured to me that you could use a 1pt font $font(,1,,R-G-B) and whip up some interesting bitmaps, and then overlay your text on top of it.
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-04 21:29:35
nice examples, Yotsuya! i have managed to draw vertical lines of exact pixel size anywhere i want, but i would need some new functions from terrestrial to make it easier to use alongside flowing text.

It occured to me that you could use a 1pt font $font(,1,,R-G-B) and whip up some interesting bitmaps, and then overlay your text on top of it.
yes, that's true, but rather a little bit extreme-ish , like that pixel css font. i guess terrestrial will help us in this regard soon with real bitmaps ...
Title: Track Info Panel with ability to change font
Post by: Masahiko on 2006-08-05 11:19:38
with the code :
Code: [Select]
$align(center,)Tags$char(10)
$align(left,)Artiste: [%artist%][' ('%performer%')']$char(10)


The "Tags" should be centered on the first ligne and the "Artist" should be at left on the next line right ? but i have this :
Title: Track Info Panel with ability to change font
Post by: PonasX on 2006-08-05 12:21:37
Maybe

$align(center,)Tags$char(10)
$align(left,)Artiste:$char(10)[%artist%][' ('%performer%')']$char(10)

Does it help ?
Title: Track Info Panel with ability to change font
Post by: eisteh on 2006-08-05 12:32:17
$align(center,top)Tags$char(10)
$align(left,bottom)Artiste: [%artist%][' ('%performer%')']$char(10)

That should do it.
Title: Track Info Panel with ability to change font
Post by: rouge on 2006-08-05 13:28:09
Installing this component still converts all of my foo_uie_trackinfo panels to foo_uie_trackinfo_mod panels.  I'd like the old panels to stay the way they are and add the new ones later.  Also, in the layout configuration, there is no way to tell the difference between what panel you are adding.  The name should be changed to "infopanel mod" in the layout config.
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-08-05 13:55:18
Feature request: A checkbox option in the settings to enable a vertical scrollbar.  When displaying the comment tag in trackinfo panel it often requires a lot of real estate. The original trackinfo would let you use your mousewheel to scroll the panel up/down. I think a scrollbar would be better.

Is that a feasible request, yes, no?
Title: Track Info Panel with ability to change font
Post by: Andrew_TA on 2006-08-05 15:06:48
another feature request,

anyway i can get like, ctrl a to work in the insert code box?
either that or a button that selects all, and one that pastes...

thanks.
Title: Track Info Panel with ability to change font
Post by: Masahiko on 2006-08-05 17:33:22
Maybe

$align(center,)Tags$char(10)
$align(left,)Artiste:$char(10)[%artist%][' ('%performer%')']$char(10)

Does it help ?



$align(center,top)Tags$char(10)
$align(left,bottom)Artiste: [%artist%][' ('%performer%')']$char(10)

That should do it.


Thanks but they don't work too, i don't know why
Title: Track Info Panel with ability to change font
Post by: FrDelefortrie on 2006-08-05 17:41:21
from the read-me
Quote
Before the first $align function, text is displayed in "compatibility" mode.

so the following code:

%title%$tab()%artist%$char(10)

is internally converted to:

$alignrel(left,top)%title$alignrel(right,top)%artist%$alignset()

After you manually use the first $align function this automatic conversion is no longer performed.


so $char(10) seems to have no effect afterthe first $align()
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-05 20:19:26
$align(center,top)Tags$char(10)
$align(left,bottom)Artiste: [%artist%][' ('%performer%')']$char(10)

That should do it.


I think the problem is that the text anti-collision is kicking in. Try this:

Code: [Select]
$alignabs(center,top)Tags
$alignabs(left,bottom)Artiste: [%artist%][' ('%performer%')']
Title: Track Info Panel with ability to change font
Post by: Masahiko on 2006-08-06 10:50:31
I think the problem is that the text anti-collision is kicking in. Try this:

Code: [Select]
$alignabs(center,top)Tags
$alignabs(left,bottom)Artiste: [%artist%][' ('%performer%')']


No i find the trick, the right code is:
Quote
$align(center,top)Tags$alignset()
$alignrel(left,top)Artiste: [%artist%][' ('%performer%')']

so now i have what i want :
Title: Track Info Panel with ability to change font
Post by: Generalverdacht on 2006-08-07 17:38:54
im not quite sure what i missed but it only says "[unknown function]" for me, with the version form the first post.
Title: Track Info Panel with ability to change font
Post by: LL-Hell on 2006-08-07 18:51:36
here's what I managed to pull so far with the new spiffy trackinfo  loved the way you can place different texts one above the other...

here it is in ''follow cursor (http://www.planetnana.co.il/oronl/my_foo_follow.bmp)' mode,
and in 'now playing (http://www.planetnana.co.il/oronl/my_foo_playing.bmp)'.

in 'now playing' the green bars behind are animated with moving green lights

here's the code if anyone is interested:
Code: [Select]
$puts(off_col,$rgb(63,92,89))
$puts(s,~)
$puts(anim,
$if(%isplaying%,$select($add($mod(%playback_time_seconds%,5),1),
$rgb(102,179,105)$get(s)$rgb()$get(s)$get(s)$get(s)$get(s),
$rgb()$get(s)$rgb(102,179,105)$get(s)$rgb()$get(s)$get(s)$get(s),
$rgb()$get(s)$get(s)$rgb(102,179,105)$get(s)$rgb()$get(s)$get(s),
$rgb()$get(s)$get(s)$get(s)$rgb(102,179,105)$get(s)$rgb()$get(s),
$rgb()$get(s)$get(s)$get(s)$get(s)$rgb(102,179,105)$get(s)$rgb()),
$rgb()$get(s)$get(s)$get(s)$get(s)$get(s))
)
$get(off_col)
$font(,5, ,)
$alignabs(center,top)
$repeat($get(anim),20)$char(10)$char(10)
$repeat($get(anim),20)$char(10)$char(10)
$repeat($get(anim),20)$char(10)$char(10)
$repeat($get(anim),20)$char(10)$char(10)
$repeat($get(anim),20)$char(10)$char(10)
$repeat($get(anim),20)
$alignabs(center,top)
$font(wingdings 2,50, shadow , 52-52-62 )$char(98)
$font(wingdings 2,50, shadow , 52-52-62 )$char(99)
$font(wingdings 2,50, shadow , 52-52-62 )$char(100)
$font(wingdings 2,50, shadow , 52-52-62 )$char(97)
$alignabs(center,middle)
$font(Bangle,9,shadow-italic,102-120-240)
$if(%_trackinfo_notrack%,No track,Artist: %artist%$char(10)
Title: %title%$char(10)
Album: %album%)
$alignabs(right,bottom)
$if($strcmp(%_trackinfo_mode%,Now playing),
$font(webdings,22,shadow, 82-100-150 )$char(79),
$font(webdings,22,shadow, 82-100-150 )$char(78))

(sorry about the code bit being so big.. I don't know how to limit its size...) / fixed, thanks Squeller 
Title: Track Info Panel with ability to change font
Post by: Neural_Overload on 2006-08-09 03:39:35
Is there a way to terminate the alignment in a similar fashion to the $rgb() tag?
Also, it seems that double $char(10) tags no longer produce an empty line.

For example, this
Code: [Select]
Foo$char(10)$char(10)bar


Produces this
Code: [Select]
Foo
bar

Is it possible with this new version?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-09 05:36:29
The broken $char(10) appears to have something to do with alignments.

Try this:
Code: [Select]
$alignrel(left,)Foo$char(10)$char(10)bar


Produces this:
Quote
Foo

bar
Title: Track Info Panel with ability to change font
Post by: thuan on 2006-08-13 05:43:56
I have a crash by this plugin here's the crash log:
Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 015D22C4h
Access violation, operation: write, address: 00000000h
Call path:
entry=>app_mainloop
This is the first crash logged by this instance.
Code bytes (015D22C4h):
015D2284h:  66 8B 11 83 C1 02 66 85 D2 75 F5 2B CF D1 F9 74
015D2294h:  1A 8D BC 24 74 02 00 00 8B CE 2B FE 0F B7 11 66
015D22A4h:  89 14 0F 83 C1 02 66 85 D2 75 F1 8D 70 02 6A 2C
015D22B4h:  56 66 C7 00 2C 00 E8 F1 D0 02 00 8B CE 83 C4 08
015D22C4h:  66 C7 00 00 00 8D 79 02 8D 64 24 00 66 8B 11 83
015D22D4h:  C1 02 66 85 D2 75 F5 2B CF D1 F9 74 1E 8D BC 24
015D22E4h:  AC 01 00 00 8B CE 2B FE 8D 64 24 00 0F B7 11 66
015D22F4h:  89 14 0F 83 C1 02 66 85 D2 75 F1 8D 70 02 6A 2C
Stack (0012EEFCh):
0012EEDCh:  00000000 0000000C BBE7AB18 0012F460
0012EEECh:  00009C90 B2076B60 BF81642D B2076D38
0012EEFCh:  00E5E128 00E53BAC 0012F364 00E53B30
0012EF0Ch:  013C0D18 7C91056D 00E5E1F4 00350032
0012EF1Ch:  002D0035 00350032 002D0035 00350032
0012EF2Ch:  00000035 30303030 30303030 00E50000
0012EF3Ch:  30303030 00000014 00000016 01FFFFFF
0012EF4Ch:  000000B0 0012EF58 FFFFFFFF 0012EDA0
0012EF5Ch:  00E58AF9 0012EFB4 7C90EE18 7C917BB8
0012EF6Ch:  FFFFFFFF 00000118 7813525C 00E50000
0012EF7Ch:  00000001 00E53D48 78135293 7EBF4BBA
0012EF8Ch:  000000A4 0012F2E8 000000A4 003C0000
0012EF9Ch:  0000000A 00000000 0000000E 00000000
0012EFACh:  0012EF88 00010000 00000023 0012EF14
0012EFBCh:  06B6E88E 0012F000 7C90EE18 7C910570
0012EFCCh:  FFFFFFFF 7C91056D 00490FED 003C0000
0012EFDCh:  00000000 006C0067 0077006F 0000002D
0012EFECh:  0012F054 01F6DB80 00E58AF8 0012EFE4
0012EFFCh:  00000093 0012F078 004945C0 7E98BE28
0012F00Ch:  FFFFFFFE 0049100C 0040C783 0012F04C
Registers:
EAX: 00000000, EBX: 00E5E262, ECX: 00E5E27C, EDX: 0000002C
ESI: 00E5E27C, EDI: FF2D0F02, EBP: 032B01E0, ESP: 0012EEFC
Crash location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h

Loaded modules:
foobar2000                      loaded at 00400000h - 004F0000h
ntdll                            loaded at 7C900000h - 7C9B0000h
kernel32                        loaded at 7C800000h - 7C8F4000h
COMCTL32                        loaded at 773D0000h - 774D2000h
msvcrt                          loaded at 77C10000h - 77C68000h
ADVAPI32                        loaded at 77DD0000h - 77E6B000h
RPCRT4                          loaded at 77E70000h - 77F01000h
GDI32                            loaded at 77F10000h - 77F56000h
USER32                          loaded at 77D40000h - 77DD0000h
SHLWAPI                          loaded at 77F60000h - 77FD6000h
SHELL32                          loaded at 7C9C0000h - 7D1D4000h
ole32                            loaded at 774E0000h - 7761C000h
shared                          loaded at 10000000h - 1002A000h
comdlg32                        loaded at 763B0000h - 763F9000h
IMM32                            loaded at 76390000h - 763AD000h
LPK                              loaded at 629C0000h - 629C9000h
USP10                            loaded at 74D90000h - 74DFB000h
uxtheme                          loaded at 5AD70000h - 5ADA8000h
MSCTF                            loaded at 74720000h - 7476B000h
msctfime                        loaded at 755C0000h - 755EE000h
foo_abx                          loaded at 00A60000h - 00A93000h
foo_albumlist                    loaded at 00AB0000h - 00AF1000h
foo_autoplaylist                loaded at 00B20000h - 00B50000h
foo_burninate                    loaded at 00B70000h - 00BA7000h
VERSION                          loaded at 77C00000h - 77C08000h
foo_cdda                        loaded at 00BD0000h - 00C06000h
foo_channel_mixer                loaded at 00C30000h - 00C6A000h
foo_common                      loaded at 00C80000h - 00CBA000h
foo_converter                    loaded at 00CE0000h - 00D49000h
foo_dbsearch                    loaded at 00D70000h - 00DCC000h
foo_dsp_delta                    loaded at 00DF0000h - 00E0E000h
foo_dsp_skip_silence            loaded at 00E30000h - 00E3A000h
MSVCR80                          loaded at 78130000h - 781CB000h
foo_dsp_std                      loaded at 00E60000h - 00EA1000h
foo_freedb2                      loaded at 00ED0000h - 00F10000h
foo_input_monkey                loaded at 00F30000h - 00F79000h
foo_input_ofr                    loaded at 00FA0000h - 00FDC000h
OptimFROG                        loaded at 00FF0000h - 01022000h
foo_input_std                    loaded at 01050000h - 0115A000h
foo_input_tta                    loaded at 01180000h - 011AD000h
foo_masstag                      loaded at 011D0000h - 01220000h
foo_masstag_addons              loaded at 01240000h - 01249000h
foo_menu_addons                  loaded at 01260000h - 0126E000h
foo_navigator                    loaded at 01280000h - 012A1000h
foo_osd                          loaded at 012D0000h - 01305000h
foo_playlist_manager            loaded at 01330000h - 01377000h
foo_pqview                      loaded at 013A0000h - 013BC000h
foo_psf                          loaded at 013E0000h - 014C2000h
foo_rgscan                      loaded at 014F0000h - 01535000h
foo_uie_quicksearch              loaded at 01560000h - 015A8000h
foo_uie_trackinfo_mod            loaded at 015D0000h - 0160F000h
foo_ui_columns                  loaded at 01620000h - 016BB000h
foo_ui_std                      loaded at 016E0000h - 01737000h
foo_unpack                      loaded at 01760000h - 0178E000h
foo_utils                        loaded at 017B0000h - 017E9000h
foo_version                      loaded at 01810000h - 01836000h
dbghelp                          loaded at 59A60000h - 59B01000h
DSOUND                          loaded at 73F10000h - 73F6C000h
WINMM                            loaded at 76B40000h - 76B6D000h
wdmaud                          loaded at 72D20000h - 72D29000h
WINTRUST                        loaded at 76C30000h - 76C5E000h
CRYPT32                          loaded at 77A80000h - 77B14000h
MSASN1                          loaded at 77B20000h - 77B32000h
IMAGEHLP                        loaded at 76C90000h - 76CB8000h
msacm32                          loaded at 72D10000h - 72D18000h
MSACM32                          loaded at 77BE0000h - 77BF5000h
midimap                          loaded at 77BD0000h - 77BD7000h
KsUser                          loaded at 73EE0000h - 73EE4000h

Stack dump analysis:
Address: 7C91056Dh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+00000130h)
Address: 7C90EE18h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "strchr" (+00000117h)
Address: 7C917BB8h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlReAllocateHeap" (+000001BBh)
Address: 7813525Ch, location: "MSVCR80", loaded at 78130000h - 781CB000h
Symbol: "realloc" (+0000035Fh)
Address: 78135293h, location: "MSVCR80", loaded at 78130000h - 781CB000h
Symbol: "realloc" (+00000396h)
Address: 7C90EE18h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "strchr" (+00000117h)
Address: 7C910570h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+00000133h)
Address: 7C91056Dh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+00000130h)
Address: 00490FEDh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004945C0h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0049100Ch, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0040C783h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 7C910732h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 00403680h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 7C90EE18h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "strchr" (+00000117h)
Address: 7C911538h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "wcsncpy" (+00000AA9h)
Address: 7C911596h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "wcsncpy" (+00000B07h)
Address: 7C9106EBh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 0145E555h, location: "foo_psf", loaded at 013E0000h - 014C2000h
Address: 004A6FB4h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 01600668h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 0045BF42h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004614D1h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004A7861h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 00460B1Dh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 00460B2Ah, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 7C9105C8h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+0000018Bh)
Address: 7C910551h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+00000114h)
Address: 7C91056Dh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+00000130h)
Address: 004A4688h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0043793Fh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004DFA1Ch, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004DBE00h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004DFA1Ch, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004BEE9Ch, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004BEE84h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 7C90EE18h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "strchr" (+00000117h)
Address: 7C910570h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+00000133h)
Address: 7C91056Dh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+00000130h)
Address: 78134B9Fh, location: "MSVCR80", loaded at 78130000h - 781CB000h
Symbol: "free" (+000000CDh)
Address: 015D4B06h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D4AB4Eh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "wvsprintfW" (+000002D1h)
Address: 77D4AAAAh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "wvsprintfW" (+0000022Dh)
Address: 77D4A862h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "wsprintfW" (+00000000h)
Address: 015D2B0Fh, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 7475E548h, location: "MSCTF", loaded at 74720000h - 7476B000h
Address: 74730E78h, location: "MSCTF", loaded at 74720000h - 7476B000h
Symbol: "TF_UninitSystem" (+00000A0Fh)
Address: 01604F04h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 0160091Fh, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D488B8h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongW" (+0000003Ah)
Address: 015D2155h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D48709h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+00000072h)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D487EBh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+00000154h)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D70494h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetClipboardFormatNameA" (+0000014Fh)
Address: 77D48808h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+00000171h)
Address: 77D4B368h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DefWindowProcW" (+00000183h)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D56DDBh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "EndDialog" (+00000112h)
Address: 77D70494h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetClipboardFormatNameA" (+0000014Fh)
Address: 77D4B378h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DefWindowProcW" (+00000193h)
Address: 77D4B3B4h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DefWindowProcW" (+000001CFh)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D4ECE9h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "IsCharAlphaW" (+00000129h)
Address: 7C90EAE3h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "KiUserCallbackDispatcher" (+00000013h)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D4B31Bh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DefWindowProcW" (+00000136h)
Address: 77D494F7h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongA" (+0000007Bh)
Address: 77D4B3D8h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DefWindowProcW" (+000001F3h)
Address: 77D48564h, location: "USER32", loaded at 77D40000h - 77DD0000h
Address: 77D70494h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetClipboardFormatNameA" (+0000014Fh)
Address: 77D489C8h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongW" (+0000014Ah)
Address: 77D489E8h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DispatchMessageW" (+0000000Fh)
Address: 77D6EA3Bh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "CallMsgFilterW" (+00000213h)
Address: 00F0028Ch, location: "foo_freedb2", loaded at 00ED0000h - 00F10000h
Address: 77D5688Ah, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "LoadBitmapA" (+000000E2h)
Address: 01530332h, location: "foo_rgscan", loaded at 014F0000h - 01535000h
Address: 00F0028Ch, location: "foo_freedb2", loaded at 00ED0000h - 00F10000h
Address: 77D568CCh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DialogBoxIndirectParamAorW" (+00000036h)
Address: 015D0000h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 0160B0A0h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D6620h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D56741h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DialogBoxParamW" (+0000003Fh)
Address: 015D0000h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 0160B0A0h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D6620h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D1EF5h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D0000h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D6620h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 00FFFFFFh, location: "OptimFROG", loaded at 00FF0000h - 01022000h
Address: 01604F04h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 01530332h, location: "foo_rgscan", loaded at 014F0000h - 01535000h
Address: 01600888h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D451Eh, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 01604F94h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D48709h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+00000072h)
Address: 01600828h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D2878h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D48832h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+0000019Bh)
Address: 77D487FFh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+00000168h)
Address: 77D48AFEh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowThreadProcessId" (+000000A6h)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D488A9h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongW" (+0000002Bh)
Address: 77D488B2h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongW" (+00000034h)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 0160091Fh, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D2155h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D48709h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+00000072h)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D487EBh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+00000154h)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D70494h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetClipboardFormatNameA" (+0000014Fh)
Address: 77D48808h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+00000171h)
Address: 77D4D3BBh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetTopWindow" (+0000024Ch)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D484BCh, location: "USER32", loaded at 77D40000h - 77DD0000h
Address: 77D48564h, location: "USER32", loaded at 77D40000h - 77DD0000h
Address: 77D4B2A1h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DefWindowProcW" (+000000BCh)
Address: 77D4B23Ch, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DefWindowProcW" (+00000057h)
Address: 77D70494h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetClipboardFormatNameA" (+0000014Fh)
Address: 77D4B258h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DefWindowProcW" (+00000073h)
Address: 015D2E96h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D4ECC3h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "IsCharAlphaW" (+00000103h)
Address: 77D4ECD2h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "IsCharAlphaW" (+00000112h)
Address: 77D70494h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetClipboardFormatNameA" (+0000014Fh)
Address: 77D4ECD8h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "IsCharAlphaW" (+00000118h)
Address: 77D4ECD2h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "IsCharAlphaW" (+00000112h)
Address: 77D56DDBh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "EndDialog" (+00000112h)
Address: 77D56DEBh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "EndDialog" (+00000122h)
Address: 77D48AFEh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowThreadProcessId" (+000000A6h)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D488A9h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongW" (+0000002Bh)
Address: 77D488B2h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongW" (+00000034h)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 0160091Fh, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D2155h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D48709h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+00000072h)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D487EBh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+00000154h)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D70494h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetClipboardFormatNameA" (+0000014Fh)
Address: 77D70494h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetClipboardFormatNameA" (+0000014Fh)
Address: 77D48808h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+00000171h)
Address: 77D489A5h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongW" (+00000127h)
Address: 015D2110h, location: "foo_uie_trackinfo_mod", loaded at 015D0000h - 0160F000h
Address: 77D6E7CCh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "IsDialogMessageW" (+0000008Eh)
Address: 77D70494h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetClipboardFormatNameA" (+0000014Fh)
Address: 77D489C8h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongW" (+0000014Ah)
Address: 77D489E8h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DispatchMessageW" (+0000000Fh)
Address: 0042EBC5h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 77D4E666h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DestroyWindow" (+00000000h)
Address: 0042F6FBh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 7C910732h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 004BD3D8h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 7C90EE18h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "strchr" (+00000117h)
Address: 7C910738h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000164h)
Address: 004C459Ch, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004C459Ch, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004C4580h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 7C910732h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C910732h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C910738h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000164h)
Address: 7C910732h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C911596h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "wcsncpy" (+00000B07h)
Address: 7C9106EBh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 004E1158h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 7C917BB0h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlReAllocateHeap" (+000001B3h)
Address: 100032E1h, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uGetCallStackPath" (+000004D1h)
Address: 7C90EE18h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "strchr" (+00000117h)
Address: 7C90EE18h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "strchr" (+00000117h)
Address: 7C9106F0h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000011Ch)
Address: 7C9106EBh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 0049147Dh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004E11D8h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0044CAEBh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0040C796h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0040369Ah, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0049423Ah, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004BD530h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 10002D97h, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uPrintCrashInfo_SetDumpPath" (+000000B7h)
Address: 004BD530h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004AC7DAh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004BD530h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0042F8E7h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004DD970h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004942C4h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0048F7BCh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0048F7B6h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004B19E8h, location: "foobar2000", loaded at 00400000h - 004F0000h

Version info:
foobar2000 v0.9.3.1
UNICODE

Additional info:
freedb tagger 0.5.2  (foo_freedb2)
Standard Input Array 1.0  (foo_input_std)
Default User Interface 0.9acc  (foo_ui_std)
ZIP/GZIP reader 1.0  (foo_unpack)
Autoplaylist Manager 1.0  (foo_autoplaylist)
Components versions viewer 0.3  (foo_version)
Album List 3.2.0  (foo_albumlist)
Playlist tools 0.5.8  (foo_utils)
Masstagger Addons 0.2  (foo_masstag_addons)
Standard DSP array 1.0  (foo_dsp_std)
TTA Audio Decoder (unofficial) 2.4.2  (foo_input_tta)
Skip silence 0.1  (foo_dsp_skip_silence)
Channel Mixer 0.9.4  (foo_channel_mixer)
Quick Search Toolbar 2.8f  (foo_uie_quicksearch)
ABX comparator 1.3  (foo_abx)
FLAC decoder 1.1.0  (foo_input_std)
Converter 1.0.1  (foo_converter)
Database search 1.3.1 beta 11  (foo_dbsearch)
RAR reader 1.1  (foo_unpack)
OptimFROG Lossless/DualStream Decoder 1.21b  (foo_input_ofr)
Audio CD Writer 2.0.1  (foo_burninate)
Menu Addons 0.1  (foo_menu_addons)
Masstagger 1.6  (foo_masstag)
Common services 0.1  (foo_common)
CD Audio Decoder 2.1.1  (foo_cdda)
Monkey's Audio decoder 2.1.1  (foo_input_monkey)
Playlist Manager 1.0.2  (foo_playlist_manager)
On-Screen Display 1.52  (foo_osd)
ReplayGain Scanner 2.0.2  (foo_rgscan)
Track info panel mod 0.8  (foo_uie_trackinfo_mod)
LPCM <--> delta-PCM converter 0.1.1  (foo_dsp_delta)
Highly Experimental 2.0.5  (foo_psf)
Navigator 0.2  (foo_navigator)
Columns UI 0.1.3 beta 1v5  (foo_ui_columns)
It happened when I were trying to do the eclipsis code that Yotsuya provides
Code: [Select]
$left(
Place your existing code here.
,$div($sub(%_width%,$calcwidth($char(8230))),$calcwidth($char(34))))$char(8230)
I put my entire code in the "Place your existing code here." with some $align functions in it. Apply and it crash but not all the time though.
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-08-14 19:35:18
I have a problem. One of my track info panels keeps outputting a question mark for missing tags, though I've put the tag script between square brackets.

Code: [Select]
// Original Artist
[$font(,,nocleartype bold,)Original Version: $font(,,nocleartype,)%original artist%$char(10)


Output:
Original Arist: ?

This only happens when the $font function is in the square brackets.
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-14 21:15:37
Is this the full code your problem goes around ...??

Then you should use the second bracket ( "]" ) ...!!
Title: Track Info Panel with ability to change font
Post by: thuan on 2006-08-15 00:24:17
It seems putting tht $font function in the bracket cause that, try using $if.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-15 00:40:58
1) The code has no close bracket ']' as Sw!ng pointed out.
2) How did "Original Version:" become "Original Arist:"

Is there more code going on that we dont see? I am able to use $font() functions inside brackets without a problem.
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-08-15 02:47:01
1) The code has no close bracket ']' as Sw!ng pointed out.
2) How did "Original Version:" become "Original Arist:"

Is there more code going on that we dont see? I am able to use $font() functions inside brackets without a problem.


Opps. I typed out an example rather quickly. That's why the sloppy mess.


Anyway, say this is my script:

Code: [Select]
[$font(,,bold,)test: $font(,,nocleartype,)%WHATEVER%]

That will render as: test: ?

if the %WHATEVER% tag does not exist. Omit the $font function from the brackets and the script works as expected.

So either I am doing something wrong or the $font function doesn't like square brackets?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-15 03:21:15
In general I do not like using brackets. Both the brackets and $if2() function are a bit over sensitive IMO. I believe what is happening is that the $font() function is returning a value, therefore the brackets are being evaluated.. and since the %WHATEVER% is still in those brackets it gets rendered but since it has no value it's rendered as '?'.

I would suggest replacing your code with one of the following, depending on your needs. I have seen this sort of "false positive" in brackets and $if2() when functions other than $font() in other components:

$if(%WHATEVER%,$font(,,bold,)test: $font(,,nocleartype,)%whatever%,)

-or-

$font(,,bold,)test: $font(,,nocleartype,)[%WHATEVER%]
Title: Track Info Panel with ability to change font
Post by: gob on 2006-08-15 04:56:40
any plans for adding scrolling/elipsed test in this plugin? even though neither of these features work very well with the version im using v0.8, maybe they could be implemented better.
Title: Track Info Panel with ability to change font
Post by: rouge on 2006-08-15 09:14:36
If strings are going over the edge, I suggest using $cut().

$cut(%string%,n) where n is number of characters to truncate to. I think.

Someone also had a string that would scroll some info in a set space. It's somewhere in the old thread for foo_uie_trackinfo
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-15 10:51:29
w00t ?? realy ?? so I didnt need to work out my own Version of Scroll-'String'...?? 

-Well, its my first weird version with a few bugs, but u can try out and give me some Ideas ( solutions  ) or improvements. -'Cause I'm not realy good in this 'Coding'-Stuff ...

Here it is, so far:
Code: [Select]
$puts(text1
,$font(Arial Unicode MS,12,bolditalicglow-,255-255-255)[%artist%] 
)

$puts(Text2
,$font(Arial Unicode MS,12,bolditalicglow-,196-196-196)[%title%]
)

$puts(Space,
0)

$puts(RelPosition,
5)


$alignabs($puts(Space,0)$puts(Text,$get(Text1))

$puts(Overlength
,$max(0,$mul($div($sub($calcwidth($get(text)),%_width%),2),2))
)
$puts(Move
,$mul(2,$div($get(Overlength),10))
)
$puts(Counter2
,$mul($mod(%_time_elapsed_seconds%,$max(1,$mul(2,$div($get(Overlength),$get(Move))))),$get(Move)))

$mul(-2,$ifgreater($get(Counter2),$sub($get(Overlength),0)
,$sub($get(Overlength),$div($get(Counter2),2))
,$div($get(Counter2),2)
)),
$put(Position,$mul($div(%_height%,100),$get(RelPosition))),
$max(%_width%,$calcwidth($get(text))),
$calcheight($get(Text)),
center
,)
#SHADE#$get(text)

// ------------------------------------------------------------------------------------------------------------------------------------------------------

$alignabs($puts(Space,5)$puts(Text,$get(Text2))

$puts(Overlength
,$max(0,$mul($div($sub($calcwidth($get(text)),%_width%),2),2))
)
$puts(Move
,$mul(2,$div($get(Overlength),10))
)
$puts(Counter2
,$mul($mod(%_time_elapsed_seconds%,$max(1,$mul(2,$div($get(Overlength),$get(Move))))),$get(Move)))

$mul(-2,$ifgreater($get(Counter2),$sub($get(Overlength),0)
,$sub($get(Overlength),$div($get(Counter2),2))
,$div($get(Counter2),2)
)),
$put(Position,$add($get(Position),$calcheight($get(Text)),$get(Space)$puts(space,0))),
$max(%_width%,$calcwidth($get(text))),
$calcheight($get(Text)),
center
,)
#SHADE#$get(text)
Features:
-automatic detection of the current window-width
-different scroll-speed for every line, depending on its each text' length
-vertical Position relative to the displayheight (nearly in percent) for the first Line
-other lines follow allways the one that came before, no matter at wich relative (vert) position. (to add more Lines, copy the stuff under the "// --------------------- ")
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-15 16:35:56
BTW,
anyone of you guys have an explanation, why the codes from This Topic (http://www.hydrogenaudio.org/forums/index.php?showtopic=45669&hl=Russell777) dont work in this trackinfo-mod ...??
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-08-15 18:05:30
The only thing stopping me from using this wonderful component is it's unability to set the line spacing
and the worst is that it identifies itself as 'usual' trackinfo panel and converts all present trackinfo panel
into trackinfo_mod one.If there's any way of fixing it,it would be great 
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-15 18:14:31
you can set line spacing, Russell777, but only for the following line (not globally). this will imho, change in the final version ...
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-08-15 18:20:08
Do you meen by using the $alignabs() function? If so,it's not exactly the same.I'll better wait for the final
version to come out,thanks 
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-15 23:12:52
Yes, using the same name for the coponent is realy a big mess !!
(- Or is it to call "Replacing-Politics" ...??  )

The only thing stopping me from using this wonderful component is it's unability to set the line spacing ...
Is THIS ment as the answer for my question about your codes ?? 
-Then I dont understand why and how your code depends on the line spacing ... 
(cause it even works in the "LyricsPanel" ...)

But I can tell you how to set the linespacing for each single (!!) line in this component:
- Its the command #LINEHEIGHT,10# , and it becomes effective in the following line, as mazy allready mentioned ...!!

And if you want it to NEARLY act in known fashion with the $tab()-stuff,
the 'old'

Line1_L$tab()Line1_C$tab()Line1_R$char(10)
$tab()Line2_C$tab()Line2_R$char(10)

Is to convert into:

$alignrel(left,top)Line1_L$alignrel(center,top)Line1_C$alignrel(right,top)Line1_R$alignset()
$alignrel(left,top)$alignrel(center,top)Line2_C$alignrel(right,top)Line2_R#LINHEIGHT,20#$alignset()
$alignrel(left,top)Line3_L$alignrel(center,top)Line3_C$alignset()

(I hope you see what I mean ...)

Well, I thought that would be all to know to convert 'old' codes...
... until your progress-bar-variants crossed my way 
-So I dont know where else the difference is, relating on your code (http://www.hydrogenaudio.org/forums/index.php?showtopic=45669&hl=Russell777) ...!!

My goal is, to get such progress-bars as background for the trackinfo ...   
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-08-15 23:28:10
2 Sw!ng:
Well if you want you'll get it just tell me what version you have on mind 
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-16 00:52:43
sorry guys... things are a bit on hold for a moment while my development machine is down and I (and it seems like half the planet) am waiting for a conroe

I will try to fix the crashing bug asap
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-16 01:18:27
@ russell777
2.1 would be nice ... !!
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-08-16 03:47:12
what would really be great is to have a save/load type menu system which saves files to the foobar folder or so that people can share their configs and back them up as well.. also when redesiging the layout they can then simply choose the layout they had for each track info panel and load it back up
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-08-16 06:48:31
I'd wholeheartly migrate to this component, if:

1) there would be an ellipsize mode

And I suggest the following improvements, if possible...

2) Add a variable for displaying the playlist name, current index, number of entries.
3) Maybe a variable for the next track? foo_osd for 0.83 had this.
4) Please add some quick infos about the component to the gui. e.g. like uie_quicksearch does, it has a help tab.
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-16 13:20:29
I'd wholeheartly migrate to this component, if:

1) there would be an ellipsize mode

You could use $alignabs(...,...)

Even Though,$alignabs needs an update, in my pov:
-It should have NO INFLUENCE TO "$alignset()" and be autonom even with $char(10)s in it ...!!
(Otherwise the $alignset() is not very useful, since its disturbed by the "Background" (created with $alignabs)

And when the work on this goes on, I have a few minnor suggestions, too:
-#SHADE#-Effect should be on lower level and/or to be set with colors
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-16 20:32:43
guys, all these things will be implemented or re-implemented in better way than they are now - things like #SHADE#, glow and other missing features. however, from how it works and what it does, one can easily assume that we are going for some interesting things in the future - i mean the layout mechanism is much more flexible and it could allow outputting images directly to the text flow etc. we are going to see alpha-blending text, rectangles and maybe even images
Title: Track Info Panel with ability to change font
Post by: eisteh on 2006-08-16 20:44:41
Indeed this plugin has a lot of cool features that allow you to create a lot of cool stuff right now, though im too lazy to use, or better learn how to use this new formatting strings. But as far as i've seen, you guys are doing some very very good things with it (the vertical progress bar is nice).

Yeah this plugin rocks ..
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-17 02:57:08
I've uploaded a new version with preliminary support for images, and a couple of changes/bugfixes.

FrDelefortrie & thuan >> does it crash when playing a particular file or all the time?
Title: Track Info Panel with ability to change font
Post by: thuan on 2006-08-17 03:35:41
Don't know what to say it's kind of random.
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-17 09:59:22
i would like to notice others that this new version doesn't take over the old track info (as requested by many) so you would lose your panels. i suggest putting back the old track info panel (not the mod) ...
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-17 10:22:54
amazing work, terrestrial. it seems we have to specify alignment after $imageabs - like $align(,) - for the following text to show. another glitch is that it seems to update less often than text - i.e. not always when changing tracks, when the image's path may change due to different context, time etc. changing position works, but the image wouldn't change. example: $imageabs($mod(%playback_time_seconds%,12),12,data\misc images\rate%rating%.png,flow)$align(,)$repeat(word ,40). you can get the rating images for testing here (http://mazy.johanka.cz/temp/data.rar).

request: i use custom info for rating my songs (so it's not real tags). everything works fine, however trackinfo panel picks changes in these "virtual tags" only once in a second, not the moment they change (like colums_ui's playlist for example, which reacts instantly). could you do something about it?
Title: Track Info Panel with ability to change font
Post by: Hedin on 2006-08-17 13:23:44
Is it possible, besides new layout features, made some additional changes:
- add support for %_system_*% variables (time and date) to make natural language timestamps (http://www.hydrogenaudio.org/forums/index.php?showtopic=45282) working;
- fix detection of track under cursor after command "View\Columns playlist\Activate now playing" used and playlist switching occurred?
Title: Track Info Panel with ability to change font
Post by: unabatedshagie on 2006-08-17 14:21:31
@mazy, could you post your config for the trackinfo panel?

I'm interested to see what you have came up with.
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-08-17 15:53:35
I use this trackinfo_mod now. But: With the latest version, I lost my config. I'll have to restore it from a backup.
Please add some details about file formats... A simple 256 color bmp image doesn't work here.
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-17 17:47:45
unabatedshagie - i'm not really using it in my main foobar, only testing it for time being. my testing foobar looks like this right now:

(http://mazy.johanka.cz/my_pics/temp/foobar/trackinfo-5.png)

Squeller - you can put the old track info panel or the mod (and rename it's dll) back and recover these settings. the new version (as mentioned in the readme and in my previous post) is distinct from the old one and doesn't take over its settings.

as for images - well 32-bit pngs with alpha channel work here, i think that bmps with 256-color palette should work too. imho what you're experiencing is that refresh / update problem i've mentioned. try using the formatting snippet i've posted above.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-17 19:58:20
ok, fixed the image updating problem.

Only pngs are supported.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-17 20:23:00
Quote
request: i use custom info for rating my songs (so it's not real tags). everything works fine, however trackinfo panel picks changes in these "virtual tags" only once in a second, not the moment they change (like colums_ui's playlist for example, which reacts instantly). could you do something about it?

probably some change notification I'm missing. I will look into it. fixed for the next version.

Quote
- add support for %_system_*% variables (time and date) to make natural language timestamps working;

are _system_ variables added by columns ui? they don't apprear in the titleformat reference....

Quote
- fix detection of track under cursor after command "View\Columns playlist\Activate now playing" used and playlist switching occurred?

fixed for the next version.

Quote
I use this trackinfo_mod now. But: With the latest version, I lost my config. I'll have to restore it from a backup.
Please add some details about file formats... A simple 256 color bmp image doesn't work here.

new version is separated from the original so you can run both at the same time, so your settings will not be migrated over.

only pngs are currently supported.
Title: Track Info Panel with ability to change font
Post by: Hedin on 2006-08-17 20:50:35
Quote
- add support for %_system_*% variables (time and date) to make natural language timestamps working;


are _system_ variables added by columns ui? they don't apprear in the titleformat reference....

I doesn't really know where they come from, but probably yes. Is it very difficult to implement similar variables?

Quote
- fix detection of track under cursor after command "View\Columns playlist\Activate now playing" used and playlist switching occurred?


fixed for the next version.

when it wil be released?
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-17 21:18:50
sry
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-08-17 21:20:46
Don't get me wrong, I enjoy and use this component, but isn't this just reinventing the wheel? Why hasn't someone made a component with IE control like Miranda's IEView (http://addons.miranda-im.org/details.php?action=viewfile&id=1788) that parses HTML code and still maintains a very low memory footprint. It would accomplish everything this plugin does visually and beyond [maybe with the exception of refreshing every second], and it would be less complicated use.
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-17 21:48:02
metal_termite, miranda's ieview is quite a resource hug (like many visual miranda's plugins). foosion is working on html panel using very nice and window-less browser component.

as for trackinfo panel, i still see many uses for it, as it could add features not possible in html panel, it may be faster etc. you are right though that with all these new things track info panel is going to look like something with similar possibilities like html panel.

terrestrial, maybe you could switch to gdi+, as it would be nice to be able to resize images in the future, it supports gifs, bmps, pngs and other formats, has antialiasing / blending support etc. what do you think?
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-17 23:35:00
Mmh, this code ...
Code: [Select]
$imageabs($mod(%playback_time_seconds%,12),12,data\misc images\rate%rating%.png,flow)$align(,)$repeat(word ,40)
... No Pic ...!!
-Even though I downloaded mazy's pngs and put the data folder in Foobar's AND in Component's directory, to be on the save side ...!!
Canging the code, settig x,y manualy, and/ or naming the png by its concrete name (e.g. "rate2.png" ) take no effect ... All I see is "word", 40 times !! 

And:
Dont wanna trap your nerves, but
Even Though,$alignabs needs an update, in my pov:
-It should have NO INFLUENCE TO "$alignset()" and be autonom even with $char(10)s in it ...!!
(Otherwise the $alignset() is not very useful, since its disturbed by the "Background" (created with $alignabs)
Is this allready planed or a is it a stupid Idea ...??
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-17 23:44:13
Sw!ng, are you using the latest version? there are few things critical to images improved. other than that, there could be not enough place. have you tried it while playing track with %rating%?

others: i've realized that with the new support for images you can do pseudoskins with multiple layers - background, reflection etc. quick test of concept:



terrestrial: it seems there's something wrong going on with $font. i tried to use $font(Wingdings,20,21-60-98) in the example above, but i couldn't get it to show the star then - probably because of codepages or something (i.e. when i used the character or $char for the star - obtained from microsoft's character map utility - i got nothing).
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-18 00:05:07
Quote
when it wil be released?


I actually ended up uploading it after that last post.

Quote
Don't get me wrong, I enjoy and use this component, but isn't this just reinventing the wheel?


a little bit  I just happened to have the majority of this code already laying around, so it wasn't too much work to add it in. A HTML component could probably do a lot more fancier cost, but I think the overhead would be much more significant as well.

Quote
terrestrial, maybe you could switch to gdi+, as it would be nice to be able to resize images in the future, it supports gifs, bmps, pngs and other formats, has antialiasing / blending support etc. what do you think?


I can certainly use gdi+ in addition to gdi to get additional features, but I don't think there is any need to change over gdi stuff to gdi+ as I don't think gdi+ offers any advantages in the basic text stuff I already use.

Quote
Even though I downloaded mazy's pngs and put the data folder in Foobar's AND in Component's directory, to be on the save side ...!!
Canging the code, settig x,y manualy, and/ or naming the png by its concrete name (e.g. "rate2.png" ) take no effect ... All I see is "word", 40 times !! blink.gif


make sure you're running the latest version.

Quote
Even Though,$alignabs needs an update, in my pov:
-It should have NO INFLUENCE TO "$alignset()" and be autonom even with $char(10)s in it ...!!
(Otherwise the $alignset() is not very useful, since its disturbed by the "Background" (created with $alignabs)


$alignabs should already be able to handle newlines..

I envisioned using the $alignrel and $alignset at the beginning, and $alignabs towards the end, and not switching between the modes too much which is why $alignabs affects $alignset. I will see if I can change it to ignore it though

Quote
terrestrial: it seems there's something wrong going on with $font. i tried to use $font(Wingdings,20,21-60-98) in the example above, but i couldn't get it to show the star then - probably because of codepages or something (i.e. when i used the character or $char for the star - obtained from microsoft's character map utility - i got nothing).


it looks like you're missing a couple of commas for the $font
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-18 00:09:42
it looks like you're missing a couple of commas for the $font
you're right, but i had it as it should be in the panel: $font(Wingdings,20,,21-60-98).
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-18 00:18:54
strange... maybe there is some sort of interaction with the other code. can you try just:

$font(Wingdings,20,,21-60-98)$char(171)

and see if it works?
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-18 00:23:53
i'm puzzled. it seems to work now, probably some error on my side, sorry

[edit:] but this doesn't work - star character with code 234 for the Wingdings 2 font: $font(Wingdings 2,20,,)$char(234) (and i can't even make it work by setting this font in the configuration dialog). i did some tests and from #128 up it doesn't work for almost each other one (129 works, 130 not, 131 works ...). i'm using czech locale ...
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-18 00:39:27
Code: [Select]
$imageabs(12,12,data\misc images\rate3.png,flow)$align(,)$repeat(word ,%rating%) / 
$imageabs(12,22,E:\Programme\foobar2000\components\data\misc images\rate3.png,flow)$align(,)$repeat(word ,%rating%)
(http://img139.imageshack.us/img139/5272/shot00014zr8.th.jpg) (http://img139.imageshack.us/my.php?image=shot00014zr8.jpg)
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-18 00:44:38
try only $imageabs(12,12,data\misc images\rate3.png,)
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-18 00:55:25
Code: [Select]
$imageabs(12,12,data\misc images\rate3.png,)
while "Data" is in  folder "Foobar2000" (together with exe) ...(http://img219.imageshack.us/img219/1365/shot00014wu7.th.jpg) (http://img219.imageshack.us/my.php?image=shot00014wu7.jpg)
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-18 00:59:55
is foobar installed to your local hard drive or are you running it over a network?

I will look into the font problem. I use wide chars internally, and there might be a bug when converting from utf8 to wide chars....
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-18 01:20:28
not in a network !!
(I wanna have nice pix, too ...)
Title: Track Info Panel with ability to change font
Post by: Hedin on 2006-08-18 06:26:58
Quote
when it wil be released?


I actually ended up uploading it after that last post.


Sorry
I was confused because of
Quote
Latest Version: 08-01-06 1:30

This post has been edited by terrestrial: Aug 1 2006, 10:37

Title: Track Info Panel with ability to change font
Post by: eisteh on 2006-08-18 14:04:57
The last upload time is incorrect, terrestrial uploaded a new on the 14th or 16th of august, dont remember, but it was only some days ago.
Title: Track Info Panel with ability to change font
Post by: Strictly4me on 2006-08-20 09:58:13
Questions:

1.) If i change from old trackinfo to this one, i will loose my existing settings i made with it?
2.) After i change back to old trackinfo, i will get my settings back again?

((((( Strictly4me )))))
Title: Track Info Panel with ability to change font
Post by: unabatedshagie on 2006-08-20 10:25:19
I believe you can use the two at the same time if you want, AFAIK they both use completely different configs.
Title: Track Info Panel with ability to change font
Post by: Strictly4me on 2006-08-20 10:31:11
Ah, ok! I will give it a try ... thanks!

((((( Strictly4me )))))
Title: Track Info Panel with ability to change font
Post by: Strictly4me on 2006-08-20 12:28:59

My window for test:

(http://home.arcor.de/strictly2me//Foo_Glasswindow.png)

How about possibility images to fit in panel, like in albumart? Would be great! - Not?

((((( Strictly4me )))))
Title: Track Info Panel with ability to change font
Post by: eisteh on 2006-08-20 15:03:02
this looks so awesome!!

Your a genius strictly4me
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-08-20 16:02:51
I can't get any images to show up. I am using this code:
$imageabs(12,12,images\title-anukis.png,)
Where the images directory is in the foobar folder.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-08-20 16:47:30


My window for test:

(http://home.arcor.de/strictly2me//Foo_Glasswindow.png)

How about possibility images to fit in panel, like in albumart? Would be great! - Not?

((((( Strictly4me )))))


Could you please share the code of the glass window you've made?
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-08-20 17:31:55
I can't get any images to show up. I am using this code:
$imageabs(12,12,images\title-anukis.png,)
Where the images directory is in the foobar folder.

Same here.Whats the problem?
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-20 17:32:38
If you have problems getting images to work, please try this (http://users.bowie-cass.com/singa/foo_uie_trackinfo_mod_dbg.zip) version, and take a look at the console for information.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-08-20 17:47:03
If you have problems getting images to work, please try this (http://users.bowie-cass.com/singa/foo_uie_trackinfo_mod_dbg.zip) version, and take a look at the console for information.


Here's my code:
Code: [Select]
$imageabs(12,12,images\button-small.png,)



Here's what i get in the console:
Code: [Select]
[19:41:31] Error loading: E:\Documents and Settings\Russel\Application Data\foobar2000\images\button-small.png
[19:41:31] Startup time : 0:00.526118
[19:42:06] Error loading: E:\Documents and Settings\Russel\Application Data\foobar2000\images\button-small.png


The png image is located in the foobar2000\images\ ,i don't know why the component trying to find it
in the "application data" folder.Or am i doing something wrong?
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-20 18:00:14
It uses the profile directory, so if you have "Enable User Profile Support" in preferences the base directory will by your profile directory instead of the foobar install directory.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-08-20 18:07:45
It uses the profile directory, so if you have "Enable User Profile Support" in preferences the base directory will by your profile directory instead of the foobar install directory.

Thank you for clearing things out,and for this component ofcourse 
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-08-20 18:10:03
Ok, I moved the images directory into "C:\Documents and Settings\User Name\Application Data\foobar2000\" and everything works now after closing and reopening Foobar.
Is there a way to align images in the top right corner?
Title: Track Info Panel with ability to change font
Post by: Bachi-Bouzouk on 2006-08-21 01:53:24
Hi everybody, would someone create a page on the wiki to detail every function of this panel or did I miss anything about a list for functions available with this plugin?

For the moment, a lot of things are already spread in the six first pages and as this topic is likely to have dozens of pages, creating a page on the wiki would be nice .

When I will have some time, I will try to see how this plugin works, but I have already seen very lovely things.
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-08-21 08:00:22
For the moment, a lot of things are already spread in the six first pages and as this topic is likely to have dozens of pages, creating a page on the wiki would be nice .
...and there are several trackinfo panel threads and already 4 trackinfo panels as far as I know. I'd appreciate a help tab as in foo_uie_quicksearch.
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-08-21 09:41:47
Most of the commands are described in the read me file available with the mod. I am working on a wiki page but I need to get editing rights first

Also:
Quote
Does anyone know how to make commas in album names work? I use $imageabs(0,0,\images\covers\%album%.png,) to find the cover, so obviously if there's a comma in the name of the album then it cuts off early and looks for a non-existant image with the cut-off name and doesn't find it. Also, colons create a 0kb file called "stuff before colon" and then there's no cover image, but I think that might be the album downloader program.
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-08-21 11:49:30
Most of the commands are described in the read me file available with the mod. I am working on a wiki page but I need to get editing rights first
It was lacking an information of which image file formats are supported, for example. BTW I think having all necessary information in place would be more helpful. Foobar users waste a lot of time searching for detailed information in forums, wiki pages... ...
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-08-21 11:52:26
It can be quite painful.
Title: Track Info Panel with ability to change font
Post by: Strictly4me on 2006-08-21 13:57:47
Foobar with glasswindow

Normal view:
(http://img244.imageshack.us/img244/9271/nolayertd6.png)

View with one layer (glass.png) for glasseffect:
(http://img81.imageshack.us/img81/2286/layerglassey5.png)

The same, but with one layer more (light.png) for lightingeffect:
(http://img84.imageshack.us/img84/7200/layerlightgb5.png)

Layers has to be in following order:

1.) Text (valuecode)
2.) Layer (glass.png)
3.) Layer (light.png)


By example for left window in third screenshot:

1.) Text (valuecode)
Code: [Select]
$alignabs(center,middle)
$transition($if(%_time_remaining%,%_time_remaining%,0:00),$rgb(255,255,255),$rgb(100,100,100))
$align(right,middle)
$font(Arial Unicode MS,16,bold,255-0-0)▼

2.) Layer (glass.png)
Code: [Select]
$imageabs(-8,-10,image_back\glass.png,)

3.) Layer (light.png)
Code: [Select]
$imageabs(-8,-12,image_back\light.png,)

Enjoy! Download Layers (http://home.arcor.de/strictly2me//layer.zip)
Completely screenshot with new layers (http://img245.imageshack.us/img245/9320/foowithlayersru7.png)

((((( Strictly4me )))))
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-08-21 18:01:43
Wiki Page (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29)
Title: Track Info Panel with ability to change font
Post by: Generalverdacht on 2006-08-21 18:28:56
@strictly4me, you missed something out in your code, it shows only the remaining time.
Title: Track Info Panel with ability to change font
Post by: Schinkentoni on 2006-08-21 18:45:17
The Wiki page says .NET is required, although you just need the C++ runtime components. Link (http://www.microsoft.com/downloads/details.aspx?familyid=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&displaylang=en)
Title: Track Info Panel with ability to change font
Post by: Strictly4me on 2006-08-21 20:46:46
@strictly4me, you missed something out in your code, it shows only the remaining time.

Yes because:
Quote
By example for left window in third screenshot:

For the right window, i think you will find by yourself. - Not?

EDIT: Ok,here the codes for right window:

1.) Text (valuecode)
Code: [Select]
$alignabs(center,middle)
$transition($if(%_time_elapsed%,%_time_elapsed%,0:00),$rgb(255,255,255),$rgb(100,100,100))
$align(right,middle)
$font(Arial Unicode MS,16,bold,255-0-0)?

2.) Layer (glass.png)
Code: [Select]
$imageabs(-8,-10,image_back\glass.png,)

3.) Layer (light.png)
Code: [Select]
$imageabs(-8,-12,image_back\light.png,)


((((( Strictly4me )))))
Title: Track Info Panel with ability to change font
Post by: carmenm on 2006-08-21 21:53:57
Is it possible to add an image without the need for it to be in the image folder of foobar? That way i could include the cover of the music i am listening to into track info panel mod. It would permit some extrem skins ....
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-08-21 22:27:12
At the moment the images have to be relative to the foobar directory.
Title: Track Info Panel with ability to change font
Post by: Strictly4me on 2006-08-21 22:29:23
You can put your image everywhere you want, but trackinfo can't change the images by itself, i think. Better way to make it, using album art panel!

EDIT:
Quote
At the moment the images have to be relative to the foobar directory.

Ok, i didn't know that!

((((( Strictly4me )))))
Title: Track Info Panel with ability to change font
Post by: carmenm on 2006-08-21 22:37:21
You can put your image everywhere you want, but trackinfo can't change the images by itself, i think. Better way to make it, using album art panel!

EDIT:
Quote
At the moment the images have to be relative to the foobar directory.

Ok, i didn't know that!

((((( Strictly4me )))))

Thanks to both of you for the reply, i ll stick to album art panel
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-22 01:43:40
Wiki Page (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29)
Great "Sub-"Project ...!!
(If I only had have such a wikki by the hand ...earlier ...)

Are you gonna add Info about:
$font / Options :
- "glow-" and "shadow" and a note, that all of them can be combined (e.g. "bolditalicunderlineglow-" )

$alignabs :
- A note, that x and y also can be negative

$imageabs :
- A note, that only pngs are supported, yet.
- A note that following text has to be "$align"ed
- In addition to your existing note about the image-path, a concrete example (e.g.  $imageabs(0,0,your folder\your subfolder\your_pic.png,) )

General:
- #SHADE# and #LINEHEIGHT,n#
- $alignset() and $alignrel(,)

...??
Title: Track Info Panel with ability to change font
Post by: unabatedshagie on 2006-08-22 05:32:19
Wiki Page (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29)
Great "Sub-"Project ...!!
(If I only had have such a wikki by the hand ...earlier ...)

You gonna add Info about:
$font / Options :
- "glow-" and "shadow" and a note, that all of them can be combined (e.g. "bolditalicunderlineglow-" )

$alignabs :
- A note, that x and y also can be negative

$imageabs :
- A note, that only pngs are supported, yet.
- A note that following text has to be "$align"ed
- In addition to your existing note about the image-path, a concrete example (e.g.  $imageabs(0,0,your folder\your subfolder\your_pic.png,) )

General:
- #SHADE# and #LINEHEIGHT,n#
- $alignset() and $alignrel(,)

...??
Why don't you add them yourself? Thats the beauty of a wiki
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-22 09:50:15
Why don't you add them yourself? ...
... Something you can think about !! 
1. I dont think my english is that well and so I m unsure in using it ...!!
2. Nevetheless, I tried. -But it seems to be locked !!

But thanks for your interest ...!!
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-08-22 11:02:48
I'll add the details today.
Title: Track Info Panel with ability to change font
Post by: Hedin on 2006-08-22 11:03:55
- add support for %_system_*% variables (time and date) to make natural language timestamps (http://www.hydrogenaudio.org/forums/index.php?showtopic=45282) working

This suggestion is obsolete, because of foo_cwb_hooks (http://www.hydrogenaudio.org/forums/index.php?showtopic=43606).
Title: Track Info Panel with ability to change font
Post by: Tomacco_Boy on 2006-08-22 11:43:57
Is it possible to use an external source for fonts than the ones on your system ?
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-08-22 12:15:49
- #SHADE# and #LINEHEIGHT,n#
- $alignset() and $alignrel(,)

What do these do specifically? How are they applied etc.?

*I wish there was a comprehensive wiki page for each component*
Title: Track Info Panel with ability to change font
Post by: Anas on 2006-08-22 13:22:36
Very nice plugin you made there, but it would be nice if one could also resize the image. For example like this: $imageabs(0,0,test.png,100,100) where the last two parameters are width and height.
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-08-22 13:28:56
Very nice plugin you made there, but it would be nice if one could also resize the image. For example like this: $imageabs(0,0,test.png,100,100) where the last two parameters are width and height.

Especially if you could use % width of panel so that an image always covers 100% of the panel for instance.
Title: Track Info Panel with ability to change font
Post by: beto on 2006-08-22 15:13:13
Why don't you add them yourself? ...
... Something you can think about !! 
1. I dont think my english is that well and so I m unsure in using it ...!!
2. Nevetheless, I tried. -But it seems to be locked !!

But thanks for your interest ...!!

1. I wouldn't worry about the english. Even if you add something wrong someone with better english skills can correct it later. The important thing is to add information. 
2. See the section "to contribute content" in the wiki's main page (http://wiki.hydrogenaudio.org/). Jan (http://www.hydrogenaudio.org/forums/index.php?showuser=21) can validate your user so you can contribute content.
Title: Track Info Panel with ability to change font
Post by: Sam Stoat on 2006-08-22 16:03:07
Just for we Brits, could you get the plugin to recognise 'centre' as well as 'center'?

I just spent a while head scratching as to why a bit of code wasn't working, then realised it came down to American spelling.
Title: Track Info Panel with ability to change font
Post by: Bachi-Bouzouk on 2006-08-22 16:44:50
Just for we Brits, could you get the plugin to recognise 'centre' as well as 'center'?

I just spent a while head scratching as to why a bit of code wasn't working, then realised it came down to American spelling.

center is the common spelling for non-english speakers. Even if in french the verb is "centrer".
Title: Track Info Panel with ability to change font
Post by: Sam Stoat on 2006-08-22 19:04:47
center is the common spelling for non-english speakers. Even if in french the verb is "centrer".
I'm not saying replace 'center'.  It wouldn't be too hard to get it to recognise both spellings.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-08-22 23:45:44

- add support for %_system_*% variables (time and date) to make natural language timestamps (http://www.hydrogenaudio.org/forums/index.php?showtopic=45282) working

This suggestion is obsolete, because of foo_cwb_hooks (http://www.hydrogenaudio.org/forums/index.php?showtopic=43606).

Not quite,because the value of fields like %cwb_systemdatetime% doesn't update in the trackinfo mod
  untill the second  you start playing a track (it does in a usual trackinfo panel).
Title: Track Info Panel with ability to change font
Post by: blaxima on 2006-08-23 00:36:47
Just for we Brits, could you get the plugin to recognise 'centre' as well as 'center'?

I just spent a while head scratching as to why a bit of code wasn't working, then realised it came down to American spelling.


   
I had the same problem with colour-color
Title: Track Info Panel with ability to change font
Post by: Hedin on 2006-08-23 06:43:05


- add support for %_system_*% variables (time and date) to make natural language timestamps (http://www.hydrogenaudio.org/forums/index.php?showtopic=45282) working

This suggestion is obsolete, because of foo_cwb_hooks (http://www.hydrogenaudio.org/forums/index.php?showtopic=43606).

Not quite,because the value of fields like %cwb_systemdatetime% doesn't update in the trackinfo mod
  untill the second  you start playing a track (it does in a usual trackinfo panel).


Hmmm... it doesn't really matter in case of natural language timestamps (http://www.hydrogenaudio.org/forums/index.php?showtopic=45282), I think, because it doesn't need those variables to constatntly update during playback.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-08-23 10:47:57
Quote
Hmmm... it doesn't really matter in case of natural language timestamps, I think, because it doesn't need those variables to constatntly update during playback. smile.gif

Well maybe,but i need them 
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-23 12:24:00
Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 04A727AFh
Access violation, operation: read, address: 00000002h
Call path:
entry=>app_mainloop
This is the first crash logged by this instance.
Code bytes (04A727AFh):
04A7276Fh:  00 00 51 8D 94 24 80 02 00 00 52 D1 F8 8D 44 45
04A7277Fh:  00 68 24 7D AA 04 50 FF D6 8B C5 83 C4 18 8D 50
04A7278Fh:  02 66 8B 08 83 C0 02 66 85 C9 75 F5 2B C2 D1 F8
04A7279Fh:  8D 6C 45 00 EB 07 66 89 45 00 83 C5 02 83 C3 02
04A727AFh:  66 83 3B 00 0F 85 0B FD FF FF 5F 5E 8B 8C 24 34
04A727BFh:  03 00 00 66 C7 45 00 00 00 5D 5B 33 CC E8 9D F6
04A727CFh:  02 00 81 C4 30 03 00 00 C3 CC CC CC CC CC CC CC
04A727DFh:  CC 55 8B EC 83 E4 F8 6A FF 68 98 36 AA 04 64 A1
Stack (0012EED4h):
0012EEB4h:  00000000 00B6D2DB 000001E1 0000029B
0012EEC4h:  00000000 F1A35B68 F1A35BDC F1A35D38
0012EED4h:  05ED1C40 018B6D74 0012F348 018B6CF8
0012EEE4h:  013B1198 77F49037 05ED1F64 00340031
0012EEF4h:  0030002D 0030002D 002D0000 00340032
0012EF04h:  00000034 00491256 05ED1388 000001E0
0012EF14h:  055315F0 0049128D 82846002 000001B5
0012EF24h:  00000000 013B8108 018B0000 0012F008
0012EF34h:  00000000 77F844CB 05530EB0 77F48BCD
0012EF44h:  003B06E8 77F49037 00000000 05530EB8
0012EF54h:  05530EB8 05ED1390 0012F034 00000000
0012EF64h:  77F844CB 068511F0 77F48BCD 003B0778
0012EF74h:  77F49037 00000000 068511F8 00000000
0012EF84h:  0012EF60 000101AF 003B0000 0012EEEC
0012EF94h:  8313A94A 0012EFD8 77F988F0 77F41C88
0012EFA4h:  FFFFFFFF 77F49037 00490FED 003B0000
0012EFB4h:  00000000 00490000 828460A6 00000000
0012EFC4h:  0012F02C 055315F0 05ED1390 0012EFBC
0012EFD4h:  00000002 00000010 004945C0 82DAC78E
0012EFE4h:  FFFFFFFE 0001100C 003B0000 0012EF4C
Registers:
EAX: 00000010, EBX: 00000002, ECX: 00000000, EDX: 05ED3052
ESI: 77D1F8BC, EDI: 00000000, EBP: 05ED3070, ESP: 0012EED4
Crash location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h

Loaded modules:
foobar2000                      loaded at 00400000h - 004F0000h
ntdll                            loaded at 77F40000h - 77FEE000h
kernel32                        loaded at 77E40000h - 77F38000h
COMCTL32                        loaded at 78090000h - 78175000h
msvcrt                          loaded at 77BE0000h - 77C33000h
GDI32                            loaded at 7F000000h - 7F041000h
USER32                          loaded at 77D10000h - 77D9D000h
ADVAPI32                        loaded at 77DA0000h - 77E3C000h
RPCRT4                          loaded at 78000000h - 78087000h
SHLWAPI                          loaded at 70A70000h - 70AD6000h
SHELL32                          loaded at 004F0000h - 00CF4000h
ole32                            loaded at 4FEC0000h - 4FFF6000h
shared                          loaded at 10000000h - 1002A000h
comdlg32                        loaded at 76350000h - 76396000h
uxtheme                          loaded at 5AD70000h - 5ADA4000h
foo_abx                          loaded at 003C0000h - 003F3000h
foo_AdvancedControls            loaded at 01250000h - 01280000h
foo_albumlist                    loaded at 01290000h - 012D1000h
foo_cdda                        loaded at 01300000h - 01336000h
foo_common                      loaded at 01360000h - 0139A000h
foo_converter                    loaded at 013C0000h - 01429000h
foo_cwb_hooks                    loaded at 01450000h - 01478000h
foo_dbsearch                    loaded at 014A0000h - 014FC000h
foo_dsp_std                      loaded at 01520000h - 01561000h
foo_freedb2                      loaded at 01590000h - 015D0000h
foo_input_shorten                loaded at 015F0000h - 0161E000h
foo_input_std                    loaded at 01640000h - 0174A000h
foo_lnk                          loaded at 01770000h - 01789000h
foo_lock_ex                      loaded at 017B0000h - 017C9000h
foo_lyricsdb                    loaded at 017E0000h - 017FE000h
OLEAUT32                        loaded at 770F0000h - 7717B000h
MSVCP80                          loaded at 7C420000h - 7C4A7000h
MSVCR80                          loaded at 01810000h - 018AB000h
WININET                          loaded at 63000000h - 63097000h
CRYPT32                          loaded at 76260000h - 762E9000h
MSASN1                          loaded at 76240000h - 76250000h
foo_managedWrapper              loaded at 01970000h - 01A12000h
mscoree                          loaded at 79000000h - 79045000h
msvcm80                          loaded at 7C4C0000h - 7C53D000h
mscorwks                        loaded at 79E70000h - 7A3D1000h
mscorlib.ni                      loaded at 790C0000h - 79BA8000h
mscorjit                        loaded at 79060000h - 790B3000h
rsaenh                          loaded at 0FFD0000h - 0FFF3000h
System.ni                        loaded at 7A440000h - 7ABFE000h
System.Drawing.ni                loaded at 7ADE0000h - 7AF74000h
System.Windows.Forms.ni          loaded at 7AFD0000h - 7BC56000h
dotnet_title                    loaded at 11000000h - 11014000h
gdiplus                          loaded at 70D00000h - 70E91000h
foo_masstag                      loaded at 04320000h - 04370000h
foo_playcount                    loaded at 04490000h - 044A4000h
foo_playlist_manager            loaded at 044C0000h - 04506000h
foo_pqview                      loaded at 04530000h - 0454C000h
foo_random                      loaded at 04570000h - 045AF000h
foo_rgscan                      loaded at 045D0000h - 04615000h
foo_run                          loaded at 04640000h - 0466B000h
foo_sic                          loaded at 04690000h - 046E0000h
WS2_32                          loaded at 71A10000h - 71A25000h
WS2HELP                          loaded at 71A00000h - 71A08000h
foo_tradersfriend                loaded at 04700000h - 0473D000h
foo_uie_albumart                loaded at 04760000h - 04792000h
foo_uie_albumlist                loaded at 047C0000h - 047FF000h
foo_uie_console                  loaded at 04820000h - 0483C000h
foo_uie_explorer                loaded at 04860000h - 0489C000h
foo_uie_lyrics                  loaded at 048C0000h - 0491E000h
WINMM                            loaded at 76AF0000h - 76B1D000h
foo_uie_playlists_dropdown      loaded at 049C0000h - 049FA000h
foo_uie_tabs                    loaded at 04A20000h - 04A46000h
foo_uie_trackinfo_mod            loaded at 04A70000h - 04AB2000h
foo_ui_std                      loaded at 04AD0000h - 04B27000h
foo_unpack                      loaded at 04B50000h - 04B7E000h
foo_utils                        loaded at 04BA0000h - 04BD9000h
foo_version                      loaded at 04C00000h - 04C26000h
dbghelp                          loaded at 6DA00000h - 6DA7D000h
VERSION                          loaded at 77BD0000h - 77BD7000h
foo_vis_projectM                loaded at 04D50000h - 04DC1000h
OPENGL32                        loaded at 5F0D0000h - 5F196000h
GLU32                            loaded at 68FC0000h - 68FDE000h
DDRAW                            loaded at 51000000h - 51050000h
DCIMAN32                        loaded at 73B30000h - 73B36000h
foo_alarm                        loaded at 052F0000h - 05316000h
foo_trackfinder                  loaded at 05340000h - 05366000h
foo_uie_trackinfo                loaded at 05390000h - 053BE000h
foo_ui_columns                  loaded at 053D0000h - 0546B000h
CLBCATQ                          loaded at 05690000h - 05711000h
COMRes                          loaded at 77010000h - 770E3000h
System.Xml.ni                    loaded at 69BE0000h - 6A148000h
DSOUND                          loaded at 51080000h - 510E1000h
wdmaud                          loaded at 72C90000h - 72C99000h
msacm32                          loaded at 72C80000h - 72C88000h
MSACM32                          loaded at 77BB0000h - 77BC4000h
midimap                          loaded at 77BA0000h - 77BA7000h
KsUser                          loaded at 5EF80000h - 5EF84000h
imagehlp                        loaded at 76C50000h - 76C72000h

Stack dump analysis:
Address: 77F49037h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlFreeHeap" (+000005F9h)
Address: 00491256h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0049128Dh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 77F844CBh, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlRemoteCall" (+000001E1h)
Address: 77F48BCDh, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlFreeHeap" (+0000018Fh)
Address: 77F49037h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlFreeHeap" (+000005F9h)
Address: 77F844CBh, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlRemoteCall" (+000001E1h)
Address: 77F48BCDh, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlFreeHeap" (+0000018Fh)
Address: 77F49037h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlFreeHeap" (+000005F9h)
Address: 77F988F0h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "wcstombs" (+00003409h)
Address: 77F41C88h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Address: 77F49037h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlFreeHeap" (+000005F9h)
Address: 00490FEDh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 00490000h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004945C0h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 77F988F0h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "wcstombs" (+00003409h)
Address: 77F49037h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlFreeHeap" (+000005F9h)
Address: 00490FEDh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 77F48497h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlAllocateHeap" (+000008E9h)
Address: 77F47F98h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlAllocateHeap" (+000003EAh)
Address: 77F48A3Ah, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlAllocateHeap" (+00000E8Ch)
Address: 00490FEDh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0049100Ch, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0040369Ah, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004945C0h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0049100Ch, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 00461244h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004A7861h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 00460B1Dh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 00460B2Ah, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 77F844CBh, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlRemoteCall" (+000001E1h)
Address: 77F48BCDh, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlFreeHeap" (+0000018Fh)
Address: 77F49037h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlFreeHeap" (+000005F9h)
Address: 004DBE00h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004DFA1Ch, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004BEE94h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 01470FC4h, location: "foo_cwb_hooks", loaded at 01450000h - 01478000h
Address: 0053004Dh, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal702" (+00000957h)
Address: 00530020h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal702" (+0000092Ah)
Address: 00650068h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal7" (+00038174h)
Address: 006C006Ch, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal712" (+0003ABA7h)
Address: 00440020h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0067006Ch, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "ShellHookProc" (+0000CAE2h)
Address: 0043F4F7h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 77F988F0h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "wcstombs" (+00003409h)
Address: 01814B9Fh, location: "MSVCR80", loaded at 01810000h - 018AB000h
Symbol: "free" (+000000CDh)
Address: 04A75366h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D1F95Bh, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "wsprintfW" (+0000009Fh)
Address: 77D1FA3Bh, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "wsprintfW" (+0000017Fh)
Address: 04A72D8Eh, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 0053004Dh, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal702" (+00000957h)
Address: 00530020h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal702" (+0000092Ah)
Address: 00650068h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal7" (+00038174h)
Address: 006C006Ch, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal712" (+0003ABA7h)
Address: 00440020h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0067006Ch, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "ShellHookProc" (+0000CAE2h)
Address: 77D1A77Dh, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsWindowVisible" (+00000022h)
Address: 77D19F87h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "EndPaint" (+0000000Ch)
Address: 780C3631h, location: "COMCTL32", loaded at 78090000h - 78175000h
Symbol: "Ordinal384" (+0000E6F5h)
Address: 04AA7FF8h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04AA3698h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A723C5h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D18654h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+00006498h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D18723h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+00006567h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D45602h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "CreateAcceleratorTableA" (+00000314h)
Address: 77D18740h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+00006584h)
Address: 77D19153h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "PostMessageA" (+000000ADh)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D45602h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "CreateAcceleratorTableA" (+00000314h)
Address: 77D19168h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "PostMessageA" (+000000C2h)
Address: 77D19196h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "PostMessageA" (+000000F0h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77F65DA3h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "KiUserCallbackDispatcher" (+00000013h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D19106h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "PostMessageA" (+00000060h)
Address: 77D18DF1h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "KillTimer" (+0000001Bh)
Address: 77D19FA9h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "InvalidateRect" (+0000001Fh)
Address: 77D18637h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+0000647Bh)
Address: 77D45602h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "CreateAcceleratorTableA" (+00000314h)
Address: 77D189C0h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "GetMessageW" (+0000014Ch)
Address: 77D18A12h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "DispatchMessageW" (+0000000Bh)
Address: 77D1E6E9h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "CallMsgFilterW" (+0000020Ah)
Address: 00B6D2DBh, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Address: 77D23E2Ah, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "DrawFocusRect" (+000013CAh)
Address: 77D23E65h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "DialogBoxIndirectParamAorW" (+00000034h)
Address: 04A70000h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04AAE0A0h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A77990h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D26C80h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "DialogBoxParamW" (+0000003Dh)
Address: 04A70000h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04AAE0A0h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A77990h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A72165h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A70000h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A77990h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 0053004Dh, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal702" (+00000957h)
Address: 00530020h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal702" (+0000092Ah)
Address: 00650068h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal7" (+00038174h)
Address: 006C006Ch, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal712" (+0003ABA7h)
Address: 00440020h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0067006Ch, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "ShellHookProc" (+0000CAE2h)
Address: 04AA7FF8h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04AA3578h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A74C6Eh, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04AA8088h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04AA3518h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A72AEBh, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D22314h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "DefDlgProcW" (+00000000h)
Address: 77D18723h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+00006567h)
Address: 77D18737h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+0000657Bh)
Address: 77F48BCDh, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlFreeHeap" (+0000018Fh)
Address: 77D1883Fh, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+00006683h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D18D0Bh, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "GetWindowLongW" (+0000002Bh)
Address: 77D18D14h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "GetWindowLongW" (+00000034h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04AA3698h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D18D18h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "GetWindowLongW" (+00000038h)
Address: 04A723C5h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D18654h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+00006498h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D18723h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+00006567h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D45602h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "CreateAcceleratorTableA" (+00000314h)
Address: 77D18740h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+00006584h)
Address: 77D1BD1Fh, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "EnableWindow" (+0000011Dh)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D45602h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "CreateAcceleratorTableA" (+00000314h)
Address: 77D1A586h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "DefWindowProcW" (+000000B0h)
Address: 77D1A52Dh, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "DefWindowProcW" (+00000057h)
Address: 77F988F0h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "wcstombs" (+00003409h)
Address: 77D45602h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "CreateAcceleratorTableA" (+00000314h)
Address: 77D1A548h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "DefWindowProcW" (+00000072h)
Address: 04A7313Dh, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 0541136Eh, location: "foo_ui_columns", loaded at 053D0000h - 0546B000h
Address: 77D1883Fh, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+00006683h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D18D0Bh, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "GetWindowLongW" (+0000002Bh)
Address: 77D18D14h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "GetWindowLongW" (+00000034h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04AA3698h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D18D18h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "GetWindowLongW" (+00000038h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A723C5h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D1883Fh, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+00006683h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D18D0Bh, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "GetWindowLongW" (+0000002Bh)
Address: 77D18D14h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "GetWindowLongW" (+00000034h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04AA3698h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D18D18h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "GetWindowLongW" (+00000038h)
Address: 04A723C5h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D18654h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+00006498h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D18723h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+00006567h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D45602h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "CreateAcceleratorTableA" (+00000314h)
Address: 77D18740h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "IsCharAlphaNumericA" (+00006584h)
Address: 77D18999h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "GetMessageW" (+00000125h)
Address: 04A72380h, location: "foo_uie_trackinfo_mod", loaded at 04A70000h - 04AB2000h
Address: 77D45602h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "CreateAcceleratorTableA" (+00000314h)
Address: 77D189C0h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "GetMessageW" (+0000014Ch)
Address: 77D18A12h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "DispatchMessageW" (+0000000Bh)
Address: 0042EBC5h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 77D1D185h, location: "USER32", loaded at 77D10000h - 77D9D000h
Symbol: "DestroyWindow" (+00000000h)
Address: 00B6B197h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Address: 0042F6FBh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004BD3D0h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 77F988F0h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "wcstombs" (+00003409h)
Address: 77F43870h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Address: 004C45A4h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004C4588h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 77F844A8h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlRemoteCall" (+000001BEh)
Address: 77F47F98h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlAllocateHeap" (+000003EAh)
Address: 77F48A3Ah, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlAllocateHeap" (+00000E8Ch)
Address: 77F844A8h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlRemoteCall" (+000001BEh)
Address: 77F988F0h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "wcstombs" (+00003409h)
Address: 77F48497h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlAllocateHeap" (+000008E9h)
Address: 77F47F98h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlAllocateHeap" (+000003EAh)
Address: 77F48A3Ah, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlAllocateHeap" (+00000E8Ch)
Address: 004E1158h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004B19D4h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 77F7E3C3h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlReAllocateHeap" (+00000D7Bh)
Address: 77F7E3C3h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlReAllocateHeap" (+00000D7Bh)
Address: 0044005Ch, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 006B006Fh, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal712" (+0002ABAAh)
Address: 006D0075h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Address: 00650074h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal7" (+00038180h)
Address: 00750020h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Address: 0064006Eh, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal7" (+0002817Ah)
Address: 00450020h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 00740073h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Address: 006C0065h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal712" (+0003ABA0h)
Address: 0075006Ch, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Address: 0067006Eh, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "ShellHookProc" (+0000CAE4h)
Address: 0048005Ch, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 00690065h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal712" (+0000ABA0h)
Address: 007A006Eh, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Address: 004C0020h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0061004Dh, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "SHFindFiles" (+0000002Ah)
Address: 0041005Ch, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0077006Eh, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Address: 00750064h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Address: 0067006Eh, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "ShellHookProc" (+0000CAE4h)
Address: 00640073h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Symbol: "Ordinal7" (+0002817Fh)
Address: 00740061h, location: "SHELL32", loaded at 004F0000h - 00CF4000h
Address: 77F85769h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlLogStackBackTrace" (+0000011Fh)
Address: 004E104Ch, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 77F988F0h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "wcstombs" (+00003409h)
Address: 77F41C78h, location: "ntdll", loaded at 77F40000h - 77FEE000h
Address: 77F48A3Ah, location: "ntdll", loaded at 77F40000h - 77FEE000h
Symbol: "RtlAllocateHeap" (+00000E8Ch)
Address: 0049147Dh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004E11D8h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0044CAEBh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0040C796h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0040369Ah, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0049423Ah, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004BD528h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 10002D97h, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uPrintCrashInfo_SetDumpPath" (+000000B7h)
Address: 004BD528h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004AC7DAh, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 004BD528h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 0042F8E7h, location: "foobar2000", loaded at 00400000h - 004F0000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 004F0000h

Version info:
foobar2000 v0.9.3.1
UNICODE

Additional info:
Album list panel 0.2.1 beta 4  (foo_uie_albumlist)
Shorten decoder 0.4.2a  (foo_input_shorten)
ZIP/GZIP reader 1.0  (foo_unpack)
Track Finder 2.1.1 [Jun 16 2006 - 12:36:15]  (foo_trackfinder)
Components versions viewer 0.3  (foo_version)
Pause on Lock (extended) 1.0  (foo_lock_ex)
Database search 1.3.1 beta 11  (foo_dbsearch)
Randomized playlist entry 1.2.3  (foo_random)
Converter 1.0.1  (foo_converter)
projectM visualization 1.97.6.2  (foo_vis_projectM)
Live show tagger 0.6.1  (foo_tradersfriend)
Standard DSP array 1.0  (foo_dsp_std)
Play Count 1.9.2  (foo_playcount)
Playlist tools 0.5.7  (foo_utils)
Standard Input Array 1.0  (foo_input_std)
CD Audio Decoder 2.1.1  (foo_cdda)
Lyric Show Panels 0.3.0.0  (foo_uie_lyrics)
Track info panel mod 0.5 beta [Aug 17 2006 - 14:29:02]  (foo_uie_trackinfo_mod)
Tabbed panel modifyed 0.2.1  (foo_uie_tabs)
RAR reader 1.1  (foo_unpack)
Run services 0.3.2  (foo_run)
foosic music database 1.0 beta 9  (foo_sic)
Console panel 0.2  (foo_uie_console)
Playlists Dropdown 0.5.7.5  (foo_uie_playlists_dropdown)
foo_managedWrapper 0.3  (foo_managedWrapper)
Default User Interface 0.9acc  (foo_ui_std)
Shell link resolver 1.1  (foo_lnk)
cwbowron's title format hooks 1.0.4 [Aug 18 2006 - 08:43:50]  (foo_cwb_hooks)
Columns UI 0.1.3 beta 1v5  (foo_ui_columns)
ReplayGain Scanner 2.0.2  (foo_rgscan)
Album Art Panel 0.2.1  (foo_uie_albumart)
Common services 0.1  (foo_common)
Track info panel 0.8.1  (foo_uie_trackinfo)
Masstagger 1.6  (foo_masstag)
Album List 3.2.0  (foo_albumlist)
FooBar2000 Advanced Controls 0.5.9.0  (foo_AdvancedControls)
freedb tagger v0.5.1  (foo_freedb2)
foo_lyricsdb 0.0.7 beta 4  (foo_lyricsdb)
FLAC decoder 1.1.0  (foo_input_std)
Alarm 1.05  (foo_alarm)
Explorer Tree 1.04.6b  (foo_uie_explorer)
ABX comparator 1.3  (foo_abx)
Playlist Manager 1.0  (foo_playlist_manager)
I would like to repeat the question, where there is the difference between "old" trackinfo and this trackinfo_mod in case of the following code:
Code: [Select]
//Set 1st colour
$puts(color1,$rgb(250,250,250))
//Set 2nd colour
$puts(color2,$rgb(0,0,0))
//Set marker colour
$puts(marker_color,$rgb(100,100,100))
//Set length
$puts(length,40)
//Set symbol
$puts(symbol,█)

//******************************************************************

$puts(percent,$muldiv(%_time_elapsed_seconds%,100,%_time_total_seconds%))
$puts(progress,$muldiv($get(length),$get(percent),100))
$puts(bottom,$transition($repeat($get(symbol),$get(length)),$get(color1),$get(color2)))
$puts(top,$transition($repeat($get(symbol),$get(length)),$get(color2),$get(color1)))
$puts(a,$div($len2($get(top)),$get(length)))
$puts(pos,$add(2,$mul($get(a),$sub($get(length),$get(progress)))))
$puts(pos1,$add(2,$mul($get(a),$get(progress))))
$right($get(top),$get(pos1))
$get(marker_color)$get(symbol)
$left($get(bottom),$get(pos))
One thing I allready noticed by myself:
- In "old" panel it works while "..._mod" panel crashes foobar as soon as I aply "update every second" ...
Title: Track Info Panel with ability to change font
Post by: pIv on 2006-08-23 13:25:51
I modify Lite code next way. That make natural language timestamps working with using foo_cwb_hooks.

Code: [Select]
/////////////////////////////////////////
// NATURAL LANGUAGE TIMESTAMPS
// by topdownjimmy
// v0.4 - June 4, 2006
/////////////////////////////////////////
// calculate "dayssince": number of days since song was last played
$puts(sy,$substr(%cwb_systemdate%,1,4))
$puts(sm,$substr(%cwb_systemdate%,6,7))
$puts(sd,$substr(%cwb_systemdate%,9,10))
$puts(sh,$substr(%cwb_systemdatetime%,12,13))

// calculate "dayssince": number of days since song was last played
$if(%last_played%,$puts(dayssince,$sub($add($mul($right(
$get(sy),2),365),$select(
$get(sm),0,31,59,90,120,151,181,212,243,273,304,334),$add($div($right(
$get(sy),2),4),$if($or($greater(
$get(sm),2),$greater($mod(
$get(sy),4),0)),1,0)),
$get(sd)),$add($mul($substr(%last_played%,3,4),365),$select($substr(%last_played%,6,7),0,31,59,90,120,151,181,212,243,273,304,334),$add($div($substr(%last_played%,3,4),4),$if($or($greater($substr(%last_played%,6,7),2),$greater($mod($substr(%last_played%,1,4),4),0)),1,0)),$substr(%last_played%,9,10)))),$puts(dayssince,))
// correct "dayssince" to consider early AM to be an extension of previous day
$puts(dayssince,$sub($get(dayssince),$if($and($greater(7,
$get(sh)),$greater($substr(%last_played%,12,13),6)),1,0)))$if($and($greater(
$get(sh),6),$greater(7,$substr(%last_played%,12,13))),$puts(dayssince,$add($get(dayssince),1)),)
// calculate day of week
$puts(calcdayofweek,$add(1,$mod($add($substr(%last_played%,3,4),$div($substr(%last_played%,3,4),4),$select($substr(%last_played%,6,7),6,2,2,5,0,3,5,1,4,6,2,4),$substr(%last_played%,9,10)),7)))
// correct day of week to consider early AM to be an extension of previous day
$puts(calcdayofweek,$sub($get(calcdayofweek),$ifgreater(7,$substr(%last_played%,12,13),1,0)))$if($strcmp($get(calcdayofweek),0),$puts(calcdayofweek,7),)
// calculate period of day (night, morning, etc.)
$puts(dayperiod,$select($add(1,$substr(%last_played% ,12,13)),Night,Night,Night,Night,Night,Night,Night,Morning,Morning,Morning,Morning,Morning,Afternoon
,Afternoon,Afternoon,Afternoon,Afternoon,Evening,Evening,Evening,Evening,Night,Night,Night))
// calculate natural language timestamp
$if(%last_played%,$puts(nat_lang_stamp,$ifgreater($get(dayssince),0,$ifgreater($get(dayssince),1,$ifgreater($get(dayssince),6,$if($and($greater($get(dayssince),21),$not($strcmp(
$get(sm),$substr(%last_played%,6,7)))),$if($not($strcmp(
$get(sy),$substr(%last_played%,1,4))),$select($substr(%last_played%,6,7),January,February,March,April,May,June,July,August,September,October,November,December)' '$substr(%last_played%,1,4),$ifgreater(2,$sub(
$get(sm),$substr(%last_played%,6,7)),'Last Month',$select($substr(%last_played%,6,7),January,February,March,April,May,June,July,August,September,October,November,December))),$ifgreater($div($add($get(dayssince),4),7),1,$div($add($get(dayssince),4),7)' Weeks Ago',Last Week)),$select($get(calcdayofweek),Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday)' '$get(dayperiod)),$if($strcmp($get(dayperiod),Night),Last,Yesterday)' '$get(dayperiod)),$if($strcmp($get(dayperiod),Night),Tonight,This $get(dayperiod)))),$puts(nat_lang_stamp,Never))
/////////////////////////////////////////


$alignabs(right,top)
$font(arial,8,bold,255-255-128)
Date: %cwb_systemdate%
$char(10)



//Codded by Lite

// User config
// ----------------------------------------------------------
// Toggles
$puts(show_trackinfo_mode,1)
$puts(show_song_info,1)
$puts(show_tech_info,1)
$puts(show_play_info,1)
$puts(show_audioscrobblered,1)
$puts(show_progressbar,1)

//Trackinfo view
// 1 - View 1
// 2 - View 2
$puts(trackinfo_view,1)

// Color Config
// 1 - Soundtrack to Your Escape background: 16,40,46
// 2 - Reroute to Remain background: 229,232,231
// 3 - Sandman2012   background: 255,255,255
// 4 - Draconian Times   background: 129,52,65
// 5 - Since the Day It All Came Down  background: 246,248,245
// 6 - Tales from the Thousand Lakes background: 35,22,89
// 7 - Projector background: 0,0,0
// 8 - The Astral Sleep background: 134,107,76
// 9 - Verisakeet   background: 64,76,61
// 10 - Haunted background: 0,0,16
// 11 - Ghost Reveries   background: 29,20,15
// 12 - Rain Without End background: 34,27,67
// 13 - Arte Novecento   background: 240,240,240
// 14 - Ghosts of Loss   background: 87,111,117
// 15 - The Truth Inside the Shades background: 16,20,23
// 16 - 00 Void background: 167,167,177
// 17 - Antimatter   background: 0,0,0
// 18 - Frail Words Collapse background: 202,184,122
// 19 - Am Universum background: 204,201,124
// 20 - Character   background: 228,226,227
// 21 - From Mars to Sirius background: 239,233,221
// 22 - Voice of Wilderness background: 169,169,159
// 23 - Blue Sky by Lite background: 140,140,202
// 99 - Custom config
$puts(color_config,23)

// Custom color scheme
$puts(cc_text1,$rgb(70,07,16))
$puts(cc_text2,$rgb(10,10,10))
$puts(cc_section_title,$rgb(25,20,26))
$puts(cc_fade_inside,$rgb(10,27,26))
$puts(cc_fade_outside,$rgb(0,0,0))

// ----------------------------------------------------------
// End of user config


// color schemes
$if($strcmp($get(color_config),99),
// User defined scheme
$puts(info,$get(cc_text1))
$puts(head,$get(cc_text2))
$puts(anno,$get(cc_text1))
$puts(text2,$get(cc_section_title))
$puts(text1,$get(cc_fade_inside))
$puts(fadeend,$get(cc_fade_outside))
,
$select($get(color_config),
// Soundtrack to Your Escape
$puts(head,$rgb(170,170,170))
$puts(info,$rgb(170,207,216))
$puts(anno,$rgb(98,114,121))
$puts(text1,$rgb(170,207,216))
$puts(text2,$rgb(255,250,216))
$puts(fadeend,$rgb(0,0,0)),
// Reroute to Remain
$puts(head,$rgb(0,0,0))
$puts(info,$rgb(100,106,102))
$puts(anno,$rgb(100,106,102))
$puts(text1,$rgb(179,181,180))
$puts(text2,$rgb(123,40,48))
$puts(fadeend,$rgb(0,0,0)),
// Sandman2012
$puts(head,$rgb(0,128,192))
$puts(info,$rgb(130,130,130))
$puts(anno,$rgb(100,106,102))
$puts(text1,$rgb(235,242,254))
$puts(text2,$rgb(0,128,64))
$puts(fadeend,$rgb(0,0,0)),
// Draconian Times
$puts(head,$rgb(201,193,146))
$puts(info,$rgb(217,219,206))
$puts(anno,$rgb(217,219,206))
$puts(text1,$rgb(157,51,67))
$puts(text2,$rgb(178,196,200))
$puts(fadeend,$rgb(176,107,68)),
// Since the Day It All Came Down
$puts(head,$rgb(3,46,41))
$puts(info,$rgb(104,104,94))
$puts(anno,$rgb(104,104,94))
$puts(text1,$rgb(76,107,106))
$puts(text2,$rgb(50,85,91))
$puts(fadeend,$rgb(0,0,0)),
// Tales from the Thousand Lakes
$puts(head,$rgb(98,167,162))
$puts(info,$rgb(203,203,210))
$puts(anno,$rgb(203,203,210))
$puts(text1,$rgb(78,112,173))
$puts(text2,$rgb(143,201,234))
$puts(fadeend,$rgb(62,67,171)),
// Projector
$puts(head,$rgb(227,122,76))
$puts(info,$rgb(170,134,98))
$puts(anno,$rgb(170,134,98))
$puts(text1,$rgb(132,55,40))
$puts(text2,$rgb(248,214,134))
$puts(fadeend,$rgb(0,0,0)),
// The Astral Sleep
$puts(head,$rgb(67,45,32))
$puts(info,$rgb(208,204,199))
$puts(anno,$rgb(208,204,199))
$puts(text1,$rgb(103,75,51))
$puts(text2,$rgb(214,200,168))
$puts(fadeend,$rgb(0,0,0)),
// Verisakeet
$puts(head,$rgb(160,146,117))
$puts(info,$rgb(208,194,165))
$puts(anno,$rgb(208,194,165))
$puts(text1,$rgb(113,52,47))
$puts(text2,$rgb(244,244,244))
$puts(fadeend,$rgb(0,0,0)),
// Haunted
$puts(head,$rgb(119,119,136))
$puts(info,$rgb(160,176,184))
$puts(anno,$rgb(208,194,165))
$puts(text1,$rgb(216,88,16))
$puts(text2,$rgb(228,228,232))
$puts(fadeend,$rgb(0,0,0)),
// Ghost Reveries
$puts(head,$rgb(145,113,54))
$puts(info,$rgb(238,219,135))
$puts(anno,$rgb(162,144,88))
$puts(text1,$rgb(172,148,76))
$puts(text2,$rgb(241,238,205))
$puts(fadeend,$rgb(35,27,16)),
// Rain Without End
$puts(head,$rgb(83,119,171))
$puts(info,$rgb(204,204,204))
$puts(anno,$rgb(194,194,194))
$puts(text1,$rgb(70,102,149))
$puts(text2,$rgb(244,244,244))
$puts(fadeend,$rgb(0,0,0)),
// Arte Novecento
$puts(head,$rgb(122,116,128))
$puts(info,$rgb(115,106,111))
$puts(anno,$rgb(115,106,111))
$puts(text1,$rgb(106,100,128))
$puts(text2,$rgb(130,139,148))
$puts(fadeend,$rgb(122,116,128)),
// Ghosts of Loss
$puts(head,$rgb(151,174,180))
$puts(info,$rgb(197,207,216))
$puts(anno,$rgb(197,207,216))
$puts(text1,$rgb(93,116,122))
$puts(text2,$rgb(237,233,228))
$puts(fadeend,$rgb(0,0,0)),
// The Truth Inside the Shades
$puts(head,$rgb(191,195,168))
$puts(info,$rgb(246,242,155))
$puts(anno,$rgb(246,242,155))
$puts(text1,$rgb(244,163,107))
$puts(text2,$rgb(251,251,251))
$puts(fadeend,$rgb(0,0,0)),
// 00 Void
$puts(head,$rgb(55,54,72))
$puts(info,$rgb(0,0,0))
$puts(anno,$rgb(0,0,0))
$puts(text1,$rgb(145,68,63))
$puts(text2,$rgb(244,241,234))
$puts(fadeend,$rgb(0,0,0)),
// Antimatter
$puts(head,$rgb(107,111,122))
$puts(info,$rgb(204,204,204))
$puts(anno,$rgb(184,184,184))
$puts(text1,$rgb(206,158,66))
$puts(text2,$rgb(204,204,204))
$puts(fadeend,$rgb(0,0,0)),
// Frail Words Collapse
$puts(head,$rgb(77,40,22))
$puts(info,$rgb(0,0,0))
$puts(anno,$rgb(0,0,0))
$puts(text1,$rgb(187,155,103))
$puts(text2,$rgb(128,83,62))
$puts(fadeend,$rgb(0,0,0)),
// Am Universum
$puts(head,$rgb(122,100,40))
$puts(info,$rgb(0,0,0))
$puts(anno,$rgb(0,0,0))
$puts(text1,$rgb(122,100,40))
$puts(text2,$rgb(107,70,13))
$puts(fadeend,$rgb(235,229,143)),
// Character
$puts(head,$rgb(98,100,97))
$puts(info,$rgb(0,0,0))
$puts(anno,$rgb(0,0,0))
$puts(text1,$rgb(160,66,35))
$puts(text2,$rgb(115,39,23))
$puts(fadeend,$rgb(221,162,88)),
// From Mars to Sirius
$puts(head,$rgb(159,143,127))
$puts(info,$rgb(0,0,0))
$puts(anno,$rgb(0,0,0))
$puts(text1,$rgb(159,143,127))
$puts(text2,$rgb(111,89,66))
$puts(fadeend,$rgb(0,0,0)),
// Voice of Wilderness
$puts(head,$rgb(0,0,4))
$puts(info,$rgb(77,75,63))
$puts(anno,$rgb(77,75,63))
$puts(text1,$rgb(0,0,0))
$puts(text2,$rgb(89,87,71))
$puts(fadeend,$rgb(199,197,181)),
// Blue Sky by Lite
$puts(head,$rgb(250,255,245))
$puts(info,$rgb(224,255,255))
$puts(anno,$rgb(147,112,219))
$puts(text1,$rgb(158,33,145))
$puts(text2,$rgb(18,38,94))
$puts(fadeend,$rgb(140,140,202)),
))

// Day Conversion
$puts(day,$substr(%last_played%,9,10))
$if(%last_played%,
$if($strcmp($left($get(day),1),0),$puts(day,$right($get(day),1))))
$if($strcmp($get(day),11),$puts(xx,th),
$if($strcmp($get(day),12),$puts(xx,th),
$if($strcmp($get(day),13),$puts(xx,th),
$if($strcmp($right($get(day),1),1),$puts(xx,st),
$if($strcmp($right($get(day),1),2),$puts(xx,nd),
$if($strcmp($right($get(day),1),3),$puts(xx,rd),
$puts(xx,th)))))))

// Month Conversion
$puts(month,$substr(%last_played%,6,7))
$puts(month_name,$select($get(month),
Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec))

// Year Conversion
$puts(year,20$substr(%last_played%,3,4))

// Time Conversion
$puts(hour,$substr(%last_played%,12,13))
$puts(min,$substr(%last_played%,15,16))
$puts(sec,$substr(%last_played%,18,19))

// Date Format
$puts(time_of_year,$get(month_name) $get(day)$get(xx)',' $get(year))

// Time Format
$puts(time_of_day,$get(hour):$get(min):$get(sec))


// Progress Bar Config
$puts(progbarchar,•)
$puts(proglen,35)
$puts(color1,$get(info))
$puts(color2,$get(anno))

// Separator char1
$puts(sepw,20)
$puts(sepc,••)

// Separator char2
$puts(sepw2,10)
$puts(sepc2,``)

/////////////////////////////////////////////////////////////////
// Trackinfo View 1
/////////////////////////////////////////////////////////////////
$if($strcmp($get(trackinfo_view),1),
$align(left,top)
$font(Lucida,9,shadow,255-255-255)
// Trackinfo mode
$if($strcmp($get(show_trackinfo_mode),1),
$get(head)Mode: $get(info)%_trackinfo_mode%$char(10)
$transition($repeat($get(sepc),$get(sepw)),$get(text2),$get(fadeend))$char(10)
)
// ----------------------------------------------------------

// Song info
$if($strcmp($get(show_song_info),1),

$get(head)Song Info:$char(10)
$transition($repeat($get(sepc2),$get(sepw2)),$get(text2),$get(fadeend))$char(10)
$get(head)Artist:$get(info)[  %artist%]$char(10)
$get(head)Title:$get(info)[  %title%]$char(10)
$get(head)Album:$get(info)[  %album%]  ['('%date%')']$char(10)
$get(head)Track:$get(info)[  %tracknumber%]$char(10)
$get(head)Genre:$get(info)[  %genre%]$char(10)
$transition($repeat($get(sepc),$get(sepw)),$get(text2),$get(fadeend))$char(10)
)
// ----------------------------------------------------------

// Tech info
$if($strcmp($get(show_tech_info),1),
$get(head)Tech Info:$char(10)
$transition($repeat($get(sepc2),$get(sepw2)),$get(text2),$get(fadeend))$char(10)
$get(head)Codec:$get(info)[  %codec%]$char(10)
$get(head)Bitrate:$get(info)  $if($stricmp(%codec%,mp3),%bitrate%$get(head)kbps $if($stricmp(%__extrainfo%,vbr),VBR,CBR),)

$char(10)
$get(head)Samplerate:$get(info)  $if(%samplerate%,$div(%samplerate%,1000).$substr(%samplerate%,3,3) KHz)$char(10)
$get(head)Channels:$get(info) $if($stricmp([%codec%],mp3),$caps([%__mp3_stereo_mode%]),$caps([%channels%]))$char(10)
$get(head)$if(%filesize%,Size: $get(info)
$div(%filesize%,1048576).$left($num($muldiv($mod(%filesize%,1048576),100,1048576),2),2) $get(head)'MB',Size:)$char(10)
$transition($repeat($get(sepc),$get(sepw)),$get(text2),$get(fadeend))$char(10)
)
// ----------------------------------------------------------

// Play info
$if($strcmp($get(show_play_info),1),
$get(head)Play Info:$char(10)
$transition($repeat($get(sepc2),$get(sepw2)),$get(text2),$get(fadeend))$char(10)
$if(%last_played%,$get(head)Last played on  $rgb(255,255,128)$get(nat_lang_stamp)$char(10),)
$if(%last_played%,
$if(%play_counter%,$get(head)Track played 
$if($strcmp(%play_counter%,1),$get(info)only once,
$if($strcmp(%play_counter%,2),$get(info)twice,
$get(info)%play_counter% times)),
$get(head)Track $get(info)never been played),$get(info)No track)
$char(10)
$get(head)Track time:  $get(info)$if(%isplaying%,[ %_time_elapsed% / %length%],[%length%])
$char(10)
// Audioscrobblered?
$if($strcmp($get(show_audioscrobblered),1),
$if(%isplaying%,
$puts(half_length,$div(%_length_seconds%,2))
$ifgreater($get(half_length),%_time_remaining_seconds%,$get(text1)Audioscrobblered$char(10)
$transition($repeat($get(sepc),$get(sepw)),$get(text2),$get(fadeend)),$transition($repeat($get(sepc),$get(sepw)),$get

(text2),$get(fadeend))),
$transition($repeat($get(sepc),$get(sepw)),$get(text2),$get(fadeend))),$transition($repeat($get(sepc),$get(sepw)),$get

(text2),$get(fadeend)))
$char(10)
)
// ----------------------------------------------------------

// Progress bar
$if($strcmp($get(show_progressbar),1),
$if(%_time_total_seconds%,
$progress2(%_time_elapsed_seconds%,%_time_total_seconds%,$get(proglen),
$get(color1)$get(progbarchar),$get(color2)$get(progbarchar)) 
$get(color1)$muldiv(%_time_elapsed_seconds%,100,%_time_total_seconds%)
' %'),)
/////////////////////////////////////////////////////////////////
// End of Trackinfoview 1
,
$if($strcmp($get(trackinfo_view),0), ,

// ----------------------------------------------------------

/////////////////////////////////////////////////////////////////
// Trackinfo view 2
/////////////////////////////////////////////////////////////////
$if($strcmp($get(trackinfo_view),2),
$font(times,10,shadow,255-255-255)
$align(center,middle)

// Trackinfo mode
$upper($if($strcmp($get(show_trackinfo_mode),1),
$if(%isplaying%,$get(info)%_trackinfo_mode%$char(10),$get(head)%_trackinfo_mode%$char(10))
)
)$transition($repeat($get(sepc2),$get(sepw2)),$get(fadeend),$get(text2))
$transition($repeat($get(sepc2),$get(sepw2)),$get(text2),$get(fadeend))$char(10)
// ----------------------------------------------------------

// Song info
$if($strcmp($get(show_song_info),1),
$get(head)SONG INFO$char(10)
$transition($repeat($get(sepc2),$get(sepw2)),$get(fadeend),$get(text2))
$transition($repeat($get(sepc2),$get(sepw2)),$get(text2),$get(fadeend))$char(10)
$if(%_trackinfo_notrack%,,
$get(info)[  %title%]$char(10)
$get(head)by$char(10)
$get(info)[  %artist%]$char(10)
$get(head)track #$get(info)[ %tracknumber% ]$get(head)from$char(10)
$get(info)[  %album%]  ['('%date%')']$char(10)
$get(info)[  %genre%]$char(10)
$transition($repeat($get(sepc2),$get(sepw2)),$get(fadeend),$get(text2))
$transition($repeat($get(sepc2),$get(sepw2)),$get(text2),$get(fadeend))$char(10))
)
// ----------------------------------------------------------

// Tech info
$if($strcmp($get(show_tech_info),1),
$get(head) TECH INFO $char(10)
$transition($repeat($get(sepc2),$get(sepw2)),$get(fadeend),$get(text2))
$transition($repeat($get(sepc2),$get(sepw2)),$get(text2),$get(fadeend))$char(10)
$if(%_trackinfo_notrack%,,
$get(info)  $if($stricmp(%codec%,mp3),%bitrate%$get(head)kbps $if($stricmp(%__extrainfo%,vbr),VBR,CBR),)$get(info)[ %

codec%]$char(10)
$get(info)  $if(%samplerate%,$div(%samplerate%,1000).$substr(%samplerate%,3,3) KHz) $get(info) $if($stricmp([%

codec%],mp3),$caps([%__mp3_stereo_mode%]),$caps([%channels%]))$char(10)
$get(info)
$div(%filesize%,1048576).$left($num($muldiv($mod(%filesize%,1048576),100,1048576),2),2) $get(head)'MB'$char(10)
$transition($repeat($get(sepc2),$get(sepw2)),$get(fadeend),$get(text2))
$transition($repeat($get(sepc2),$get(sepw2)),$get(text2),$get(fadeend))$char(10)
)
)

// ----------------------------------------------------------

// Play info
$if($strcmp($get(show_play_info),1),
$get(head) PLAY INFO $char(10)
$transition($repeat($get(sepc2),$get(sepw2)),$get(fadeend),$get(text2))
$transition($repeat($get(sepc2),$get(sepw2)),$get(text2),$get(fadeend))$char(10)
$if(%last_played%,$get(head)Last played on  $rgb(255,255,128)$get(nat_lang_stamp)$char(10),)
$if(%last_played%,
$if(%play_counter%,$get(head)Track played 
$if($strcmp(%play_counter%,1),$get(info)only once,
$if($strcmp(%play_counter%,2),$get(info)twice,
$get(info)%play_counter% times)),
$get(head)Track $get(info)never been played),$get(info)NO TRACK)
$char(10)
$if(%isplaying%,
 $get(info)$if(%isplaying%,[ %_time_elapsed% / %length%],[%length%])
$char(10),
$transition($repeat($get(sepc2),$get(sepw2)),$get(fadeend),$get(text2))
$transition($repeat($get(sepc2),$get(sepw2)),$get(text2),$get(fadeend))
$char(10)
)
)
// Audioscrobblered?
$if($strcmp($get(show_audioscrobblered),1),
$if(%isplaying%,
$puts(half_length,$div(%_length_seconds%,2))
$ifgreater($get(half_length),%_time_remaining_seconds%,$get(text1)Audioscrobblered$char(10)
$transition($repeat($get(sepc2),$get(sepw2)),$get(fadeend),$get(text2))
$transition($repeat($get(sepc2),$get(sepw2)),$get(text2),$get(fadeend)) $char(10),
$char(10)
),
),
)


// Progress bar
$if($strcmp($get(show_progressbar),1),
$if(%_time_total_seconds%,
$progress2(%_time_elapsed_seconds%,%_time_total_seconds%,$get(proglen),
$get(color1)$get(progbarchar),$get(color2)$get(progbarchar)) $char(10)
$get(color1)$muldiv(%_time_elapsed_seconds%,100,%_time_total_seconds%)
' %'),)
/////////////////////////////////////////////////////////////////
// End of Trackinfo view 2
, )))



Use this code I see "Last Played" string  as (next string is sample)

Last played on This Afternoon
Screenshot is
http://img201.imageshack.us/my.php?image=1fk8.jpg (http://img201.imageshack.us/my.php?image=1fk8.jpg)
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-23 13:46:31
Sw!ng:  I do not see anything in your code that would demand different functions to move it from the original version to the mod version of trackinfo. However you are using quite a few puts/get commands, add that to an update every second and IMO that may be overloading the component. Try rewriting your code without using puts/get and see if that works, I see nothing in your code that would require it (I personally avoid puts/get as much as possible).

pIv: Please, if you are going to paste such a large amount of code use a CODEBOX tag instead of a CODE tag.  Are you asking a question? I see nothing in your code that would output "next string is sample".
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-23 15:27:35
Well, you should see my other trackinfo_mod panels ... 
Nevertheless I disabled all the other ones and rewrote the code to
Code: [Select]
// Set 1st colour
$puts(color1,$rgb(250,250,250))

// Set 2nd colour
$puts(color2,$rgb(0,0,0))

// Set marker colour
$puts(marker_color,$rgb(100,100,100))

// Set length
$puts(length,40)

// Set symbol
$puts(symbol,█)


$right($transition($repeat($get(symbol),$get(length)),$get(color2),$get(color1)),$add(2,$mul($div($len2($transition($repeat($get(symbol),$get(length)),$get(color2),$get(color1))),$get(length)),$muldiv($get(length),$muldiv(%_time_elapsed_seconds%,100,%_time_total_seconds%),100))))

$get(marker_color)$get(symbol)

$left($transition($repeat($get(symbol),$get(length)),$get(color1),$get(color2)),$add(2,$mul($div($len2($transition($repeat($get(symbol),$get(length)),$get(color2),$get(color1))),$get(length)),$sub($get(length),$muldiv($get(length),$muldiv(%_time_elapsed_seconds%,100,%_time_total_seconds%),100)))))
,so that it still works under "old" trackinfo, while still crashes FB in "trackinfo_mod" ...!!

Then it seems I'll have to cut it out ... 


** Edit: **
I updated the Wiki (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29).
(Pls check it and correct me if wrong ...!!)
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-23 19:39:42
Well I chopped away at your code and it appears that it's the $left() and $right() functions that are triggering the crash. The function appears to be taking the color codes from the $transition() into account and if it chops the string in the middle of a color code that is what is causing the crash.  I think the solution would be to calculate length on each side of the marker before applying the transition. I'll stab away a little more but things become difficult because foobar keeps rounding everything to integers.
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-23 20:05:38
First there's to say that its not mine ...!!
The code is from Russell777's Topic (http://www.hydrogenaudio.org/forums/index.php?showtopic=45669&hl=Russell777).

2.
To me, it seems that it only works this way ...!!
-Otherwise, I have no Idea how to modify ... 

but THNX, so far ...!!
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-08-23 20:24:56
Feature request: 1 second refresh also when not playing.

Reason: I'd like to display the system time. foo_cwb_hooks (http://www.hydrogenaudio.org/forums/index.php?showtopic=43606) makes this possible, but the trackinfo panel does only refresh when playing.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-08-23 20:42:19
Feature request: 1 second refresh also when not playing.

Reason: I'd like to display the system time. foo_cwb_hooks (http://www.hydrogenaudio.org/forums/index.php?showtopic=43606) makes this possible, but the trackinfo panel does only refresh when playing.

I second Squeller's request.Please!
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-23 21:14:02
Sw!ng:

I have had limited success rebuilding that progress bar for you, here is some code you can try. The thread you linked has several bars depicted so I'm not sure exactly what you want but here is a gradient bar with a position indicator and the gradient chases the indicator. Also, the bar autosizes to fit the panel.  If this does not suit your needs provide further detail and I'll see what I can whip up.
Code: [Select]
$puts(color1,$rgb(250,250,250))
$puts(color2,$rgb(0,0,0))
$puts(marker_color,$rgb(100,100,100))
$puts(symbol,$char(9608))

$puts(length,$div(%_width%,$calcwidth($char(9608))))
$puts(percent,$muldiv(%_time_elapsed_seconds%,100,%_time_total_seconds%))
$puts(progress,$muldiv($get(length),$get(percent),100))

$transition($repeat($get(symbol),$sub($get(progress),1)),$get(color2),$get(color1))
$get(marker_color)$get(symbol)
$transition($repeat($get(symbol),$sub($get(length),$get(progress))),$get(color1),$get(color2))
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-24 00:04:58
THANX ...!!   
- Looks funny, too !! (in other colors, o'course)

Unfortunatly it was the look of v2.1 on that topic the one that inspired me ...
(... as the code I wrote)
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-08-24 12:10:01
Good job with the wiki Sw!ng.
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-24 12:51:18
 ...

(...but I still dont think people new to this mod will get any wiser ...)
Title: Track Info Panel with ability to change font
Post by: pIv on 2006-08-24 13:54:03
I only want say than horisontal padding for this code must be equal 0.
For default horisontal padding (10) I modify next string
Code: [Select]
$puts(length,$sub($div(%_width%,$calcwidth($char(9608))),3))


Sw!ng:

I have had limited success rebuilding that progress bar for you, here is some code you can try. The thread you linked has several bars depicted so I'm not sure exactly what you want but here is a gradient bar with a position indicator and the gradient chases the indicator. Also, the bar autosizes to fit the panel.  If this does not suit your needs provide further detail and I'll see what I can whip up.
Code: [Select]
$puts(color1,$rgb(250,250,250))
$puts(color2,$rgb(0,0,0))
$puts(marker_color,$rgb(100,100,100))
$puts(symbol,$char(9608))

$puts(length,$div(%_width%,$calcwidth($char(9608))))
$puts(percent,$muldiv(%_time_elapsed_seconds%,100,%_time_total_seconds%))
$puts(progress,$muldiv($get(length),$get(percent),100))

$transition($repeat($get(symbol),$sub($get(progress),1)),$get(color2),$get(color1))
$get(marker_color)$get(symbol)
$transition($repeat($get(symbol),$sub($get(length),$get(progress))),$get(color1),$get(color2))
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-28 05:14:17
Something I've been working on, a progress bar with a crosshair that chases the progress:
(http://img167.imageshack.us/img167/875/progressbarqd7.png) (http://imageshack.us)
Code: [Select]
$font(tahoma,7,shadow,233-233-233)
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),
,
$alignabs(2,$sub(%_height%,$calcheight(P),6),%_width%,%_height%,,)$if(%_isplaying%,Progress $rgb(128,128,128)$char(40)$rgb(233,233,233)$div($mul(%_time_elapsed_seconds%,100),%_time_total_seconds%)'%'$rgb(128,128,128)$char(41)$rgb(233,233,233):)
$alignabs($sub(%_width%,$add($calcwidth(%playback_time% $char(47) %length%),4)),$sub(%_height%,$calcheight(8),6),%_width%,%_height%,,)$if(%playback_time%,%playback_time%$if2($rgb(128,128,128) $char(47) $rgb(233,233,233)%length%,),)$char(10)

$alignabs(80,$sub(%_height%,18),%_width%,%_height%,,)$progress2(%playback_time_seconds%,%length_seconds%,$sub($div(%_width%,$calcwidth($char(9679))),30),$rgb(0,128,255)$char(9679),$rgb(10,36,106)$char(9679))
$alignabs($add($muldiv($muldiv(100,%playback_time_seconds%,%length_seconds%),$mul($calcwidth($char(9679)),$sub($div(%_width%,$calcwidth($char(9679))),30)),100),78),$sub(%_height%,18),%_width%,%_height%,,)$rgb(166,202,240)$char(9679)

$alignabs($add($muldiv($muldiv(100,%playback_time_seconds%,%length_seconds%),$mul($calcwidth($char(9679)),$sub($div(%_width%,$calcwidth($char(9679))),30)),100),73),$sub(%_height%,23),%_width%,%_height%,,)$rgb(166,202,240)$char(9700)
$alignabs($add($muldiv($muldiv(100,%playback_time_seconds%,%length_seconds%),$mul($calcwidth($char(9679)),$sub($div(%_width%,$calcwidth($char(9679))),30)),100),83),$sub(%_height%,23),%_width%,%_height%,,)$rgb(166,202,240)$char(9701)
$alignabs($add($muldiv($muldiv(100,%playback_time_seconds%,%length_seconds%),$mul($calcwidth($char(9679)),$sub($div(%_width%,$calcwidth($char(9679))),30)),100),73),$sub(%_height%,13),%_width%,%_height%,,)$rgb(166,202,240)$char(9699)
$alignabs($add($muldiv($muldiv(100,%playback_time_seconds%,%length_seconds%),$mul($calcwidth($char(9679)),$sub($div(%_width%,$calcwidth($char(9679))),30)),100),83),$sub(%_height%,13),%_width%,%_height%,,)$rgb(166,202,240)$char(9698)
)
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-08-28 19:25:34
That's given me the idea of making the entire background of my track info panel a progress bar. I guess just moving a semi transparent white/grey png so that it eventually covers the screen. Something subtle and non-space consuming.
Title: Track Info Panel with ability to change font
Post by: nerrad on 2006-08-28 19:42:07
I'm loving this Track Info Panel Mod. Thanks for it!
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-29 03:53:13
thats for doing the wiki page guys  should make it easier for people to find information.

I should have an updated version tomorrow with some new features (and maybe fix that crashing bug too)
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-08-29 03:58:45
what about a config save/load section...
this would really really improve the mod and I would change over straight away from the original track info
Title: Track Info Panel with ability to change font
Post by: SwiftBass on 2006-08-29 04:45:16
one time my trackinfo box was following my cursor like my album art box usually does.  Back then i didnt want it like that, but now I have an idea and I want it to follow the cursor just like my albumart does.  Is it string that I have to type into the infobox config?
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-08-29 06:49:53
just double click on the panel to switch between modes..
if you have coded it you can have the current info displayed as follow mode or playing mode or whatever its called..
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-29 12:07:38
thats for doing the wiki page guys  should make it easier for people to find information.
I should have an updated version tomorrow with some new features (and maybe fix that crashing bug too)

Perhaps (improbable) it is not too late for some Ideas
- There is and has allways been a box to set the "minimum" height.
Please, could you add a field to set the minmium WIDTH ...?? (I neeeeeeeeeeeed !!)

- And it would be great if you would put a link to the WIKI in your starting post ...!!

- Something to calculate the image's original height & width (like there is for texts) could make things easier ... 

- Will it be possible to strech or jolt an image with the $imageabs-Function
(perhaps by setting an output-size e.g. $imageabs(X,Y,Direction,w,h,OPTIONS) ) ...??
---> Btw: Are there other "options" than "flow" for an image ...??

I dont know: -Would it be more "resource-gentle" (need a new dictonary) when there would exist a $function to scroll text ...?

- Whats up with my previously postet idea to create something like $alignabs wich $char(10)s wouldnt have influnce to other $alignset()s ...?? -Is it still "in the race" ??
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-08-29 12:20:38
I'd personally like to pull in text from an external source so I can have a sort of wiki panel for artists.
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-08-29 19:28:05
I have a strange bug showing up:

I have a simple track info panel with only %path% in, which should show the path, filename and extension for the song that is playing. This works fine for the files in:
k:\music\tag check
k:\music\to burn
k:\music\permanent\
F:\downloads - azureus\

But NOT - i.e. nothing at all shows up and any code in the box stops working, in these directories:

k:\music\permanent\ANY SUBDIR
F:\downloads - firefox\

K is a removable HDD and F is an internal one. This happens irrelevant of tags or nature of the mp3. Indeed, the SAME SONG in different directories introduced errors in the listed directories, whereas in the "safe" folders it everything was fine.

This is a rather peculiar bug.
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-29 23:19:29
I m asking silly:
Is it perhaps because the length of the text to be shown expands the Panel's size ... 
- You could test with a smaler font-size ('bout 3, or somewhat)

--> In this case you have to use the $alignabs-function:
Code: [Select]
$puts(Text,
$font(Arial Unicode MS,10,standart,) %path% )

$alignabs(0,0,$calcwidth($get(Text)),$calcheight($get(Text)),center,)
$get(Text)


Otherwise I have no Idea ...!!
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-30 01:00:44
Something I've been working on:
(http://img154.imageshack.us/img154/7053/trackinfouh6.png) (http://imageshack.us)
Top Section:
Code: [Select]
$font(Tahoma,7,shadow,233-233-233)
// Background
$imageabs(,,images\backdrop.png,)
$imageabs(116,,images\backdrop.png,)
$imageabs(232,,images\backdrop.png,)
$imageabs(348,,images\backdrop.png,)

// Labels
$alignabs(9,,%_width%,%_height%,,)$rgb(233,233,233)$char(91)$rgb(140,186,236)Title$rgb(233,233,233)$char(93)$rgb():
$alignabs(5,10,%_width%,%_height%,,)$rgb(233,233,233)$char(91)$rgb(140,186,236)Artist$rgb(233,233,233)$char(93)$rgb():

$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),
$alignabs(17,20,%_width%,%_height%,,)$rgb(233,233,233)$char(91)$rgb(140,186,236)IP$rgb(233,233,233)$char(93)$rgb():
$alignabs(10,30,%_width%,%_height%,,)$rgb(233,233,233)$char(91)$rgb(140,186,236)Port$rgb(233,233,233)$char(93)$rgb():
,
$alignabs(,20,%_width%,%_height%,,)$rgb(233,233,233)$char(91)$rgb(140,186,236)Album$rgb(233,233,233)$char(93)$rgb():
$alignabs(4,30,%_width%,%_height%,,)$rgb(233,233,233)$char(91)$rgb(140,186,236)Track$rgb(233,233,233)$char(93)$rgb():
)

$alignabs($sub(%_width%,118),,%_width%,%_height%,,)$rgb(233,233,233)$char(91)$rgb(140,186,236)Codec$rgb(233,233,233)$char(93)$rgb():
$alignabs($sub(%_width%,130),10,%_width%,%_height%,,)$rgb(233,233,233)$char(91)$rgb(140,186,236)Channels$rgb(233,233,233)$char(93)$rgb():
$alignabs($sub(%_width%,119),20,%_width%,%_height%,,)$rgb(233,233,233)$char(91)$rgb(140,186,236)Bitrate$rgb(233,233,233)$char(93)$rgb():
$alignabs($sub(%_width%,127),30,%_width%,%_height%,,)$rgb(233,233,233)$char(91)$rgb(140,186,236)Samples$rgb(233,233,233)$char(93)$rgb():

// Data
$if(%isplaying%,
$alignabs(45,,%_width%,%_height%,,)[%title%]
$alignabs(45,10,%_width%,%_height%,,)[%artist%]

$alignabs($sub(%_width%,74),,%_width%,%_height%,,)$if2(%codec% ,)$if2($char(40)$caps($info(encoding))$char(41),)
$alignabs($sub(%_width%,74),10,%_width%,%_height%,,)$if2($if($info(mp3_stereo_mode),$caps($info(mp3_stereo_mode)),$info(channels)),)
$alignabs($sub(%_width%,74),20,%_width%,%_height%,,)$if2(%bitrate%kbps ,)$if($strcmp($upper($info(codec)),MP3),$if2($info(extrainfo),CBR),)
$alignabs($sub(%_width%,74),30,%_width%,%_height%,,)$if2($div(%samplerate%,1000)$ifequal($div($mod(%samplerate%,1000),100),0,,.$div($mod(%samplerate%,1000),100))KHz,)

$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),
$alignabs(45,20,%_width%,%_height%,,)$substr(%path%,8,$if2($add($strrchr($substr(%path%,8,$len(%path%)),:),6),$len(%path%)))
$alignabs(45,30,%_width%,%_height%,,)$if($strcmp($strchr(%path%,:),$strrchr(%path%,:)),$rgb(128,128,128)n/a,$substr(%path%,$add($strrchr(%path%,:),1),$sub($len(%path%),1)))

$alignabs($div($sub(%_width%,$calcwidth(%path%)),2),50,%_width%,%_height%,,)$if2(%url%,%path%)
,
$alignabs(45,20,%_width%,%_height%,,)[%album%][ $char(40)%date%$char(41)]
$alignabs(45,30,%_width%,%_height%,,)[$char(91)%cdid%$char(93) ][Track %tracknumber% of %totaltracks%]

$alignabs($div($sub(%_width%,$calcwidth(%filename_ext%)),2),50,%_width%,%_height%,,)%filename_ext%
)

,)

// Dividers
$font(,,normal,)
$puts(divider.half,$repeat(-,$div(%_width%,6)))
$puts(divider,$transition($get(divider.half),$rgb(10,36,106),$rgb(233,233,233))$transition($get(divider.half),$rgb(233,233,233),$rgb(10,36,106)))
$alignabs(2,40,%_width%,%_height%,,)$get(divider)
$alignabs(2,60,%_width%,%_height%,,)$get(divider)

//Overlay
$imageabs(0,0,images\black.top.left.png,)
$imageabs($sub(%_width%,50),0,images\black.top.right.png,)
Bottom Section:
Code: [Select]
$font(Tahoma,7,shadow,233-233-233)
// Background
// Background
$imageabs(,,images\backdrop.png,)
$imageabs(116,,images\backdrop.png,)
$imageabs(232,,images\backdrop.png,)
$imageabs(348,,images\backdrop.png,)

// Labels
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),
,
$alignabs(25,$sub(%_height%,40),%_width%,%_height%,,)$rgb(233,233,233)$char(91)$rgb(140,186,236)Rating$rgb(233,233,233)$char(93)$rgb(233,233,233):
$alignabs($add($div(%_width%,2),20),$sub(%_height%,40),%_width%,%_height%,,)$rgb(233,233,233)$char(91)$rgb(140,186,236)Tags$rgb(233,233,233)$char(93)$rgb(233,233,233):
)

// Data
$if(%isplaying%,
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),
,
$alignabs(85,$sub(%_height%,40),%_width%,%_height%,,)
$if(%rating%,$char(40)%rating%$char(41) $progress2(%rating%,10,10,$rgb()$char(9733) ,$rgb(128,128,128)$char(9734) )
,$rgb(128,128,128)~ Song Not Rated ~)

$alignabs($add($div(%_width%,2),60),$sub(%_height%,40),%_width%,%_height%,,)$if($strstr($info(tagtype),id3v1),$rgb(0,128,255)$char(10004)$rgb(233,233,233),$rgb(255,0,128)$char(10008)$rgb(128,128,128)) ID3v1
$alignabs($add($div(%_width%,2),110),$sub(%_height%,40),%_width%,%_height%,,)$if($strstr($info(tagtype),id3v2),$rgb(0,128,255)$char(10004)$rgb(233,233,233),$rgb(255,0,128)$char(10008)$rgb(128,128,128)) ID3v2
$alignabs($add($div(%_width%,2),160),$sub(%_height%,40),%_width%,%_height%,,)$if($strstr($info(tagtype),apev2),$rgb(0,128,255)$char(10004)$rgb(233,233,233),$rgb(255,0,128)$char(10008)$rgb(128,128,128)) APEv2
)
,)

// Progress Bar
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),
,
$alignabs(2,$sub(%_height%,18),%_width%,%_height%,,)$if(%_isplaying%,Progress $rgb(128,128,128)$char(40)$rgb(233,233,233)$div($mul(%_time_elapsed_seconds%,100),%_time_total_seconds%)'%'$rgb(128,128,128)$char(41)$rgb(233,233,233):)
$alignabs($sub(%_width%,$add($calcwidth(%playback_time% $char(47) %length%),4)),$sub(%_height%,18),%_width%,%_height%,,)$if(%playback_time%,%playback_time%$if2($rgb(128,128,128) $char(47) $rgb(233-233-233)%length%,),)$char(10)
$alignabs(80,$sub(%_height%,18),%_width%,%_height%,,)$progress2(%playback_time_seconds%,%length_seconds%,$sub($div(%_width%,$calcwidth($char(9679))),30),$rgb(0,128,255)$char(9679),$rgb(10,36,106)$char(9679))

$puts(crosshair.x,$add($muldiv($muldiv(100,%playback_time_seconds%,%length_seconds%),$mul($calcwidth($char(9679)),$sub($div(%_width%,$calcwidth($char(9679))),30)),100),78))
$alignabs($get(crosshair.x),$sub(%_height%,18),%_width%,%_height%,,)$rgb(166,202,240)$char(9679)
$alignabs($sub($get(crosshair.x),5),$sub(%_height%,23),%_width%,%_height%,,)$rgb(166,202,240)$char(9700)
$alignabs($add($get(crosshair.x),5),$sub(%_height%,23),%_width%,%_height%,,)$rgb(166,202,240)$char(9701)
$alignabs($sub($get(crosshair.x),5),$sub(%_height%,13),%_width%,%_height%,,)$rgb(166,202,240)$char(9699)
$alignabs($add($get(crosshair.x),5),$sub(%_height%,13),%_width%,%_height%,,)$rgb(166,202,240)$char(9698)
)

// Dividers
$font(,,normal,)
//$puts(divider,$repeat(-,$div(%_width%,3)))
$puts(divider.half,$repeat(-,$div(%_width%,6)))
$puts(divider,$transition($get(divider.half),$rgb(10,36,106),$rgb(233,233,233))$transition($get(divider.half),$rgb(233,233,233),$rgb(10,36,106)))
$alignabs(2,$sub(%_height%,30),%_width%,%_height%,,)$get(divider)
$alignabs(2,$sub(%_height%,50),%_width%,%_height%,,)$get(divider)
$alignabs($div(%_width%,2),$sub(%_height%,40),%_width%,%_height%,,)$rgb(233,233,233)||

//Overlay
$imageabs(0,$sub(%_height%,100),images\black.bottom.left.png,)
$imageabs($sub(%_width%,50),$sub(%_height%,100),images\black.bottom.right.png,)
Images Used:
(http://img406.imageshack.us/img406/6296/backdroper7.png) (http://imageshack.us)  (http://img154.imageshack.us/img154/8228/blacktopleftax8.png) (http://imageshack.us)  (http://img154.imageshack.us/img154/2012/blacktoprightrj9.png) (http://imageshack.us)  (http://img154.imageshack.us/img154/6633/blackbottomleftsl8.png) (http://imageshack.us)  (http://img228.imageshack.us/img228/7379/blackbottomrightgc0.png) (http://imageshack.us)
backdrop.png, black.top.left.png, black.top.right.png, black.bottom.left.png, black.bottom.right.png

Everything seems to be going according to plan however the center panel, which is just a standard specturm analyser panel, appears to pause for a split second when the other panels do their refresh every second.  Is this because I have many other trackinfo plugins running too? Is this because I'm developing this in a tab? Or am I simply beginning to overload the plugin? I've noticed that if I comment out the transition dividers the performance is a bit better.

EDIT: Cleaned up code, removed transition on dividers, significantly reduced resource consumption.
EDIT: Added transitions again and removed divider shadow. Also updated backdrop image to a smaller tiled version.
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-30 01:56:12
Looks interesting ...!!

- Can you post all of th images, please ??
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-30 02:32:48
All 5 images are linked above, just right click on them and save them with the names listed. The first one you'll have to left click first because it got thumbnailed.
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-30 03:24:21
Oh, god damm it !!

- I didnt realized there were 5 to see ... -I just "saw" 3 ...!!

THNX 4 illumination 

*EDIT *

- But they dont show up in Trackinfo ...!!
(I m sure about the directory)

That's sad to see, 'cause in them i was most iterested, since your code is going to crash my system if i dont "disable" it ...!! o0
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-30 04:49:01
wow I just noticed foobar is eating almost 300MB of ram when using my code... I better figure out wtf is going on and clean it up... I tweaked the code little but it's still running away with resources.  this also probably explains the poor performance from the spectrum analyser.

EDIT: After some experimenting there appears to be a problem using $transition(). Maybe the panel has trouble parsing all those color codes? I'll have to hammer away at it later and figure out what is going on.

EDIT: Updated code above, removed transitions and optimized some code, dropped it down to 60MB. Hopefully now it wont crash an average system :)
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-08-30 06:13:54
60mb is very acceptable imo
thats the bets i have been able to achieve without gutting my setup
Title: Track Info Panel with ability to change font
Post by: Infernus on 2006-08-30 11:19:07
really interesting this component  The font stuff is nice!
But I have to use old version because of the "scrolling" feature, to control fb with a remote.
Is it going to be implemented in near future?
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-30 13:12:17
...
But I have to use old version because of the "scrolling" feature, to control fb with a remote.
...

I dont know what you mean ...!! ->FB -> Remote -> SCROLL ...?? o0
Title: Track Info Panel with ability to change font
Post by: Infernus on 2006-08-30 13:31:15
Scrolling lines in trackinfo mod panel.
Whether it will be implemented in near future or not.
Need this for a info-panel with big fonts to be able to read whats track is actually selected when controlling fb with my remotecontrol.
Imagin you are in bed and your monitor is 5m in front of you....hehe
remote control -> trackinfopanel -> big letters -> scrolling
better?
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-08-30 13:43:57
@ Infernus:
So, if you mean scrolling horizontaly, perhaps u want THIS (http://www.hydrogenaudio.org/forums/index.php?showtopic=47630&st=0&#entry423365) ...??

__________________________________________________________________________________________________

@terrestrial:

A Question:

The #LINEHEIGHT, n#-Stuff is not working inside the parameters of other $funktions, since it's comma seems to take influence to the surounding $funktion ...!!
So the following codes (for example) will occur errors:
Code: [Select]
$put(Title,
%title%#LINEHEIGHT,3#$char(10)%title%
)

$if(%title%
,%title%#LINEHEIGHT,3#$char(10)%title%
,)

----> Couldn't this #LINEHEIGHT, n# be converted into something like $lineheight(n) in one of the next versions ...??
Title: Track Info Panel with ability to change font
Post by: peercortsa on 2006-08-31 05:41:21
here is what ive been workin on today, trying to get a pseudo-albumart panel inside of the trackinfo panel, so none of the text formatting and placement of stuff is completely done hence the crappy font colors to where u cant see them well lol:
(http://www.ihateyou2.com/new_s.jpg) (http://www.ihateyou2.com/new.jpg)
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-31 05:51:49
peercortsa: did you discover a way to resize the images? or did you pre-size them to fit the panel?
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-31 06:18:37
Quote
Feature request: 1 second refresh also when not playing.


Reason: I'd like to display the system time. foo_cwb_hooks makes this possible, but the trackinfo panel does only refresh when playing.

Quote
Perhaps (improbable) it is not too late for some Ideas
- There is and has allways been a box to set the "minimum" height.
Please, could you add a field to set the minmium WIDTH ...?? (I neeeeeeeeeeeed !!)


Just curious, but why?

Quote
- Will it be possible to strech or jolt an image with the $imageabs-Function
(perhaps by setting an output-size e.g. $imageabs(X,Y,Direction,w,h,OPTIONS) ) ...??
---> Btw: Are there other "options" than "flow" for an image ...??


not quite yet. I will eventually add support for .jpgs and other file formats, and for resizing also.

Quote
I dont know: -Would it be more "resource-gentle" (need a new dictonary) when there would exist a $function to scroll text ...?


with the update time set a 1 second, there wouldn't be a significant difference

Quote
- Whats up with my previously postet idea to create something like $alignabs wich $char(10)s wouldnt have influnce to other $alignset()s ...?? -Is it still "in the race" ??


It's on the todo list  I've been more focused on cleaning up some bugs / rewriting some code up till now.

Quote
I'd personally like to pull in text from an external source so I can have a sort of wiki panel for artists.


hmmm.... something like $import(blah.txt)... interesting idea. I will add it to the todo list.

Quote
But I have to use old version because of the "scrolling" feature, to control fb with a remote.
Is it going to be implemented in near future?


sorry, no "native" scrolling any time soon. its towards the bottom of the todo list.

Quote
The #LINEHEIGHT, n#-Stuff is not working inside the parameters of other $funktions, since it's comma seems to take influence to the surounding $funktion ...!!


anything using # is "unofficial" and not finished yet. However, you can put it in single quotes (eg '#LINEHEIGHT,n#') to not mess up other functions.

************************************

I've uploaded a new version. Mostly some fixes and a rewrite of some code. Please let me know if the old bugs / crashes / glitches still show up with the new version.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-31 07:08:22
I tried the new update and all seems well except I'm still having trouble with the transition.  To re-create this bug set up a vertical splitter with a spectrum analyser and trackinfo mod.  for trackinfo mod set the padding to 0 and use this code:
Code: [Select]
$font(Tahoma,7,shadow,233-233-233)
$puts(divider.half,$repeat(-,$div(%_width%,6)))
$puts(divider,$transition($get(divider.half),$rgb(10,36,106),$rgb(233,233,233))$transition($get(divider.half),$rgb(233,233,233),$rgb(10,36,106)))
$alignabs(2,$sub(%_height%,30),%_width%,%_height%,,)$get(divider)
$alignabs(2,$sub(%_height%,40),%_width%,%_height%,,)$get(divider)
$alignabs(2,$sub(%_height%,50),%_width%,%_height%,,)$get(divider)
$alignabs(2,$sub(%_height%,60),%_width%,%_height%,,)$get(divider)

If you enable update every second, you will notice that the spectrum analyser slightly pauses every second.  The pause increases more and more every time the $get(divider) is used and appears to be linked to the use of $transition(). If the update every second is disabled then the pauses go away.  Does this component have trouble parsing all the color codes generated by the $transition()? Is there a better approach I should use?
Title: Track Info Panel with ability to change font
Post by: ...Just Elliott on 2006-08-31 09:47:50
Using
Code: [Select]
$font(terminal,15,shadow,255-255-255)$char(219)
(even replacing shadow with normal) does nothing. This is essential for my progress bar code.  Any ideas?
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-08-31 13:29:36
...Just Elliott, i would say that's the bug i've experienced. maybe related to locales / codepages and/or internal wide char conversions terrestrial is using. i can confirm this bug still being present in the latest version ...

others, simple progress bar made with $drawrect:

Code: [Select]
$padding(0,0)
$drawrect(,,,10,brushcolor-null pencolor-0-0-0)

$puts(progress,$muldiv(%playback_time_seconds%,$sub(%_width%,4),%length_seconds%))

$ifgreater($get(progress),0,
$padding(2,2)$drawrect(,,$get(progress),6,brushcolor-0-0-0 pencolor-null),)

and you can 'nest' $drawrect using $padding:

Code: [Select]
$drawrect(,,,,pencolor-0-0-0 alpha-80)
$padding(5,5)
$drawrect(,,,,pencolor-0-0-0 alpha-80)
$padding(5,5)
$drawrect(,,,,pencolor-0-0-0 alpha-80)

.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-08-31 17:17:15
How come this plugin is now called "track info mod" in the layout treeview. This has messed up all my settings. I think this should be named as before only track info panel. In my opinion this is the official track info panel plugin. I always rename the dll without _mod at the end.
Title: Track Info Panel with ability to change font
Post by: pepoluan on 2006-08-31 18:34:49
How come this plugin is now called "track info mod" in the layout treeview. This has messed up all my settings. I think this should be named as before only track info panel. In my opinion this is the official track info panel plugin. I always rename the dll without _mod at the end.
Because there's another trackinfo panel, the original one, which is still being maintained. This one is totally different, and not 100% compatible with the original trackinfo.

Please do not rename the .dll's yourself; it is named that way for a reason.

Not the least: The quickly progressing plugin updater utility for foobar2000.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-31 18:59:08
I tried the new update and all seems well except I'm still having trouble with the transition.  To re-create this bug set up a vertical splitter with a spectrum analyser and trackinfo mod.  for trackinfo mod set the padding to 0 and use this code:
Code: [Select]
$font(Tahoma,7,shadow,233-233-233)
$puts(divider.half,$repeat(-,$div(%_width%,6)))
$puts(divider,$transition($get(divider.half),$rgb(10,36,106),$rgb(233,233,233))$transition($get(divider.half),$rgb(233,233,233),$rgb(10,36,106)))
$alignabs(2,$sub(%_height%,30),%_width%,%_height%,,)$get(divider)
$alignabs(2,$sub(%_height%,40),%_width%,%_height%,,)$get(divider)
$alignabs(2,$sub(%_height%,50),%_width%,%_height%,,)$get(divider)
$alignabs(2,$sub(%_height%,60),%_width%,%_height%,,)$get(divider)

If you enable update every second, you will notice that the spectrum analyser slightly pauses every second.  The pause increases more and more every time the $get(divider) is used and appears to be linked to the use of $transition(). If the update every second is disabled then the pauses go away.  Does this component have trouble parsing all the color codes generated by the $transition()? Is there a better approach I should use?

can you try removing the shadow from the font and see if it helps any?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-08-31 19:03:43
removing the shadow definitely helps, thanks. i think i can live with this :)

EDIT: Updated above post with new code to remove the shadow and reinstate the transition.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-08-31 19:44:17
I counted about ~380 color transitions (with a relatively narrow width), and with the shadow, that means 380 separate shadows to be drawn. Shadows are relatively more expensive to draw than plain text hence the excessive cpu usage.

I need to optimize things to draw one large shadow instead of 380 separate ones- which should be much faster I think.
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-09-01 11:22:33
@terrestrial:
I know its unofficial, YET ... but:
Code: [Select]
$put(Title,%title%(#LINEHEIGHT,5#)$char(10)%title% )
like you said to do, is not working as expected...!!
-->Though its not disturbing surrounding $funktions, but it shows up %title% only once, and swallows the rest comming after ...

I just wanted to report ...!! (hope, its becomming official, soon  )
However, THANX for the help with it !!
(and for the GREAT previous Improvements to this Component, of course ...!! -->[as a "thnx"-update  ] )
Title: Track Info Panel with ability to change font
Post by: ...Just Elliott on 2006-09-02 18:37:48
$font() is returning UNKNOWN FUNCTION now... I didn't do anything! Any help?

edit: fixed
Title: Track Info Panel with ability to change font
Post by: iamanalog on 2006-09-03 04:42:19
for some reason im getting this error..

Quote
Failed to load DLL: foo_uie_trackinfo_mod.dll
Reason: This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem.


im reinstalled a couple times. right now i have foobar 9.3.1 with the latest Columns UI (0.1.3 beta 1v5). the only other things installed right now are the main plugins that come with foobar, infact this in a fresh install
Title: Track Info Panel with ability to change font
Post by: acedriver on 2006-09-03 05:27:20
for some reason im getting this error..

read wiki (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_(foo_uie_trackinfo_mod)#Installation)
Title: Track Info Panel with ability to change font
Post by: iamanalog on 2006-09-03 05:54:13
derrrrr i feel retarded, thank you.
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-09-03 10:50:12
unabatedshagie - i'm not really using it in my main foobar, only testing it for time being. my testing foobar looks like this right now:

(http://mazy.johanka.cz/my_pics/temp/foobar/trackinfo-5.png)

Squeller - you can put the old track info panel or the mod (and rename it's dll) back and recover these settings. the new version (as mentioned in the readme and in my previous post) is distinct from the old one and doesn't take over its settings.

as for images - well 32-bit pngs with alpha channel work here, i think that bmps with 256-color palette should work too. imho what you're experiencing is that refresh / update problem i've mentioned. try using the formatting snippet i've posted above.



Mazy can you please give me a code sample where you have the large pale background text and then other text infront... with the overlay... I have any like this but all this new coding is very trickey for me to work out...

I wish this had a drag and drop gui interface would make much easier...
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-09-03 11:47:56
Code: [Select]
$alignabs(0,0,%_width%,%_height%,left,top)
$font(Lucida Sans Unicode,30,bold,224-223-227)Back

$alignabs(0,0,%_width%,%_height%,right,top)
$font(Lucida Sans Unicode,30,bold,224-223-227)ground


$alignabs(0,20,%_width%,%_height%,center,top)
$font(Lucida Sans Unicode,15,boldglow-,)$rgb(255,255,255)Foreground
Maybe this and the Wiki (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29) will help you to figure out how it works ...??
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-09-03 13:12:26
Is it perhaps because the length of the text to be shown expands the Panel's size ...

Strange, this was the problem but it still applies when using the %path% tag. For instance, when using something like this $directory(%path%,4) the output is usually just "Music" folder and is short and should appear no matter what. However if %path% is too long for the panel, even though it itself is not being used, then nothing shows at all.
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-09-03 14:37:49
Did u try the $alignabs-"solution" , I posted there ...??

If it works then, perhaps put a "#SHADE#" before the "$get(Text)"
... and see what happens  !!
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-09-03 15:05:26
thanks for the help sw!ng but right after I posted I worked out how to do it...
seems my problem now is after using a relative position on a horizontal line I want another word text type to appear on the same line with a tab spacing... ie so that if the first tag is longer it dynamically moves/shifts it to the right

at the momanet I have to user absolute values///
any ideas perhaps i can set an x position based on the length of thetag before or somethign like that

ok so how do i user the following functions to achieve what I want.
$calcwidth(Text1)
$calcheight(Text1)

------------
also i know that this version of track info doesnt have the elipses ending for lines of text that go to long so what should I do for when I have a track thats simply too long? at the moment its carrying over to the next line and stuffing everything up

*** UPDATE - fixed myself see the subsrt stuff pretty useful ***
-------------
Here is what I have come up with so far
Code: [Select]
// Info Color e.g. %tag%
$puts(info,$font(hooge 05_55 Cyr2,36,,75-115-150))

// Info Color e.g. "Title"
$puts(title,$font(arial,14,,21-38-58))

// Set Rating character
$puts(ratingchar,$font(wingdings,36,shadow,12-38-58)'«')
$puts(rating,$font(wingdings,36,shadow,245-245-245)'«')

$alignabs(1,,%_width%,%_height%,left,)$get(info)$if($greater(13,$len(%artist%)),%artist%,$substr(%artist%,1,14)...)
$alignabs(5,36,%_width%,%_height%,left,)$get(title)ARTIST
$alignabs(1,48,%_width%,%_height%,left,)$get(info)$if($greater(13,$len(%title%)),%title%,$substr(%title%,1,14)...)
$alignabs(5,84,%_width%,%_height%,left,)$get(title)SONG
$alignabs(1,96,%_width%,%_height%,left,)$get(info)$if($greater(13,$len(%album%)),%album%,$substr(%album%,1,14)...)
$alignabs(5,132,%_width%,%_height%,left,)$get(title)ALBUM
$alignabs(1,144,%_width%,%_height%,left,)$get(info)$if($greater(13,$len(%genre%)),%genre%,$substr(%genre%,1,14)...)
$alignabs(5,180,%_width%,%_height%,left,)$get(title)GENRE
//playcount
$alignabs(-1,144,%_width%,%_height%,right,)$get(info)%play_count%
$alignabs(-5,180,%_width%,%_height%,right,)$get(title)PLAYED
//Tracks
$alignabs(1,192,%_width%,%_height%,left,)
$get(info)%tracknumber%$if(%totaltracks%,$get(head)/$get(info)%totaltracks%,)
$alignabs(5,228,%_width%,%_height%,left,)$get(title)TRACKS
//Rating
$alignabs(1,240,%_width%,%_height%,left,)
$if(%rating%,$repeat($get(ratingchar),%rating%)
$repeat($get(rating),$sub(5,%rating%)),$repeat($get(rating),5))
$alignabs(5,276,%_width%,%_height%,left,)$get(title)RATING
//disc
$alignabs(-1,192,%_width%,%_height%,right,)$get(info)
$if($and(%discnumber%,%totaldiscs%), $get(head)[$get(info)%discnumber%][$get(head)/$ge

t(info)%totaldiscs%]$alignabs(-5,224,%_width%,%_height%,right,)$get(title)DISC,)


//year
$alignabs(-1,-3,%_width%,%_height%,right,bottom)$get(info)%date%
$alignabs(-5,0,%_width%,%_height%,right,bottom)$get(title)YEAR

(http://www.chriscombe.com/pics/fb098.png)
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-09-03 16:43:13
Code: [Select]
$puts(XX,
50)

$puts(YY,
100)

$puts(Text1,
$font(Arial,10,boldshadow,)Text A)

$puts(Text2,
$font(Arial,10,boldshadow,)Text B)


$alignabs($get(XX),$get(YY),%_width%,%_height%,left,top)
$get(Text1) 

$alignabs($add($get(XX),$calcwidth($get(Text1)),15),$get(YY),%_width%,%_height%,left,top)
$get(Text2) 
And as a little BonBon for you (since you nearly fixed it by yourself) ...:
Code: [Select]
$ifgreater($len(%artist%),14,$left(%artist%,11)'...',%artist%)
(or werent you anoyed by those "..." even if the title was short ...??)
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-09-03 17:13:48
thanks for the assitance.. I supose your way is a little less typing...
now to try out the other code you provided for me

what do you think of my first go anyways?
Title: Track Info Panel with ability to change font
Post by: kockroach on 2006-09-03 18:16:08
This is an awesome change to the track info panel.  Does it only display images from a directory within the main fb2k program folder?  Or can you have a path to say the "folder.jpg" within the music folder on another drive?  Better yet, can it display album art embedded in a tag?

Thanks.

Edit....figuring I just saw the wiki....I have my answer.  So instead, are either of those two image options planned?  It would be cool to pull the image using %path%, so that one could pull the image from the music file's directory.  Essentially combining the album art and track info panels together.
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-09-03 19:27:21
I want to find out whether the full path contains a specific folder and then assign an image to show depending on the result. So if it's in the "to burn" folder, show a nero image for instance. The code I use is basically:

Code: [Select]
$if($strstr(%path%, 'burn'), YES, NO)


But this doesn't work.

Here's a fresh idea: Clickable items that can be assigned to foo_run or standard foobar actions. I have programmed a little alert image to show if the tags aren't complete - clicking this image could bring up the properties dialog (I have this on shortcut anyway but it's a neat idea).
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-09-04 04:31:58
first of all, there should be some sort of %_width% and %_height% which respect padding (and any parent frame like when using $alignabs).

when using $drawrect with 0 for width or height, it gets substituted for the maximal value respecting padding. imho this could make some things harder to make (see my progress bar example), as you can't draw with one dimension set to zero and expect it not to draw ... i think that zero should mean no width or height. you can substitute only missing parameters (i.e. not $drawrect(,,0,0,something), but $drawrect(,,,,something)).

another issue with $drawrect is that when using alpha blending by alpha-number like $drawrect(,,,,pencolor-0-0-0 alpha-80), it uses only pencolor to draw the rectangle. i would expect it to draw the rectangle as normal with both pencolor and brushcolor. or - to use brushcolor.

i really like that we can use system colors now, and i would like to see some other changes to the color system. for example when given only one value (like brushcolor-50 or $font(,,,50)) to interpret it as gray color (i.e. expand it to 50-50-50). also specifying alpha value as 4th color component would be nice (brushcolor-255-0-0-100).

padding. imho it should be relative to the actual frame. what i mean is that after using $alignabs to create new frame for text, $padding or $drawrect imho should relate to this frame. like $alignabs(10,10,10,10)$padding(1,1)$drawrect(,,,,brushcolor-0-0-0) should be the same as $drawrect(11,11,8,8,brushcolor-0-0-0). maybe you could add something like $drawrectabs.

anyway, sorry for my whining and *thank you* for this great plugin. p.s. i would like to be able to draw that progressbar for playing item in your foo_uie_single_column_playlist .


padding was just a quick hack to space text a bit better;) I will make the behavior more consistent though. And, you should be able to do that progressbar with the playlist now.

@terrestrial:
I know its unofficial, YET ... but:
Code: [Select]
$put(Title,%title%(#LINEHEIGHT,5#)$char(10)%title% )
like you said to do, is not working as expected...!!


try this:

Code: [Select]
$put(Title,%title%'#LINEHEIGHT,5#'$char(10)%title%)


Here's a fresh idea: Clickable items that can be assigned to foo_run or standard foobar actions. I have programmed a little alert image to show if the tags aren't complete - clicking this image could bring up the properties dialog (I have this on shortcut anyway but it's a neat idea).


Clickable buttons are on the todo list
Title: Track Info Panel with ability to change font
Post by: vonmeth on 2006-09-04 05:38:04
I want to find out whether the full path contains a specific folder and then assign an image to show depending on the result. So if it's in the "to burn" folder, show a nero image for instance. The code I use is basically:

Code: [Select]
$if($strstr(%path%, 'burn'), YES, NO)


But this doesn't work.

Here's a fresh idea: Clickable items that can be assigned to foo_run or standard foobar actions. I have programmed a little alert image to show if the tags aren't complete - clicking this image could bring up the properties dialog (I have this on shortcut anyway but it's a neat idea).


Try instead of YES or NO, for yes put what command you wantt to execute, and then in place of no, what command you want to run, or put nothin so the next thing after it runs if it does not contain the words in the first if strstr match.

This will just work (as you probably already know) if 'burn' is contained in the path name. If you want put "to burn" to further guard against false postives. I believe it should work after that; though I suck at coding 
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-09-04 08:10:05
It only ever says NO though, how will putting in the image code work? Above is merely a test case and if that does not work then putting in the code never will.
But I tried it anyway:
Code: [Select]
$if($strstr(%path%, 'k'), $imageabs(10,10,images/star-1.png,),)

Does not work when it should, not even for a single character test.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-04 09:14:24
FofR: have you tried removing the space in your $strstr() statement because I think it's being processed as part of the string to search for.
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-09-05 06:52:07
Questions:

1. Any plans to re-implement line ending modes?
    AT LEAST there should be a non wrapping mode.

2. Why did you again choose this strange syntax (e.g. #LINEHEIGHT,5#) instead of $function(args)?
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-09-05 08:12:41
FofR: have you tried removing the space in your $strstr() statement because I think it's being processed as part of the string to search for.

Thanks that worked. Whitespace always screws me over.
Title: Track Info Panel with ability to change font
Post by: cvax on 2006-09-05 18:17:58
hey. is there anyway to change the shadow color? when i use the option it only lets me use a black shadow
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-05 20:52:52
hey. is there anyway to change the shadow color? when i use the option it only lets me use a black shadow

just specify it after the shadow statement like this: shadow-r-g-b, where r-g-b part specifies color.

edit: seems i was wrong, that works only for glow. i will post more info about $font soon ...
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-05 23:37:11
$font examples:

(http://mazy.johanka.cz/my_pics/temp/foobar/trackinfo-font-example.png)

tagz:

Code: [Select]
// framework
$drawrect(,,,,brushcolor-255-255-255 pencolor-null)$padding(5,5)
$puts(index,$font(,8,nocleartype glow- glowblur-0 glowexpand-1 fixedwidth-6,255-255-255))
$put(font,$font(Calibri,9,bold,100-100-100))
$font(,10,,)$alignrel(,)
$puts(code,$alignrel(right,)$get(font))
$puts(end,'#LINEHEIGHT,18##LINE,#'$char(10)'#LINEHEIGHT,5#' $char(10)$alignset()$alignrel(,))
// examples
$get(index) 1 
$font(,,bold italics underline strikeout,50-150-50)Testing String
$get(code)'$font(,,bold italics underline strikeout,50-150-50)'$get(end)
//
$get(index) 2 
$font(,,nocleartype,50-150-50)Testing String
$get(code)'$font(,,nocleartype,50-150-50)'$get(end)
//
$get(index) 3 
$font(,,uppercase,50-150-50)Testing String
$get(code)'$font(,,uppercase,50-150-50)'$get(end)
//
$get(index) 4 
$font(,,lowercase,50-150-50)Testing String
$get(code)'$font(,,lowercase,50-150-50)'$get(end)
//
$get(index) 5 
$font(,,textblur-5,50-150-50)Testing String
$get(code)'$font(,,textblur-5,50-150-50)'$get(end)
//
$get(index) 6 
$font(,,textalpha-128,50-150-50)Testing String
$get(code)'$font(,,textalpha-128,50-150-50)'$get(end)
//
$get(index) 7 
$font(,,textexpand-1,50-150-50)Testing String
$get(code)'$font(,,textexpand-1,50-150-50)'$get(end)
//
$get(index) 8 
$font(,,fixedwidth-10,50-150-50)Testing String
$get(code)'$font(,,fixedwidth-10,50-150-50)'$get(end)
//
$get(index) 9 
$font(,,bold shadow,50-150-50)Testing String
$get(code)'$font(,,bold shadow,50-150-50)'$get(end)
//
$get(index)10 
$font(,,bold glow-20-100-20,100-200-100)Testing String
$get(code)'$font(,,bold glow-20-100-20,100-200-100)'$get(end)
//
$get(index)11 
$font(,,bold glow-20-100-20 glowalpha-50,100-200-100)Testing String
$get(code)'$font(,,bold glow-20-100-20 glowalpha-50,100-200-100)'$get(end)
//
$get(index)12 
$font(,,bold glow-20-100-20 glowblur-0,100-200-100)Testing String
$get(code)'$font(,,bold glow-20-100-20 glowblur-0,100-200-100)'$get(end)
//
$get(index)13 
$font(,,bold glow-20-100-20 glowblur-10,100-200-100)Testing String
$get(code)'$font(,,bold glow-20-100-20 glowblur-10,100-200-100)'$get(end)
//
$get(index)14 
$font(,,bold glow- glowexpand-0,200-255-200)Testing String
$get(code)'$font(,,bold glow- glowexpand-0,200-255-200)'$get(end)
//
$get(index)15 
$font(,,bold glow-20-100-20 glowexpand-2 glowblur-2,100-200-100)Testing String
$get(code)'$font(,,bold glow-20-100-20 glowexpand-2 glowblur-2,100-200-100)'$get(end)
// composite-1
$font(Calibri,20,,)
$alignabs(12,352,%_width%,%_height%,,)
$font(,,bold textblur-1 textexpand-6,80-196-239) foobar 2000
$alignabs(10,350,%_width%,%_height%,,)
$font(,,bold textblur-1 textexpand-6,80-196-239) foobar 2000
$alignabs(10,350,%_width%,%_height%,,)
$font(,,bold textblur-1 textexpand-5,255-255-255) foobar 2000 
$alignabs(10,350,%_width%,%_height%,,)
$font(,,bold textblur-2 textexpand-1,191-239-254) foobar 2000 
$alignabs(10,350,%_width%,%_height%,,)
$font(,,,80-196-239) foobar 2000
// composite-2
$font(Calibri,20,,)
$alignabs(161,351,%_width%,%_height%,,)
$font(,,bold,40-98-119) foobar 2000
$alignabs(159,349,%_width%,%_height%,,)
$font(,,bold,200-245-255) foobar 2000
$alignabs(160,350,%_width%,%_height%,,)
$font(,,bold,144-221-248) foobar 2000
// composite-3
$font(Calibri,20,,)
$alignabs(312,352,%_width%,%_height%,,)
$font(,,bold textblur-1 textexpand-1,80-196-239) foobar 2000
$alignabs(310,350,%_width%,%_height%,,)
$font(,,bold textblur-1 textexpand-1,80-196-239) foobar 2000
$alignabs(310,350,%_width%,%_height%,,)
$font(,,bold glow-255-255-255 glowexpand-0 glowblur-1,255-255-255) foobar 2000
there are some things to note and consider, like what are default values, how does $font behave with regards to $put/$puts/$get, $alignrel, $padding, $calcwidth/$calcheight etc.

default values for glow are glowexpand-2 and glowblur-2.

when using advanced effects antialiasing is disabled (even for alpha blending), there's limited rendering space etc. also following text affects the previous one, so you may need to add spaces or use $alignabs etc.

you can store and restore font settings using $put/$puts/$get like $puts(font,$font(Calibri,9,bold,100-100-100)). you should restore it after $alignrel, not before. also $calcwidth/$calcheight aren't affected by font settings set by using $get. they work using the last 'real' $font statement, even if it was one inside $puts.
Title: Track Info Panel with ability to change font
Post by: fr3ak on 2006-09-06 01:27:56
-deleted-
Title: Track Info Panel with ability to change font
Post by: cvax on 2006-09-06 01:49:38
VERY nice tips mazy. thanks a bunch. now i am wondering if it is possible to change to a different font when a certain character set is used? like for instance if i have a certain font that i thought looked great with regular english songs but it doesn't properly display korean or chinese i would like to be able to switch to another font in such a circumstance to avoid having the display show squares or other various gibberish.
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-09-06 07:10:31
awesome tips mazy will start playing around with them
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-09-06 16:36:01
Added font tips to the wiki page. Great stuff.
Title: Track Info Panel with ability to change font
Post by: sitemap on 2006-09-06 17:08:19
Is "update every second" the smallest possible update value?
I have a trackinfo progress bar and a status bar progress bar, when I fast forward a song, the status bar pb is instantly at the right position, the trackinfo pb takes a little longer for the same.
It's just a tiny little thing, but I'm just curious.
Thanks
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-06 17:49:58
well it should respond to seek event (rather than update even faster than every second).
Title: Track Info Panel with ability to change font
Post by: peercortsa on 2006-09-06 21:48:41
here is the new version of my panel, still workin on it:

(http://www.ihateyou2.com/foobar1s.jpg) (http://www.ihateyou2.com/foobar1.jpg)
Title: Track Info Panel with ability to change font
Post by: saberrider on 2006-09-07 16:19:07
Is there anyway to get trackinfo to retrieve data from a txt file?
I'd like to add something like a mini biography to some of my artists. I guess I could use the comment tag for this as well, but I'd prefer to have external file because I'd find it much easer to just edit an %artist%.txt instead.

If this isn't possible yet, I'd really like to see that in a coming release.
Title: Track Info Panel with ability to change font
Post by: tool++ on 2006-09-07 22:25:50
You could try abusing a lyrics panel into doing something like that.

I haven't had any experience with the available lyrics panels though so you're on yer own ;P

here is the new version of my panel, still workin on it:

[a href="http://www.ihateyou2.com/foobar1.jpg" target="_blank"]

Also you should try not to repeat information, it means you waste space. The artist/album are on the screen like 3/4 times...is that necessary?
Title: Track Info Panel with ability to change font
Post by: peercortsa on 2006-09-08 01:51:30
You could try abusing a lyrics panel into doing something like that.

I haven't had any experience with the available lyrics panels though so you're on yer own ;P


here is the new version of my panel, still workin on it:

[a href="http://www.ihateyou2.com/foobar1.jpg" target="_blank"]

Also you should try not to repeat information, it means you waste space. The artist/album are on the screen like 3/4 times...is that necessary?


oh no no no lol im just keeping those there for the mean time until i get all the necessary information into the one panel
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-09-08 02:47:21
Questions:

1. Any plans to re-implement line ending modes?
    AT LEAST there should be a non wrapping mode.

2. Why did you again choose this strange syntax (e.g. #LINEHEIGHT,5#) instead of $function(args)?


1) Eventually. Until then a non wrapping mode can be emulated using $alignabs

2) They're not "official" functions yet (maybe unfinished, etc). I think they were found by looking for stings in the binary


hey. is there anyway to change the shadow color? when i use the option it only lets me use a black shadow


I've added a SHADOWCOL option for the next version.

Is "update every second" the smallest possible update value?
I have a trackinfo progress bar and a status bar progress bar, when I fast forward a song, the status bar pb is instantly at the right position, the trackinfo pb takes a little longer for the same.
It's just a tiny little thing, but I'm just curious.
Thanks


well it should respond to seek event (rather than update even faster than every second).


Unfortunately I don't think there's a seek notification... (could have missed it though).
Title: Track Info Panel with ability to change font
Post by: ...Just Elliott on 2006-09-08 15:31:33
Hi, I'm using this code:

Code: [Select]
$align(left,top)%title%$char(10)
[%album%][ CD %discnumber%]$char(10)
[Track %tracknumber%$char(10)]
[%date%][ %genre%]

$align(right,top)%artist%$char(10)
$if(%rating%,Rated %rating%,Unrated)$char(10)
$if(%play_counter%,Played %play_counter% times,Never played)$char(10)
foobar2000
$padding(0,100)
$align(left,top)%_time_elapsed%$align(right,top)%length%
$padding(0,23)
$drawrect(,,,10,brushcolor-null pencolor-255-255-255)

$puts(progress,$muldiv(%playback_time_seconds%,$sub(%_width%,24),%length_seconds%))

$ifgreater($get(progress),0,
$padding(2,2)$drawrect(,,$get(progress),6,brushcolor-255-255-255 pencolor-null),)$align(top,left)

...but the time info doesn't display. If I move it upwards a bit, it works fine. I can't see any reason for it, it just... disappears.  Any ideas?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-08 15:53:27
I pasted your code into a fresh panel and it appears to be working fine for me as long as I'm not listening to online radio.. what exactly is supposed to be broken?
Title: Track Info Panel with ability to change font
Post by: ...Just Elliott on 2006-09-08 15:56:53
Above the progress bar, there is no time. it should be:

Code: [Select]
0:45                     1:43
[----                              ]
(bad example, but yeah). It's just the progress bar.

Edit:
Screeny.
(http://content.imagesocket.com/thumbs/screenyfoobarproblemdcd.PNG) (http://imagesocket.com/view/screenyfoobarproblemdcd.PNG)
Title: Track Info Panel with ability to change font
Post by: DIN1031 on 2006-09-08 16:29:20
Hi

Is there a way to add the Status info "Repeat Track", "Repeat Playlist", "Shuffle Playlist", "Default". Because i will add this to my track info so that i know that i enabled it.

Bye and Thx for any help.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-08 16:45:00
Elliott:
(http://img338.imageshack.us/img338/9756/testep9.png) (http://imageshack.us)
Your code appears to be working fine on my end.  Have you tried making another panel and pasting the code? Have you tried using a different font?  Is there more code being used in the panel than what you posted?
Try simplifying the code piece by piece until you can figure out the problem.  Start by just using the code that is giving you hassle:

Code: [Select]
$align(left,top)%_time_elapsed%$align(right,top)%length%
$padding(0,23)
$drawrect(,,,10,brushcolor-null pencolor-255-255-255)

$puts(progress,$muldiv(%playback_time_seconds%,$sub(%_width%,24),%length_seconds%))

$ifgreater($get(progress),0,
$padding(2,2)$drawrect(,,$get(progress),6,brushcolor-255-255-255 pencolor-null),)$align(top,left)

DIN1031:
This has been asked before and the conclusion was that there is no existing way to pull this information with standard scripting.
Title: Track Info Panel with ability to change font
Post by: ...Just Elliott on 2006-09-08 17:34:47
Tried a different font, no more code, and it happens with just the text and progress bar. It's like a cut off point. :/
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-08 17:41:08
I did notice that you are using a lot of $align(,top) functions.. specifically the top alignment has some anti-text collision routines and I notice from your screen shot that there possibly may not be enough room between the text and progress bar to fit your text.  Try using a smaller font or moving the progress bar further down.
Title: Track Info Panel with ability to change font
Post by: Ran Sagy on 2006-09-08 17:44:09
I suggest some clear-up on the syntax before jumping into new features. When comparing to Foobar's other scripting languages this one looks more complex and less understandable, Even for developers such as myself.
Title: Track Info Panel with ability to change font
Post by: ...Just Elliott on 2006-09-08 18:04:48
I did notice that you are using a lot of $align(,top) functions.. specifically the top alignment has some anti-text collision routines and I notice from your screen shot that there possibly may not be enough room between the text and progress bar to fit your text.  Try using a smaller font or moving the progress bar further down.

I tried moving the progress bar many, many pixels down - still nothing. It's really unexplicable. :/

Edit: as a Hacky Fix?, I used two $char(10)s and a lineheight to position it above. it looks lovely now

edit: scratch that... %isplaying% is returning ?. I didn't do anything... whoops?
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-09-09 00:09:03
Hi

Is there a way to add the Status info "Repeat Track", "Repeat Playlist", "Shuffle Playlist", "Default". Because i will add this to my track info so that i know that i enabled it.

Bye and Thx for any help.

DIN1031:
This has been asked before and the conclusion was that there is no existing way to pull this information with standard scripting.


I'm quite sure cwbowron's foo_cwb_hooks (http://www.hydrogenaudio.org/forums/index.php?showtopic=43606&hl=foo_cwb_hooks) does this. Download it and try the variable %cwb_playback_order%.
Title: Track Info Panel with ability to change font
Post by: Generalverdacht on 2006-09-09 00:10:55

Hi

Is there a way to add the Status info "Repeat Track", "Repeat Playlist", "Shuffle Playlist", "Default". Because i will add this to my track info so that i know that i enabled it.

Bye and Thx for any help.

DIN1031:
This has been asked before and the conclusion was that there is no existing way to pull this information with standard scripting.


I'm quite sure cwbowron's foo_cwb_hooks (http://www.hydrogenaudio.org/forums/index.php?showtopic=43606&hl=foo_cwb_hooks) does this. Download it and try the variable %cwb_playback_order%.




unfortunatly doesnt work here.... 
Title: Track Info Panel with ability to change font
Post by: kockroach on 2006-09-09 00:26:30
Strange that it doesn't work.  Russell's Home Stereo config for this panel has a section for the Playback Order, which is using foo_cwb_hooks.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-09 03:18:56
Those CWB hooks keep adding more and more useful functions I need to start checking for updates more often.. that hook was added just this past week :)

DIN1031: Make sure you update your hooks to the latest version, I just tested kockroach's suggestion and it is working fine here.
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-09-09 08:07:53
Problem with the Syntax of "#LINEHEIGHT,n#" -> I can't have it in $if statements because the "," is being parsed.
Another question: if using $font(font,size,,) wouldn't it be more useful not to touch the currently used color? At any font change, it breaks my previously set colors (and colours are a rather complicated task here, they change depending on time)
Title: Track Info Panel with ability to change font
Post by: Scrith on 2006-09-09 10:12:22
I agree...skipping a parameter from the $font(,,,) command should use the current/last value, not switch to the default.  This way you could, for example, use it once to set font, size, style, and color, then use it later on to just change the size.
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-09-09 12:05:37
Problem with the Syntax of "#LINEHEIGHT,n#" -> I can't have it in $if statements because the "," is being parsed. ...

Code: [Select]
$if(xy,'#LINHEIGHT,5#','#LINHEIGHT,10#')
will work like you expect it...!!
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-09 12:48:45
Another question: if using $font(font,size,,) wouldn't it be more useful not to touch the currently used color? At any font change, it breaks my previously set colors (and colours are a rather complicated task here, they change depending on time)


I've been playing with fonts and colors in both trackinfomod and singlecolumnplaylist.. and I'm fairly certain just specifying a new font does not alter the current color.  As a test I opened a new trackinfomod, set the background to Grey $rgb(128,128,128) and the default text to Black $rgb(0,0,0).  I then entered the following code:
Code: [Select]
$font(tahoma,7,,233-233-233)Tahoma is white$char(10)
$font(verdana,10,,)Verdana still white?


Both lines of text appeared as white as I had originally expected. If your claim were to hold true then the second line of text would have reverted to the default black or something else entirely. This would lead me to conclude that there is probably something else wrong with your code and would suggest that you debug it. If you need help then let us know.  IMO it often helps to break problem code down to basic examples such as this to detect problems when code is not behaving as expected.
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-09-09 16:43:30
I've been playing with fonts and colors in both trackinfomod and singlecolumnplaylist.. and I'm fairly certain just specifying a new font does not alter the current color.  As a test I opened a new trackinfomod, set the background to Grey $rgb(128,128,128) and the default text to Black $rgb(0,0,0).  I then entered the following code:
Code: [Select]
$font(tahoma,7,,233-233-233)Tahoma is white$char(10)
$font(verdana,10,,)Verdana still white?
Cannot test it now - maybe it only breaks the old style color definitions (the ones which are outside of the $font statement -> ffffff)? Thanks for your hint, so possibly doing all color definitions inside of $font() would help then...

Another weakness I saw is, the colour argument in $font has a new syntax (r-g-b) diffrent from the old style ($rgb() or ffffff) -> no easy recycling of existing variables possible e.g....
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-10 02:10:21
I repeated the previous experiment with the following code:
Code: [Select]
$font(tahoma,7,,)$rgb(233,233,233)Tahoma is white$char(10)
$font(verdana,10,,)Verdana still white?

The second line of text did indeed fall back to the default black so yes there appears to be a problem retaining colors that were specified outside of the $font() statement.  This component has historically had issues with $rgb() and BBGGRR color codes (it originally did not support them at all and singlecolumnplaylist still doesnt support them) so I have generally migrated to either the $font(,,,RR-GG-BB) format or simply re-specify the color with $rgb() after every $font() command. I no longer use the BBGGRR format codes as they often do not paste into the forum properly and I'm usually too lazy for binhex conversions.

But you are right, there does seem to be some buggy behavior when $font() and $rgb() interact.
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-10 09:48:29
iirc, there's $textcolor function. not that these issues with colors, fonts, styles etc. should have not been fixed / taken care off in the first place ...
Title: Track Info Panel with ability to change font
Post by: huythuy on 2006-09-10 09:48:57
it seems I can not get this one to work , doesn't $font support functions inside it ?

Quote
$puts(size,$div($calcwidth(%_path%),100))

$font(Arial,$get(size),,)



or is there any better way to fit a text line to 1 line only (reduce font size if wider than panel size)

thanks
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-10 14:35:16
The $font() function does indeed support functions inside of it, however the size parameter you are specifying is in font point sizes not pixel size, and the size you are generating with $calcwidth() is pixel size not font point size.  terrestrial actually had it written the other way originally but we encouraged him to change is so that for example $font(tahoma,8,,) would appear the same size as 8pt tahoma in every other plugin.

What you need to do is convert your pixel size to font size. There is a formula pasted somewhere earlier in this thread. Or you can do something like:

$font(Arial,$ifgreater($calcwidth(%path%),%_width%,7,12),,)%path%

though it's hard to give a good example without knowing your application I think maybe you can see where I'm going.
Title: Track Info Panel with ability to change font
Post by: DIN1031 on 2006-09-10 15:07:56
Those CWB hooks keep adding more and more useful functions I need to start checking for updates more often.. that hook was added just this past week

DIN1031: Make sure you update your hooks to the latest version, I just tested kockroach's suggestion and it is working fine here.


Thx a lot it work fine .

Bye
DIN1031
Title: Track Info Panel with ability to change font
Post by: Ken-chan on 2006-09-10 20:42:51
Code: [Select]
$padding(0,49)
$padding(0,29)
$drawrect(,,,12,brushcolor-null pencolor-255-255-255)

$puts(progress,$muldiv(%playback_time_seconds%,$sub(%_width%,24),%length_seconds%))
$ifgreater($get(progress),0,
$padding(2,2)$drawrect(,,$get(progress),8,brushcolor-255-255-255 pencolor-null),)
$alignabs(5,80,60,60,60,60)$font(,8,bold,128-128-128)[%playback_time%]$alignabs(275,80,60,60,60,60)%length%
$alignabs(110,80,600,600,60,60)$font(,8,bold,128-128-128)$upper(%_trackinfo_mode%)
$alignabs(5,100,%_width%,%_height%,left,top)
$font(Lucida Sans Unicode,8,bold,100-100-100)$upper(%bitrate% %codec% %channels% - $if(%play_count%,$if($strcmp(%play_count%,1),PLAYED 1 TIME,PLAYED %play_count% TIMES),NOT PLAYED YET))

I half-stole-half-created that code. Anyway, I want to make the two pieces of text inside the progress bar - %_trackinfo_mode% and %length% to be centered and right-justified, so I can use any width in foobar I like. How would I do that?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-11 03:11:19
Is this the sort of thing you are looking for?

Code: [Select]
$padding(0,49)
$padding(0,29)
$drawrect(,,,12,brushcolor-null pencolor-255-255-255)

$puts(progress,$muldiv(%playback_time_seconds%,$sub(%_width%,24),%length_seconds%))
$ifgreater($get(progress),0,
$padding(2,2)$drawrect(,,$get(progress),8,brushcolor-255-255-255 pencolor-null),)
//$alignabs(5,80,60,60,60,60)
$align(left,)$font(,8,bold,128-128-128)[%playback_time%]
//$alignabs(275,80,60,60,60,60)
$align(right,)%length%
//$alignabs(110,80,600,600,60,60)
$align(center,)$font(,8,bold,128-128-128)$upper(%_trackinfo_mode%)
$alignabs(5,100,%_width%,%_height%,left,top)
$font(Lucida Sans Unicode,8,bold,100-100-100)$upper(%bitrate% %codec% %channels% - $if(%play_count%,$if($strcmp(%play_count%,1),PLAYED 1 TIME,PLAYED %play_count% TIMES),NOT PLAYED YET))
Title: Track Info Panel with ability to change font
Post by: huythuy on 2006-09-11 13:03:39
The $font() function does indeed support functions inside of it, however the size parameter you are specifying is in font point sizes not pixel size, and the size you are generating with $calcwidth() is pixel size not font point size.  terrestrial actually had it written the other way originally but we encouraged him to change is so that for example $font(tahoma,8,,) would appear the same size as 8pt tahoma in every other plugin.

What you need to do is convert your pixel size to font size. There is a formula pasted somewhere earlier in this thread. Or you can do something like:

$font(Arial,$ifgreater($calcwidth(%path%),%_width%,7,12),,)%path%

though it's hard to give a good example without knowing your application I think maybe you can see where I'm going.


what i've been trying is to fit the txt to the panel, my code was wrong for sure  i was just trying to init some coding and test the var.

thanks for the solution. but I noticed weird behavior from calwidth function. Take a look at these 2 captures.

(http://img209.imageshack.us/img209/5456/tinfo1jb0.th.gif) (http://img209.imageshack.us/my.php?image=tinfo1jb0.gif)

(http://img100.imageshack.us/img100/1835/tinfo2ll0.th.gif) (http://img100.imageshack.us/my.php?image=tinfo2ll0.gif)

Quote
$calcwidth(%path%) / %_width%
$puts(txt2,$font(Trebuchet MS,$ifgreater($calcwidth(%path%),%_width%,7,10),,))
.......
$get(txt2)%_path%


my panel size is indeed 1024 (max screen). the font size was changed even when the txt width was still smaller than %width%

did I do something wrong ?

another example of long path txt (bigger than 1024) being wrapped, using the original $puts(txt2,$font(Trebuchet MS,10,,))

(http://img99.imageshack.us/img99/889/tinfo3hv8.th.gif) (http://img99.imageshack.us/my.php?image=tinfo3hv8.gif)
Title: Track Info Panel with ability to change font
Post by: foreveranoob1 on 2006-09-11 13:26:57
what is the default setting for this foo_trackinfo_mod?  I deleted it and cannot get any of the posted codes working right.  I don't know squat about writing code so I'll just stick with the default for now.

FWIW,  my track info column is set up like the above.  It goes almost across the whole screen and is a few inches high.

Thanks,


Ron
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-11 14:06:27
huythuy:

The font sizes used to be pixel sizes, but now are point sizes. To convert between them you can use this formula: pixels = points*dpi/72 (where dpi is normally 92). Point size seems to be consistent with Columns UI and everything else, at least to me. Are you sure you have the latest version?

You can either try to calculate the size of the font by applying the above formula or here is an alternate approach I used earlier to switch between three different font templates based on the length of text in relation to the width of the panel. Basically it sets the font to a large value, then compares the width of the text string to the width of the panel and if it's too long it knocks it down to a smaller font size, then repeats the process.

(http://img372.imageshack.us/img372/6132/panel1gy5.png) (http://imageshack.us)
This one auto-switches between 3 font layouts based on the length of the song & album titles
Code: [Select]
$font(Tahoma,16,,)
$ifgreater($add($calcwidth(%artist%%title%%album%%date%),10),%_width%,$font(,10,shadow,),$font(,14,shadow,))
$align(left,)$rgb(233,233,233)$if(%artist%,%artist% $rgb(0,128,255)$char(47)$rgb(233,233,233) ,)$if2(%title%,)

$font(Tahoma,16,,)
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),,
$ifgreater($add($calcwidth(%artist%%title%%album%%date%),10),%_width%,$font(,10,shadow,)$align(right,bottom),$font(,14,shadow,)$align(right,))
$ifgreater($add($calcwidth(%artist%%title%%album%%date%),10),%_width%,$font(,7,shadow,),)
$rgb(180,180,180)$if2(%album%,)$if(%date%, $rgb(0,128,255)$char(40)$rgb(180,180,180)%date%$rgb(0,128,255)$char(41),)
)


foreveranoob1:

To reset any component to it's default settings:
- Close foobar
- Remove the component .dll from the foobar components directory
- Restart foobar and answer [No] when prompted if you want to retain the old settings
- Close foobar
- Replace the component .dll into the foobar components directory
- Restart foobar

However to answer your question, the default settings I see for this component are:

Font: MS Shell Dlg 8pt
Default text: $rgb(0,0,0)
Background: $rgb(255,255,255)
Vertical padding: 10
Horizontal padding: 10
Minimum Height: 0
Edge Style: Sunken

Formatting String:
Code: [Select]
Mode: %_trackinfo_mode%$char(10)$char(10)$if(%_trackinfo_notrack%,No track,Artist: %artist%$char(10)Title: %title%$char(10)Album: %album%)

Though to be perfectly honest the first thing I do whenever I add one of thise panels is set vertical and horizontal padding to 0 and the edge style to none.
Title: Track Info Panel with ability to change font
Post by: foreveranoob1 on 2006-09-11 16:02:38
Yotsuya,

    Thanks!
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-11 22:03:08
Add icons to the bottom of your trackinfo to indicate file type, tag types, and current playback mode:

(http://img166.imageshack.us/img166/1254/fileinfosz6.png) (http://imageshack.us)
Code: [Select]
// File Icon
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),
$imageabs(,$sub(%_height%,52),icons\png\%codec%.png,)
,
$imageabs(,$sub(%_height%,52),icons\png\$replace(%filename_ext%,%filename%.,).png,)
)

// Tag Icons
$if($strstr($info(tagtype),id3v1),$imageabs(60,$sub(%_height%,52),icons\png\ID3v1.png,))
$if($strstr($info(tagtype),id3v2),$imageabs(110,$sub(%_height%,52),icons\png\ID3v2.png,))
$if($strstr($info(tagtype),apev2),$imageabs(160,$sub(%_height%,52),icons\png\APEv1.png,))

// Playback Icon
$imageabs($sub(%_width%,36),$sub(%_height%,47),images\
$if(%ispaused%,pause.png,$if(%isplaying%,play.png,stop.png))
,)
$font(Verdana,10,bold,128-128-128)
$if(%ispaused%,
$alignabs($sub(%_width%,47),$sub(%_height%,20),%_width%,%_height%,,)Pause
,$if(%isplaying%,
$alignabs($sub(%_width%,40),$sub(%_height%,20),%_width%,%_height%,,)Play
,
$alignabs($sub(%_width%,40),$sub(%_height%,20),%_width%,%_height%,,)Stop
))

Images Used:

The file type icons are simple png conversions of the ico files that are included with foobar.

(http://img461.imageshack.us/img461/2927/id3v1xc0.png) (http://imageshack.us)  (http://img461.imageshack.us/img461/6887/id3v2ky0.png) (http://imageshack.us)  (http://img166.imageshack.us/img166/2467/apev2zu0.png) (http://imageshack.us)
ID3v1.png, ID3v2.png, APEv2.png

(http://img364.imageshack.us/img364/2734/pauseqo9.png) (http://imageshack.us)  (http://img520.imageshack.us/img520/1206/playdv2.png) (http://imageshack.us)  (http://img520.imageshack.us/img520/7897/stopom2.png) (http://imageshack.us)
pause.png, play.png, stop.png
Title: Track Info Panel with ability to change font
Post by: huythuy on 2006-09-11 22:06:18
what is the default setting for this foo_trackinfo_mod?  I deleted it and cannot get any of the posted codes working right.  I don't know squat about writing code so I'll just stick with the default for now.

FWIW,  my track info column is set up like the above.  It goes almost across the whole screen and is a few inches high.

Thanks,
Ron


you can use mine , here is the code , there is no nuclear power here, just some simple codes allow me to read info from 2 meters away  . I prefer it spans like this in order to display long title tracks of classical music . I did not even check the tags if it available then replace with path info because I LOVE ? sign hehe it helps me know that information is missing. You should choose a different font instead of "interstate" and "Jocelyn".

Code: [Select]
$puts(txt1,$font(Interstate Light Cond,18,bold,))
$puts(txt2,$font(Trebuchet MS,10,,))
$puts(txt3,$font(Jocelyn,37,,))
$puts(color1,FFFFFF)
$puts(color2,276EB4)
$puts(color3,318CB9)
$puts(color4,7CBEDB)
$puts(bgcolor,000000)

$if(%_trackinfo_notrack%,DBBE7CNo track,
$alignset()
$alignrel(left,top)
$get(txt1)
$get(color4)$upper(%artist%) $if(%composer%,$get(color2)'['%composer%']',) $char(10)
$get(color1)%title% $get(color2)'['%tracknumber%']'$char(10)
$get(color2)%album% $get(color4)'['%date%']'$char(10)
$if(%_trackinfo_notrack%,'.',$get(txt2)$get(bgcolor).$char(10)$get(color1)%_path%)

$alignabs(right,top)
$get(txt3)$get(color3)$if(%_isplaying%,%_time_elapsed%/)%length%$char(10)
$get(txt1)$get(color4)%rating% stars
)


(http://img100.imageshack.us/img100/1835/tinfo2ll0.gif)

================

@Yotsuya ; Thanks . I'd prefer to scale down the font size to fit rather than choosing between font options. I will try to use the formula later.
Title: Track Info Panel with ability to change font
Post by: rouge on 2006-09-11 22:51:25
This is what I've been working on.

(http://img98.imageshack.us/img98/3079/neogrotesquegr9.png) (http://imageshack.us)
Title: Track Info Panel with ability to change font
Post by: kockroach on 2006-09-11 23:01:32
(http://img461.imageshack.us/img461/2927/id3v1xc0.png) (http://imageshack.us)  (http://img461.imageshack.us/img461/6887/id3v2ky0.png) (http://imageshack.us)  (http://img166.imageshack.us/img166/2467/apev2zu0.png) (http://imageshack.us)
ID3v1.png, ID3v2.png, APEv2.png

Those images are awesome.  Do you happen to have ones for FLAC files?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-11 23:08:01
Um, that's the default PLS icon included with foobar .. look in your icons directory. All I did was photoshop out the "PLS" and replace it with "ID3v1" "ID3v2" and "APEv2". make sure to enable thumbnail view or load the files in irfanview etc to see the full size icons.
Title: Track Info Panel with ability to change font
Post by: kockroach on 2006-09-11 23:42:34
Guess I meant something like "Vorbis" for the comments.  Oh well, no biggie.
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-09-12 23:35:19
What you need to do is convert your pixel size to font size. There is a formula pasted somewhere earlier in this thread. Or you can do something like:
$font(Arial,$ifgreater($calcwidth(%path%),%_width%,7,12),,)%path%


I used something like this:
Code: [Select]
$puts(txt1,$if($greater($mul($calcwidth(%artist% - %title%),5),%_width%), 
$if($greater($mul($calcwidth(%artist% - %title%),4),%_width%),
$if($greater($mul($calcwidth(%artist% - %title%),3),%_width%),
$if($greater($add($mul($calcwidth(%artist% - %title%),2),75),%_width%),
10,15),20),25),30))
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-09-13 00:21:45
edit: double post
Title: Track Info Panel with ability to change font
Post by: Snowsfall on 2006-09-18 03:50:13
Anyone know how to get this going from bottom to top, instead of top to bottom

Code: [Select]
$padding(0,0)

$puts(progress,$muldiv(%playback_time_seconds%,$sub(%_height%,4),%length_seconds%))

$ifgreater($get(progress),0,
$padding(0,0)$drawrect(,,4,$get(progress),brushcolor-175-175-175 pencolor-null),)
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-09-18 05:23:27
Is there a way to set the font size in pt instead of px? I can't emulate tahoma 8pt through the $font function.
Title: Track Info Panel with ability to change font
Post by: EddieFAF on 2006-09-18 13:03:50
Elliott:
(http://img338.imageshack.us/img338/9756/testep9.png) (http://imageshack.us)
Your code appears to be working fine on my end.  Have you tried making another panel and pasting the code? Have you tried using a different font?  Is there more code being used in the panel than what you posted?

I got the same problems as Elliott. If I have a panel which is high enough, the time appears. But when resizing the panel, the time disappears suddenly when it reaches around the middle of the panel. The progressbar is drawn even at the bottom of the panel...

Is this the sort of thing you are looking for?

Code: [Select]
$padding(0,49)
$padding(0,29)
$drawrect(,,,12,brushcolor-null pencolor-255-255-255)

$puts(progress,$muldiv(%playback_time_seconds%,$sub(%_width%,24),%length_seconds%))
$ifgreater($get(progress),0,
$padding(2,2)$drawrect(,,$get(progress),8,brushcolor-255-255-255 pencolor-null),)
//$alignabs(5,80,60,60,60,60)
$align(left,)$font(,8,bold,128-128-128)[%playback_time%]
//$alignabs(275,80,60,60,60,60)
$align(right,)%length%
//$alignabs(110,80,600,600,60,60)
$align(center,)$font(,8,bold,128-128-128)$upper(%_trackinfo_mode%)
$alignabs(5,100,%_width%,%_height%,left,top)
$font(Lucida Sans Unicode,8,bold,100-100-100)$upper(%bitrate% %codec% %channels% - $if(%play_count%,$if($strcmp(%play_count%,1),PLAYED 1 TIME,PLAYED %play_count% TIMES),NOT PLAYED YET))

I get the same problem here. If I resize my panel, at one point, the time-text disappears, while the bar (and the info below (bitrate, codec, ...)) is still visible. I make it higher again and the text reapears... Strange..
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-18 22:09:12
Metal Termite:
There were a few earlier versions of this component where fonts were specified in pixel size, however afaik fonts are already changed to point size instead of pixel. Does $font(tahoma,8,,) not give you the same size text as other panels displaying Tahoma 8pt font? If not, make sure you have a recent version of this component and post some code and screenshots demonstrating the problem.

EddieFAF,Ken-chan,Eliott:
I think the problem with the disappearing text is being caused by the use of the $padding() function all that padding is adding up and if you shrink your panel I think it's clipping off the text. The progress bar itself is not affected because it uses absolute alignment. I have merged all your code and rewritten it using $alignabs() instead of $align() and $padding():
Code: [Select]
// Common Variables
$puts(progress,$muldiv(100,%playback_time_seconds%,%length_seconds%))
$puts(offset.x,20)
$puts(offset.top,10)
$puts(offset.bottom,40)

// Main Text
$font(tahoma,7,,)
$alignabs($get(offset.x),$get(offset.top),%_width%,%_height%,,)[%album%]
$alignabs($get(offset.x),$add($get(offset.top),10),%_width%,%_height%,,)[Track %tracknumber%]
$alignabs($get(offset.x),$add($get(offset.top),20),%_width%,%_height%,,)[%date%]

$alignabs($sub(%_width%,$mul($get(offset.x),2)),$get(offset.top),%_width%,%_height%,,)[CD %discnumber%]
//$alignabs($sub(%_width%,$mul($get(offset.x),2)),$add($get(offset.top),10),%_width%,%_height%,,)[]
$alignabs($sub(%_width%,$mul($get(offset.x),2)),$add($get(offset.top),20),%_width%,%_height%,,)[%genre%]


// Progress Bar
$drawrect($get(offset.x),$sub(%_height%,$get(offset.bottom)),$sub(%_width%,$mul($get(offset.x),2)),10,brushcolor-null pencolor-255-255-255)
$ifgreater($get(progress),0,
$drawrect($get(offset.x),$sub(%_height%,$sub($get(offset.bottom),2)),$muldiv($get(progress),$sub(%_width%,$mul($get(offset.x),2)),100),6,brushcolor-255-255-255 pencolor-null)
,)

// Progress Text
$font(tahoma,7,,)
$alignabs($get(offset.x),$sub(%_height%,$get(offset.bottom)),%_width%,%_height%,,)[%_time_elapsed%]
$alignabs($div($sub(%_width%,$calcwidth($upper(%_trackinfo_mode%))),2),$sub(%_height%,$get(offset.bottom)),%_width%,%_height%,,)[$upper(%_trackinfo_mode%)]
$alignabs($sub(%_width%,$calcwidth(%length%),$get(offset.x)),$sub(%_height%,$get(offset.bottom)),%_width%,%_height%,,)[%length%]

// Bottom Text
$font(Lucida Sans Unicode,8,bold,100-100-100)
$alignabs($get(offset.x),$sub(%_height%,16),%_width%,%_height%,,)
$upper(%bitrate% %codec% %channels% - $if(%play_count%,$if($strcmp(%play_count%,1),PLAYED 1 TIME,PLAYED %play_count% TIMES),NOT PLAYED YET))
Hopefully atleast one of you will find this helpful.
Title: Track Info Panel with ability to change font
Post by: Infernus on 2006-09-18 23:04:41
sorry for interrupting this thread by a stupid question, but I have to ask again....hehe

This animated "default line ending style" scroll is planed to be implemented in near future?
A simple Yes or No would be enough!

Ok another importand question for me is:
Can I run a uptodate version of "trackinfo mod panel" together with this bugfixed version of orig. Trackinfo panel (0.82) simultanious?
I tried this for a few weeks with one of the first mod-rls but it seemed not to work.

thx a lot
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-09-19 03:22:23
To Infernus' 2nd:
---> Just try it !! (and allways backup your scripts)


And here is mine:
I dont get the font-thing right ... - How are the pt or px of a font measured ? -Length or Height of a typical sign?? -Or the multiplication of its L and H ?? -Or what else ...??
(I need this to get the half-height [in px] of a variable font-size, I'm working on ... )

.THNX.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-09-19 21:52:37
I love this new version with the image support and advanced code.
Though I think there is a bug with the font sizes in the $font function. 8 is pretty small but 9 is as large as 10 if I would use the font dialog at the top.

EDIT: I can confirm this with more than one font. I hope you understand what I mean by the way. Can anyone else confirm there is something weird here?
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-09-19 22:44:08
(http://img201.imageshack.us/img201/5643/tihp3.png)

Code: [Select]
$font(,,nocleartype,)
default Tahoma 8pt as set in trackinfo configuration

$char(10)

$font(tahoma,8,nocleartype,)
Tahoma 8 as set by '$font' function
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-09-19 23:34:44
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-09-20 02:47:06
im using this to display lyrics and is there a way i can add a scrollbar to the side of it so i can scroll through the lyrics? i tried some lyrics panels but they all autoscroll and I can't get any of them to let me manually scroll.
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-09-20 03:41:12
im using this to display lyrics and is there a way i can add a scrollbar to the side of it so i can scroll through the lyrics? i tried some lyrics panels but they all autoscroll and I can't get any of them to let me manually scroll.


You can scroll with the mouse wheel, but it would be nice to have a scrollbar option.
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-09-20 04:13:39

im using this to display lyrics and is there a way i can add a scrollbar to the side of it so i can scroll through the lyrics? i tried some lyrics panels but they all autoscroll and I can't get any of them to let me manually scroll.


You can scroll with the mouse wheel, but it would be nice to have a scrollbar option.


im on a laptop, no mouse wheel
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-09-20 11:36:21



The problem for me is 9. $font 9 = font setting 10. And the difference in size between $font 8 and 9 is too big. The $font sizes should be consistent with the sizes in font settings, shouldn't they? terrestrial, is it possible to fix this?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-20 15:26:47
terrestrial: any plans on adding the $imageabs2() function to this component like you did with singlecolumnsplaylist?
Title: Track Info Panel with ability to change font
Post by: rouge on 2006-09-21 01:06:17
(http://img180.imageshack.us/img180/2240/scrnshtyq6.png) (http://img180.imageshack.us/my.php?image=scrnshtyq6.png)

I made a circle-spinny progress thing.  It advances during playback.  I know this is overkill, but it looks cool.

Code: [Select]
$if($stricmp($mod(%_time_elapsed_seconds%,40),0),$imageabs($sub(%_width%,102),3,images\count1.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),1),$imageabs($sub(%_width%,102),3,images\count2.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),2),$imageabs($sub(%_width%,102),3,images\count3.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),3),$imageabs($sub(%_width%,102),3,images\count4.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),4),$imageabs($sub(%_width%,102),3,images\count5.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),5),$imageabs($sub(%_width%,102),3,images\count6.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),6),$imageabs($sub(%_width%,102),3,images\count7.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),7),$imageabs($sub(%_width%,102),3,images\count8.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),8),$imageabs($sub(%_width%,102),3,images\count9.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),9),$imageabs($sub(%_width%,102),3,images\count10.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),10),$imageabs($sub(%_width%,102),3,images\count11.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),11),$imageabs($sub(%_width%,102),3,images\count12.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),12),$imageabs($sub(%_width%,102),3,images\count13.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),13),$imageabs($sub(%_width%,102),3,images\count14.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),14),$imageabs($sub(%_width%,102),3,images\count15.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),15),$imageabs($sub(%_width%,102),3,images\count16.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),16),$imageabs($sub(%_width%,102),3,images\count17.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),17),$imageabs($sub(%_width%,102),3,images\count18.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),18),$imageabs($sub(%_width%,102),3,images\count19.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),19),$imageabs($sub(%_width%,102),3,images\count20.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),20),$imageabs($sub(%_width%,102),3,images\count21.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),21),$imageabs($sub(%_width%,102),3,images\count22.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),22),$imageabs($sub(%_width%,102),3,images\count23.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),23),$imageabs($sub(%_width%,102),3,images\count24.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),24),$imageabs($sub(%_width%,102),3,images\count25.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),25),$imageabs($sub(%_width%,102),3,images\count26.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),26),$imageabs($sub(%_width%,102),3,images\count27.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),27),$imageabs($sub(%_width%,102),3,images\count28.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),28),$imageabs($sub(%_width%,102),3,images\count29.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),29),$imageabs($sub(%_width%,102),3,images\count30.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),30),$imageabs($sub(%_width%,102),3,images\count31.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),31),$imageabs($sub(%_width%,102),3,images\count32.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),32),$imageabs($sub(%_width%,102),3,images\count33.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),33),$imageabs($sub(%_width%,102),3,images\count34.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),34),$imageabs($sub(%_width%,102),3,images\count35.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),35),$imageabs($sub(%_width%,102),3,images\count36.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),36),$imageabs($sub(%_width%,102),3,images\count37.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),37),$imageabs($sub(%_width%,102),3,images\count38.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),38),$imageabs($sub(%_width%,102),3,images\count39.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),39),$imageabs($sub(%_width%,102),3,images\count40.png,))

And the image files:


If you have the patience, try coming up with new designs and post them here.

Here's a copy of the image I started with, made with SolidWorks.
[url=http://img123.imageshack.us/my.php?image=countfm0.png](http://img123.imageshack.us/img123/5131/countfm0.th.png) (http://www.parodius.com/~rouge/count.zip[/url)

edit: changed host
Title: Track Info Panel with ability to change font
Post by: Blitzmeister on 2006-09-21 02:02:38
Hey Rouge, I keep getting a corrupt download file. Any chance of putting it on Rapidshare or Sendspace please?
Cheers
Title: Track Info Panel with ability to change font
Post by: rouge on 2006-09-21 02:25:22
Oops. Fixed.

FTP server seems to be brok.
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-09-21 02:28:35
Is there any way to make images put in panels clickable? I want to add play, pause, and stop buttons.
Title: Track Info Panel with ability to change font
Post by: Lampir on 2006-09-21 03:29:24
Hey,

ive read this entire post twice, and i still dont know how to add a picture into my trackinfo panel, can someone please explain it to me ?

thanks
Title: Track Info Panel with ability to change font
Post by: tomthomson on 2006-09-21 03:35:24
@Lampir

Heres the link to the WIKI page of the trackinfo_mod
CLICK (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29#To_include_an_image_.28Note:_Only_PNGs_are_supported.29:)

Well, actually the link is in the first post of this topic, too
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-21 04:05:29
nice thing, rouge. i had similar idea (just a circular sector or something like that), but i was lazy to make all the images . i would like terrestrial to add functions to draw more types of primitives including ellipses and sectors.

tip: you could calculate the progress state (number from interval 0..maximage) and then just put it in the $imageabs function like: $imageabs($sub(%_width%,102),3,images\count$get(progress).png,))

Is there any way to make images put in panels clickable? I want to add play, pause, and stop buttons.

not yet, it's on todo though.
Title: Track Info Panel with ability to change font
Post by: kockroach on 2006-09-21 04:36:55
(http://img180.imageshack.us/img180/2240/scrnshtyq6.png) (http://img180.imageshack.us/my.php?image=scrnshtyq6.png)

I made a circle-spinny progress thing.  It advances during playback.  I know this is overkill, but it looks cool.

And the image files:
count.zip (http://rapidshare.de/files/33866850/count.zip.html)

If you have the patience, try coming up with new designs and post them here.

Here's a copy of the image I started with, made with SolidWorks.
(http://img123.imageshack.us/img123/5131/countfm0.th.png) (http://img123.imageshack.us/my.php?image=countfm0.png)

edit: changed host

That looks awesome!

Something like this would look awesome with Russell777's Home Stereo Panel as a volume indicator.
Title: Track Info Panel with ability to change font
Post by: Lampir on 2006-09-21 05:07:04
@Lampir

Heres the link to the WIKI page of the trackinfo_mod
CLICK (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29#To_include_an_image_.28Note:_Only_PNGs_are_supported.29:)

Well, actually the link is in the first post of this topic, too


Thanks but it still doesnt explain where to put it, i put it up the top of the rest of my track info code and all i see is unknown function where the pic should be

eg > this is mine >

$align(left,top)
$imageabs(0,0,D:\Program Files\foobar2000\default.png)

i tried it in the application data folder too, still get [unknown function], what am i doin wrong
Title: Track Info Panel with ability to change font
Post by: rouge on 2006-09-21 05:16:21
Try $imageabs(0,0,default.png,)
Title: Track Info Panel with ability to change font
Post by: Lampir on 2006-09-21 05:53:16
Try $imageabs(0,0,default.png,)


thanks $imageabs(0,0,images/default.png,) worked 
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-09-21 13:20:01

im using this to display lyrics and is there a way i can add a scrollbar to the side of it so i can scroll through the lyrics? i tried some lyrics panels but they all autoscroll and I can't get any of them to let me manually scroll.


You can scroll with the mouse wheel, but it would be nice to have a scrollbar option.


Actually, you can't scroll at all, I was thinking of the normal trackinfo.

Anyway, terrestrial, any chance of adding scrolling..?
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-09-22 16:42:48
On the Wiki I saw there is an alpha blending option for text; Is alpha blending available for images too?
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-22 18:20:47
On the Wiki I saw there is an alpha blending option for text; Is alpha blending available for images too?

yes, it has been added recently, i saw it in some changelog.
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-09-22 19:45:03
EDIT: Nevermind.

I can't find it in the changelog. :/
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-22 20:13:48
stupid me, that's because it's in foo_uie_single_column_playlist's changelog. it will get into track info panel mod eventually.
Title: Track Info Panel with ability to change font
Post by: LL-Hell on 2006-09-24 07:56:54
(http://img180.imageshack.us/img180/2240/scrnshtyq6.png) (http://img180.imageshack.us/my.php?image=scrnshtyq6.png)

I made a circle-spinny progress thing.  It advances during playback.  I know this is overkill, but it looks cool.

Code: [Select]
$if($stricmp($mod(%_time_elapsed_seconds%,40),0),$imageabs($sub(%_width%,102),3,images\count1.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),1),$imageabs($sub(%_width%,102),3,images\count2.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),2),$imageabs($sub(%_width%,102),3,images\count3.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),3),$imageabs($sub(%_width%,102),3,images\count4.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),4),$imageabs($sub(%_width%,102),3,images\count5.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),5),$imageabs($sub(%_width%,102),3,images\count6.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),6),$imageabs($sub(%_width%,102),3,images\count7.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),7),$imageabs($sub(%_width%,102),3,images\count8.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),8),$imageabs($sub(%_width%,102),3,images\count9.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),9),$imageabs($sub(%_width%,102),3,images\count10.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),10),$imageabs($sub(%_width%,102),3,images\count11.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),11),$imageabs($sub(%_width%,102),3,images\count12.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),12),$imageabs($sub(%_width%,102),3,images\count13.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),13),$imageabs($sub(%_width%,102),3,images\count14.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),14),$imageabs($sub(%_width%,102),3,images\count15.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),15),$imageabs($sub(%_width%,102),3,images\count16.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),16),$imageabs($sub(%_width%,102),3,images\count17.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),17),$imageabs($sub(%_width%,102),3,images\count18.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),18),$imageabs($sub(%_width%,102),3,images\count19.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),19),$imageabs($sub(%_width%,102),3,images\count20.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),20),$imageabs($sub(%_width%,102),3,images\count21.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),21),$imageabs($sub(%_width%,102),3,images\count22.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),22),$imageabs($sub(%_width%,102),3,images\count23.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),23),$imageabs($sub(%_width%,102),3,images\count24.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),24),$imageabs($sub(%_width%,102),3,images\count25.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),25),$imageabs($sub(%_width%,102),3,images\count26.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),26),$imageabs($sub(%_width%,102),3,images\count27.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),27),$imageabs($sub(%_width%,102),3,images\count28.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),28),$imageabs($sub(%_width%,102),3,images\count29.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),29),$imageabs($sub(%_width%,102),3,images\count30.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),30),$imageabs($sub(%_width%,102),3,images\count31.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),31),$imageabs($sub(%_width%,102),3,images\count32.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),32),$imageabs($sub(%_width%,102),3,images\count33.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),33),$imageabs($sub(%_width%,102),3,images\count34.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),34),$imageabs($sub(%_width%,102),3,images\count35.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),35),$imageabs($sub(%_width%,102),3,images\count36.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),36),$imageabs($sub(%_width%,102),3,images\count37.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),37),$imageabs($sub(%_width%,102),3,images\count38.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),38),$imageabs($sub(%_width%,102),3,images\count39.png,))
$if($stricmp($mod(%_time_elapsed_seconds%,40),39),$imageabs($sub(%_width%,102),3,images\count40.png,))

And the image files:
count.zip (http://rapidshare.de/files/33866850/count.zip.html)

If you have the patience, try coming up with new designs and post them here.

Here's a copy of the image I started with, made with SolidWorks.
(http://img123.imageshack.us/img123/5131/countfm0.th.png) (http://img123.imageshack.us/my.php?image=countfm0.png)

edit: changed host


I hope you don't mind, I rewrote your code to be slightly more compact and easier to play with:
Code: [Select]
$puts(count_idx,$add($mod(%_time_elapsed_seconds%,40),1))
$puts(count_path,images\circ_count\count$get(count_idx).png)
$imageabs($sub(%_width%,102),3,$get(count_path),)
Title: Track Info Panel with ability to change font
Post by: toad on 2006-09-24 18:44:08
I have a feature request which is probably way hard to do. I wonder if it's possible for this plugin to support opentype features like automatic ligatures and small caps and so on. It would be absolutely wonderful if it could; it would marry my love of typography with my love of music!
Title: Track Info Panel with ability to change font
Post by: rouge on 2006-09-24 23:14:32
[a href=\"http://img180.imageshack.us/my.php?image=scrnshtyq6.png\" target=\"_blank\"]
Title: Track Info Panel with ability to change font
Post by: Hamallainen on 2006-09-26 02:31:32
Hi

Thanks to the new functions of foo_cwb_hooks i wanted to try to do a new kind of progress bar
A sort of scrolling timeline.

(http://img222.imageshack.us/img222/7725/timelinesi6.png)

Code: [Select]
$puts(x,$muldiv(%playback_time_seconds%,%_width%,%length_seconds%))

// NOW PLAYING ////////////////////////////////////////////

$drawrect($sub(0,$get(x)),,%_width%,%_height%,pencolor-112-112-128 brushcolor-5-0-5 width-5)

$puts(b25,$muldiv(%_width%,25,100))
$drawrect($sub($get(b25),$get(x)),0,2,$muldiv(%_height%,20,100),pencolor-112-112-128)
$puts(b50,$muldiv(%_width%,50,100))
$drawrect($sub($get(b50),$get(x)),0,2,$muldiv(%_height%,30,100),pencolor-112-112-128)
$puts(b75,$muldiv(%_width%,75,100))
$drawrect($sub($get(b75),$get(x)),0,2,$muldiv(%_height%,40,100),pencolor-112-112-128)

$alignabs($sub(0,$get(x),10),5,%_width%,%_height%,right,top)
$font(Arial,16,bold,192-144-255)
[%playback_time_remaining%]

$alignabs($sub(0,$get(x),10),0,%_width%,%_height%,right,middle)
$font(Arial,12,bold,64-0-128)
['['%date%'] '][%album%][' [cd'%disc%'] ']

$alignabs($sub(0,$get(x),10),-5,%_width%,%_height%,right,bottom)
$font(Arial,16,bold,192-144-255)
[%artist%]

$alignabs(10,0,%_width%,%_height%,left,middle)
$font(Arial,18,bold glow-128-0-255 glowblur-5,16-0-32)
[%title%]

// NEXT SONG ///////////////////////////////////////////////

$drawrect($sub(%_width%,$get(x)),,%_width%,%_height%,pencolor-112-112-128 brushcolor-64-64-64 width-5)

$font(Arial,46,bold shadow,64-64-64)
$alignabs($add($sub(%_width%,$get(x)),10),0,%_width%,%_height%,left,middle)
'COMING NeXT'

$font(Arial,16,bold shadow,112-112-112)
$puts(th,$calcheight(%cwb_next_artist%))
$alignabs($add($sub(%_width%,$get(x)),10),$sub(%_height%,$get(th),5),$sub($max($get(x),20),20),$get(th),right,bottom)
[%cwb_next_artist%]

$font(Arial,18,bold shadow,128-128-128)
$alignabs($add($sub(%_width%,$get(x)),10),0,%_width%,%_height%,left,middle)
[%cwb_next_title%]

Requirements:
- Vertical & Horizontal padding : 0
- Minimum height: 75
- Update every second: checked
- foo_cwb_hooks.dll


Works only for default playback order
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-26 03:34:44
Very nice! If only the onscreen programming guide on my cable box did something like this :)
Title: Track Info Panel with ability to change font
Post by: Sihkih on 2006-09-26 08:51:27
[a href=\"http://img180.imageshack.us/my.php?image=scrnshtyq6.png\" target=\"_blank\"]


and what code should i use if i want to use this images to be shown during progress? not every second?
Title: Track Info Panel with ability to change font
Post by: Sihkih on 2006-09-26 10:53:41
ok i get it working as a progress bar but the code has 100 lines... any chance to get it shorter?
Title: Track Info Panel with ability to change font
Post by: Strictly4me on 2006-09-26 11:01:39
Other Image for same stuff, you can find here (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=48761&view=findpost&p=435164)

Looks like so:
(http://home.arcor.de/strictly2me//count.png)

((((( Strictly4me )))))
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-26 18:33:25
Sihkih:
Is this the sort of thing you are looking for?
Code: [Select]
$imageabs($sub(%_width%,102),$sub(%_height%,102),images\progress.circle\count$muldiv($muldiv(100,%playback_time_seconds%,%length_seconds%),40,100).png,)

*note: copy count40.png to count0.png
Title: Track Info Panel with ability to change font
Post by: ojdo on 2006-09-26 21:55:37
terrestrial: any plans on adding the $imageabs2() function to this component like you did with singlecolumnsplaylist?

I would like to know this, too.
Title: Track Info Panel with ability to change font
Post by: Sihkih on 2006-09-27 00:33:42
Sihkih:
Is this the sort of thing you are looking for?
Code: [Select]
$imageabs($sub(%_width%,102),$sub(%_height%,102),images\progress.circle\count$muldiv($muldiv(100,%playback_time_seconds%,%length_seconds%),40,100).png,)

*note: copy count40.png to count0.png


yes thank you
Title: Track Info Panel with ability to change font
Post by: xchaser on 2006-09-27 01:19:01
Yotsuya:Thanks

Edite: I found I can keep both but now I have installed all the components but can't see the
new foo_uie_trackinfo_mod in the Columns UI Panel with the old trackinfo I only see the old one not the new one.

I have .net and c++ installed and all the fonts and what not installed why Can't I see the foo_uie_trackinfo_mod?
Title: Track Info Panel with ability to change font
Post by: Chase on 2006-09-27 01:47:21
It would be excellent if .jpg were supported, and I'm sure this was probably already suggested...

That would do a good job of eliminating my need for an album art panel.

Great job on this. I'm definitely looking forward to the switch in $imageabs to $imageabs2. Keep it up.
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-09-27 02:24:06
It would be excellent if .jpg were supported, and I'm sure this was probably already suggested...

That would do a good job of eliminating my need for an album art panel.

Great job on this. I'm definitely looking forward to the switch in $imageabs to $imageabs2. Keep it up.


$imageabs2 supports .jpg files, so it's being requested
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-27 02:26:34
xchaser: as long as you are using a recent version of foo_uie_trackinfo_mod.dll, the two will coexist peacefully and maintain their own settings.

Chase: foo_uie_single_column_playlist.dll supports .jpg in $imageabs2(), hopefully terrestrial will bring the same functionality to this component.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-09-27 05:23:37
updated.

here is some sample code for ratings:

Code: [Select]
$puts(rating,$if(%rating%,%rating%,0))
$button(0,0,0,0,25,25,images\$get(rating).png,images\1.png,Set Rating = 1,)
$button(0,0,25,0,25,25,images\$get(rating).png,images\2.png,Set Rating = 2,)
$button(0,0,50,0,25,25,images\$get(rating).png,images\3.png,Set Rating = 3,)
$button(0,0,75,0,25,25,images\$get(rating).png,images\4.png,Set Rating = 4,)
$button(0,0,100,0,25,25,images\$get(rating).png,images\5.png,Set Rating = 5,)
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-27 05:29:05
Quote
9/26/06

+ added support for cwb_hooks callback notifications
+ buttons - $button(dstX,dstY,x,y,w,h,image,hover image,command,options)


Yay! Buttons! Thanks for your continued dedication to these wonderful components terrestrial!
Title: Track Info Panel with ability to change font
Post by: acedriver on 2006-09-27 05:47:51
there's a slight display lag when changing track on the new build.
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-09-27 05:48:08
Nice update

I see that $imageabs2 has also been added..

Maybe you should note in the changelog about the updates that have come from single_column, not really necessary, but could be helpful for some?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-27 05:52:47
I started playing around with $button() but all my images appear to be experiencing some cropping on the bottom and right edges. Is anyone else experiencing this?

parameters 3-6 don't appear to be having any effect at all.
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-09-27 05:56:38
I started playing around with $button() but all my images appear to be experiencing some cropping on the bottom and right edges. Is anyone else experiencing this?

parameters 3-6 don't appear to be having any effect at all.


Yea, I was just testing, and the images seem to be cropped to a limited size.
Parameters 3-6 are for the 'hotspot', i.e. the point where the button can be clicked, and the x and y values are relative to the top-left of the image used..

Edit: Thinking about it, I don't even know if the images need to be drawn by the button command, surely you could just draw an image with imageabs/imageabs2, and then draw the button over the top of it, setting the 'hotspot' to same x/y/w/h as the drawn image and it would give the desired effect..?
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-09-27 06:03:51
I don't seem to get any cropping here... can you post the code which you're using.
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-09-27 06:19:26
I don't seem to get any cropping here... can you post the code which you're using.


Yea, this was the code:

Code: [Select]
$button(0,0,0,0,16,16,C:\Program Files\foobar2000\images\silk\zoom.bmp,C:\Program Files\foobar2000\images\silk\folder.bmp,Set Rating = 5,)


The images are regular 16x16 24bit bitmaps. Also, they seem to be a slight bit zoomed in aswell as cropped..
I'm guessing it was the bitamps, it seems to work with png files..
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-27 06:20:47
I havnt tackled the command part yet, but I was trying to start with a basic button. I'm experiencing cropping on the bottom and right sides.. and I think I need to work on the hotspot bit.

Code: [Select]
$if(%isplaying%,
$button(10,10,10,35,25,15,images\button.pause.png,images\hover.pause.png,Pause,)
,
$button(10,10,10,35,25,15,images\button.play.png,images\hover.play.png,Play,)
)


images used:
(http://img242.imageshack.us/img242/9371/buttonpauseua7.png) (http://imageshack.us)  (http://img133.imageshack.us/img133/6269/hoverpauseyd8.png) (http://imageshack.us) (http://img133.imageshack.us/img133/3391/buttonplayce5.png) (http://imageshack.us) (http://img242.imageshack.us/img242/4825/hoverplayiy9.png) (http://imageshack.us)

button.pause.png, hover.pause.png, button.play.png, hover.play.png

example of cropping:
(http://img148.imageshack.us/img148/3931/croppingph9.png) (http://imageshack.us)

O.o is there some sort of resizing going on?
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-09-27 06:22:58
example of cropping:
(http://img148.imageshack.us/img148/3931/croppingph9.png) (http://imageshack.us)

O.o is there some sort of resizing going on?


That's exactly what I was getting when using the bitmap files, but I changed to 2 png files (different sized), and they displayed fine..

Strange..
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-09-27 06:26:25
ah.

its the dpi on the images... it should be equal to the dpi windows is running at or gdi+ does some scaling. windows normal dpi is 96. or I think you can remove the dpi info form the png altogether, and you won't get scaling.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-27 06:35:05
1) How would one go about removing or modifying the dpi settings of the png from photoshop or irfanview? (I've never done that before)

2) Can you give an example of how to access a "command" from regular foobar main menu commands.. or is it limited to scripts?
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-09-27 06:43:03
1) I don't have photoshop installed, but I'm pretty sure it has a setting. It should be something like image attributes...

2) right now its limited to items from the context menu.

edit: I went ahead and uploaded a new version which ignores the dpi in the images.

and you can use this code

Code: [Select]
$if(%isplaying%,
$button(10,10,0,0,0,0,images\button.pause.png,images\hover.pause.png,Pause,)
,
$button(10,10,0,0,0,0,images\button.play.png,images\hover.play.png,Play,)
)


(although the buttons don't do anything )
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-27 06:54:28
lol and I just figured out how to change the dpi in irfanview :)

Here's how to do it in irfanview for reference:

- Open the image in IrfanView
- Press 'I' to open the Image> Information dialogue
- The 5th line down change "Resolution" to 96x96 dpi
- Press the [Change] button to adjust the dpi
- Press the [OK] button to return to IrfanView
- Press Ctrl+S to save your changes, overwrite your existing file
- Restart foobar to load the new images.


Another possible bug:

If you leave the mouse hovered over a button, it does not continually display the hover image.
It appears maybe the hover state is being reset when the update every second is performed as this bug goes away if the update every second is unchecked.
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-09-27 06:58:41
Might aswell ask again for this, but is scrolling (not end of line scrolling, but scrolling as in a scrollbar on the right of the panel) something you're considering adding?
Title: Track Info Panel with ability to change font
Post by: musosticky on 2006-09-27 11:45:40
whoops updated before seeing russels notice that this version messes up the alignment of the home stereo display code  can someone upload the last version please?
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-09-27 11:55:12
whoops updated before seeing russels notice that this version messes up the alignment of the home stereo display code  can someone upload the last version please?

http://foobar.bowron.us/russell777/ (http://foobar.bowron.us/russell777/)
Title: Track Info Panel with ability to change font
Post by: xchaser on 2006-09-27 14:45:43
[Help]
I found I can keep both foo_uie_trackinfo.dll and foo_uie_trackinfo_mod.dll but now I have installed all the components but can't see the new foo_uie_trackinfo_mod in the Columns UI Panel.

I only see the old foo_uie_trackinfo.dll one not the new one.
Title: Track Info Panel with ability to change font
Post by: Purple Monkey on 2006-09-27 17:21:58
Make sure you have the latest version of ColumnsUI (0.1.3 beat1v5).
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-09-27 18:54:05
Thanks for fixing the $font issue.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-27 19:02:56
Is there any way to display an image without positioning it absolutely? So that it basically appears wherever the current cursor position is? I am trying to use images in conjunction with $progress2() to create a textured progress bar.
Title: Track Info Panel with ability to change font
Post by: xchaser on 2006-09-27 19:12:24
Make sure you have the latest version of ColumnsUI (0.1.3 beat1v5).



Thanks alot That did it. I guess I have to update the album one too heh thanks again.
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-09-27 23:04:33
I'm not sure if this is a bug or not, but I am getting artifacts on transparent PNG's left from the mouse-over image.

Original PNG:
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-09-27 23:38:03
make sure both images are the same size. it looks like you need to increase the size of the first one to match the second one.

Might aswell ask again for this, but is scrolling (not end of line scrolling, but scrolling as in a scrollbar on the right of the panel) something you're considering adding?


it's not going to work with different alignments (eg. bottom). Why would you need scrolling?



whoops updated before seeing russels notice that this version messes up the alignment of the home stereo display code  can someone upload the last version please?

http://foobar.bowron.us/russell777/ (http://foobar.bowron.us/russell777/)


I'd prefer it if people didn't make old binaries publicly available as it may create confusion. If people want an older version PM or email is fine (not me though, as I don't have any older versions ).

Is there any way to display an image without positioning it absolutely? So that it basically appears wherever the current cursor position is? I am trying to use images in conjunction with $progress2() to create a textured progress bar.


not currently.
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-09-27 23:49:59
make sure both images are the same size. it looks like you need to increase the size of the first one to match the second one.

They PNG's I am using are all the same size (62x13).  The images I posted here don't match in size because I just quickly took screen shots of each state and manually cropped them in IrfanView for display on here.

This is the code in case I'm doing something wrong:
Code: [Select]
// Rating Stars
$puts(rating,$if(%rating%,%rating%,0))

$button(3,3,0,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating1.png,Rating: 1 ?,)
$button(3,3,13,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating2.png,Rating: 2 ??,)
$button(3,3,26,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating3.png,Rating: 3 ???,)
$button(3,3,39,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating4.png,Rating: 4 ????,)
$button(3,3,52,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating5.png,Rating: 5 ?????,)
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-09-27 23:52:47
please post the originals and I will see if I can reproduce it.
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-09-27 23:56:55
please post the originals and I will see if I can reproduce it.

http://lunaelement.net/files/foobar_images.zip (http://lunaelement.net/files/foobar_images.zip)
Title: Track Info Panel with ability to change font
Post by: tomthomson on 2006-09-28 00:54:58
there's a slight display lag when changing track on the new build.


also experiencing that behaviour
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-09-28 02:32:34
it's not going to work with different alignments (eg. bottom). Why would you need scrolling?


Good point. I asked because I wanted to display lyrics (non-timestamped) in this panel as opposed to the 'normal' trackinfo (weird behaviour when there's too much text to scroll & text doesn't stay centered if it wraps onto another line).

That's the main reason.
Title: Track Info Panel with ability to change font
Post by: CepiPerez on 2006-09-28 02:35:35
I've downloaded the latest version and it doesn't support buttons.
Can you tell what's the problem?
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-09-28 02:44:40
I've uploaded a new version which fixes the graphical glitch with buttons.

I've downloaded the latest version and it doesn't support buttons.
Can you tell what's the problem?


details?
Title: Track Info Panel with ability to change font
Post by: CepiPerez on 2006-09-28 02:51:12
I've uploaded a new version which fixes the graphical glitch with buttons.


I've downloaded the latest version and it doesn't support buttons.
Can you tell what's the problem?


details?


Where can I find the new version?
The first page of this topic has a version of Aug-30-06.
This version doesn't support buttons.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-09-28 03:03:40
try clearing your browser cache. if you go through a proxy you might have to do other things...
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-28 03:07:39
The first page still says 8-30-2006 however if you click on the link, the archive you download contains a version of the component that should identify itself as "0.6 beta [Sep 27 2006 - 20:37:46]". If it doesnt, clear your cache and try again.
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-09-28 03:47:02
I'd like to request the option to be able to move/edit objects in the panel using buttons.

For example:
I could press a button, and it would shift a piece of text up, and another button which would shift a piece of text down. So basically, it would add, or subtract a certain value from a selected axis, with such a command like.. Move ID1 X 10,

where:

Move = Command Name
ID1 = ID of item which is going to be shifted (discussed below)
X = Axis to be moved along, either X or Y
10 = Value to be moved by. Positive for down/right, negative for up/left

The ID section would obviously need to be implemented somehow, maybe by adding an $id() function, where the string inside the brackets is the id for whatever follows, until a new alignment is set, or an image is drawn. OR the $id() function could have two parameters $id(<name>,<content>), where the content (a block of text/etc) is included in the function so that it is easier to identify what to be changed.

Thoughts..?
Title: Track Info Panel with ability to change font
Post by: gob on 2006-09-28 04:01:28
if you are able to get the width of the info box is it possible to get the width of a string? if this function is included we could elipsize the text or make it scroll without adding any other code to the plugin besides measuring the string length.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-28 04:05:12
%_width% - The width of the panel in pixels
$calcwidth(x) - The width of string x in pixels
$len(x) - The width of string x in characters
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-28 10:01:04
thinking about it, with buttons you could make simple tagging panel with indication of things like mood / tempo and buttons to set it. other obvious thing to set other than rating is skip state ...

edit: i did a quick test, but the "hotspots" are shifted, i have no idea what i did wrong - or if it is a bug. i had to move my mouse someplace under "joyful" for "sad" to get hover image:

):

Code: [Select]
$font(Calibri,10,Bold,90-90-90)
$alignabs(5,5,100,15,left,center)mood
$font(Calibri,10,,90-90-90)
$alignabs(22,20,100,15,left,center)sad
$alignabs(22,35,100,15,left,center)joyful
$alignabs(22,50,100,15,left,center)relaxing

$button(5,20,5,20,122,15,data\misc images\choise2-no.png,data\misc images\choise2-no-focused.png,,)
$button(5,35,5,35,122,15,data\misc images\choise2-yes.png,data\misc images\choise2-yes-focused.png,,)
$button(5,50,5,50,122,15,data\misc images\choise2-no.png,data\misc images\choise2-no-focused.png,,)
Title: Track Info Panel with ability to change font
Post by: ...Just Elliott on 2006-09-28 12:11:12
buttons just don't display no matter what for me. :/
Title: Track Info Panel with ability to change font
Post by: Sw!ng on 2006-09-28 12:21:04
Yeah, this update sounds fantastic. But I have
a FEW questions:

I haven't understood the parameters of the $button - function .... (dstX,dstY,x,y,w,h)
Please, can someone shortly explain them to me ??

And what is ment with "Options" for the $button-function ...??

I second the request for a list of "new" functions (like $imageabs2 ), since I dont use the "Single-Column-Playlist".
To stay on this way:
"$imageabs2" is working how ??

And it was mentioned, that the font-thing had been fixed. So I can repeat my old question:
-How is the font-size measured ?? -The width of a character, or its height, or what else ?? (I dont mean px or pt. Just the dimension)


.THNX.
for your help !!
Title: Track Info Panel with ability to change font
Post by: Sam Stoat on 2006-09-28 12:27:54
Like Sw!ng, I'd like a full explanation of $imageabs2().  I tried following this, taken from the changelog for single column display,

Code: [Select]
$imageabs2(resizeW,resizeH,srcX,srcY,srcW,srcH,dstX,dstY,image,options)

but couldn't get it working properly.  The first two parameters only seem to move the picture, not resize.  Does the track info panel version work the same as the single column display version?
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-28 12:49:41
buttons just don't display no matter what for me. :/

to tell the truth - i have problems too. buttons work, then suddenly i can't see them. it may be problem with caching or something ...

I haven't understood the parameters of the $button - function .... (dstX,dstY,x,y,w,h)
Please, can someone shortly explain them to me ??

dstX and dstY is position of the top-left corner of the button image (i.e. place where normal or hover button image will be placed). x, y, w and h define button's activation rectangle, i.e. rectangular place which reacts to mouse hover by displaying hover image on dstX and dstY position and reacts to mouse click by executing command specified as the 9th parameter.

this way of specifying it is nice, as you don't have to change image only directly under the activation rectangle. great example of this are the rating stars terrestrial posted above. you react to actions over individual stars, but draw the whole image.

And what is ment with "Options" for the $button-function ...??

i don't know whether ther are any possible options now or not, but this will be place to specify additional options for buttons - i can imagine ppl will request quite a few features and some of them could be specified here like in $imageabs etc.

And it was mentioned, that the font-thing had been fixed. So I can repeat my old question:
-How is the font-size measured ?? -The width of a character, or its height, or what else ?? (I dont mean px or pt. Just the dimension)

imho it depends on the font file. there's some sort of base character rectangle which specifies some guidelines / borders (even though they can be overrun) for character glypths - and you set height of this rectangle.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-09-28 14:03:53
thinking about it, with buttons you could make simple tagging panel with indication of things like mood / tempo and buttons to set it. other obvious thing to set other than rating is skip state ...

edit: i did a quick test, but the "hotspots" are shifted, i have no idea what i did wrong - or if it is a bug. i had to move my mouse someplace under "joyful" for "sad" to get hover image:

):

Code: [Select]
$font(Calibri,10,Bold,90-90-90)
$alignabs(5,5,100,15,left,center)mood
$font(Calibri,10,,90-90-90)
$alignabs(22,20,100,15,left,center)sad
$alignabs(22,35,100,15,left,center)joyful
$alignabs(22,50,100,15,left,center)relaxing

$button(5,20,5,20,122,15,data\misc images\choise2-no.png,data\misc images\choise2-no-focused.png,,)
$button(5,35,5,35,122,15,data\misc images\choise2-yes.png,data\misc images\choise2-yes-focused.png,,)
$button(5,50,5,50,122,15,data\misc images\choise2-no.png,data\misc images\choise2-no-focused.png,,)


try this:

Code: [Select]
$button(5,20,0,0,117,15,data\misc images\choise2-no.png,data\misc images\choise2-no-focused.png,,)
$button(5,35,0,0,117,15,data\misc images\choise2-yes.png,data\misc images\choise2-yes-focused.png,,)
$button(5,50,0,0,117,15,data\misc images\choise2-no.png,data\misc images\choise2-no-focused.png,,)


or..

Code: [Select]
$button(5,20,0,0,0,0,data\misc images\choise2-no.png,data\misc images\choise2-no-focused.png,,)
$button(5,35,0,0,0,0,data\misc images\choise2-yes.png,data\misc images\choise2-yes-focused.png,,)
$button(5,50,0,0,0,0,data\misc images\choise2-no.png,data\misc images\choise2-no-focused.png,,)


the hotspot rect is relative to the position of the button.

I second the request for a list of "new" functions (like $imageabs2 ), since I dont use the "Single-Column-Playlist".


just $imageabs2 if I remember correctly.

Quote
And it was mentioned, that the font-thing had been fixed. So I can repeat my old question:
-How is the font-size measured ?? -The width of a character, or its height, or what else ?? (I dont mean px or pt. Just the dimension)


you can go here (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/fontext_8fp0.asp) for all the details

Like Sw!ng, I'd like a full explanation of $imageabs2().  I tried following this, taken from the changelog for single column display,

Code: [Select]
$imageabs2(resizeW,resizeH,srcX,srcY,srcW,srcH,dstX,dstY,image,options)

but couldn't get it working properly.  The first two parameters only seem to move the picture, not resize.  Does the track info panel version work the same as the single column display version?


the src rect specifies which part of the resized image you want. leave it to 0s if you want the whole image.
Title: Track Info Panel with ability to change font
Post by: ...Just Elliott on 2006-09-28 14:19:30
Any ideas on my display problem, terrestrial? I'm trying to have rating stars like Youtube: displays the rating as normal stars, hovering over a star makes it look as if it's rated that much, clicking the star rates it. my test just... doesn't display :S
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-09-28 14:37:20
try using absolute paths for the images...
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-28 15:09:40
the hotspot rect is relative to the position of the button.

aha!

as for the problem of not showing images: the issue i'm experiencing is than when i start foobar, i see no images. if i change the formatting to use other images (i have two sets with different size of the circle, with names varying only by choise / choise2 prefix), i can see them.

my guess is that track info panel mod is trying to load the images on start and because of some timeout, it ends up not loading them and showing nothing. as these "blank images" are being cached, it stays like that until the next restart (when i have to change formatting back to the original set to be able to see anything).

and terrestrial - any possibility of extending the positioning system (x,y,width,height in various functions) by for example relative values or percentage values? relative would be nice if we could put images directly into the text flow (example: using image with vertical separator directly inside text flow to visually separate it; relative positioning could come handy in case of that image being taller than line's height - i could move it up using negative relative position to make the text look vertically centered against the image). that's advanced useless stuff, i guess
Title: Track Info Panel with ability to change font
Post by: ...Just Elliott on 2006-09-28 15:11:54
Here's my code btw, gratiously stolen from an earlier visitor. I use the star images from http://commons.wikimedia.org/wiki/Stars (http://commons.wikimedia.org/wiki/Stars).

Code: [Select]
$puts(rating,$if(%rating%,%rating%,0))

$button(3,3,0,0,0,0,images\rating$get(rating).png,images\rating1.png,r1,)
$button(3,3,13,0,13,13,images\rating$get(rating).png,images\rating2.png,r2,)
$button(3,3,26,0,13,13,images\rating$get(rating).png,images\rating3.png,r3,)
$button(3,3,39,0,13,13,images\rating$get(rating).png,images\rating4.png,r4,)
$button(3,3,52,0,13,13,images\rating$get(rating).png,images\rating5.png,r5,)
Title: Track Info Panel with ability to change font
Post by: anishbenji on 2006-09-28 15:38:10
1) I don't have photoshop installed, but I'm pretty sure it has a setting. It should be something like image attributes...

2) right now its limited to items from the context menu.

edit: I went ahead and uploaded a new version which ignores the dpi in the images.

and you can use this code

Code: [Select]
$if(%isplaying%,
$button(10,10,0,0,0,0,images\button.pause.png,images\hover.pause.png,Pause,)
,
$button(10,10,0,0,0,0,images\button.play.png,images\hover.play.png,Play,)
)


(although the buttons don't do anything )

Since you can only do things from the context menu, with foo_run you could create a run service... say called playpause that calls foobar2000 /playpause. That part works fine, and it is available from the context menu. Now how would I get the $button function call that context menu item?
Anish
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-28 15:41:29
it doesn't have to be on the context menu. it has to be foobar's menu command (i.e. it's the same as using /command:<comand name> from command line). you simply use the command's name, but that name can't identify more than just one specific command, or you're in trouble ...
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-09-28 15:48:36
as for the problem of not showing images: the issue i'm experiencing is than when i start foobar, i see no images. if i change the formatting to use other images (i have two sets with different size of the circle, with names varying only by choise / choise2 prefix), i can see them.

my guess is that track info panel mod is trying to load the images on start and because of some timeout, it ends up not loading them and showing nothing. as these "blank images" are being cached, it stays like that until the next restart (when i have to change formatting back to the original set to be able to see anything).

that's weird... do the images work using $imageabs2 ?

Quote
and terrestrial - any possibility of extending the positioning system (x,y,width,height in various functions) by for example relative values or percentage values? relative would be nice if we could put images directly into the text flow (example: using image with vertical separator directly inside text flow to visually separate it; relative positioning could come handy in case of that image being taller than line's height - i could move it up using negative relative position to make the text look vertically centered against the image). that's advanced useless stuff, i guess

eventually there will be some way to add images into a text stream, but extending the positioning system is not really possible as the image drawing and text drawing functions are separate.

Here's my code btw, gratiously stolen from an earlier visitor. I use the star images from http://commons.wikimedia.org/wiki/Stars (http://commons.wikimedia.org/wiki/Stars).

Code: [Select]
$puts(rating,$if(%rating%,%rating%,0))

$button(3,3,0,0,0,0,images\rating$get(rating).png,images\rating1.png,r1,)
$button(3,3,13,0,13,13,images\rating$get(rating).png,images\rating2.png,r2,)
$button(3,3,26,0,13,13,images\rating$get(rating).png,images\rating3.png,r3,)
$button(3,3,39,0,13,13,images\rating$get(rating).png,images\rating4.png,r4,)
$button(3,3,52,0,13,13,images\rating$get(rating).png,images\rating5.png,r5,)

change the relative images\ to an absolute postion (or try moving the images folder to the foobar folder, first).

Since you can only do things from the context menu, with foo_run you could create a run service... say called playpause that calls foobar2000 /playpause. That part works fine, and it is available from the context menu. Now how would I get the $button function call that context menu item?
Anish

just use the name of the command (that's displayed in the context menu).
Title: Track Info Panel with ability to change font
Post by: anishbenji on 2006-09-28 15:52:27
Then how (if it's possible) would you create a button to pause/unpause playback?
Anish
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-28 15:55:31
Then how (if it's possible) would you create a button to pause/unpause playback?
Anish

"play or pause"
Title: Track Info Panel with ability to change font
Post by: anishbenji on 2006-09-28 16:13:31
I got it working. Thanks. I seemed to have a weird bug or something...
The code of mine that didn't work was
Code: [Select]
$if(%_isplaying%,
.
.
.
$if(%_ispaused%,
$alignabs(24,18,30,30,left,middle)
$font(Arial,13,shadow,200-200-200)
▌▌
$button(23,23,0,0,20,20,images\button.png,images\button2.png,play,)
,
$alignabs(23,17,30,30,left,middle)
$font(Arial,19,shadow,200-200-200)

$button(23,23,0,0,20,20,images\button.png,images\button2.png,pause,)
)
)

The pause doesn't work at all and the play button, causes playback to start from the beginning of the song (when it was paused in the middle).

I re-did the code like this
Code: [Select]
$if(%_isplaying%,
.
.
.
$if(%_ispaused%,
$alignabs(24,18,30,30,left,middle)
$font(Arial,13,shadow,200-200-200)
▌▌
,
$alignabs(23,17,30,30,left,middle)
$font(Arial,19,shadow,200-200-200)►
)
$button(23,23,0,0,20,20,images\button.png,images\button2.png,playpause,)
)

and now it works fine. I don't know what why the first one didn't work??
Anyway thanks for all your help
Anish
Title: Track Info Panel with ability to change font
Post by: Andrew_TA on 2006-09-28 16:47:29
Um, I upgraded this component now after use of it and noticed it had been update.. only to see padding.. is just gone now? I've looked all over, no answers.. :/
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-28 17:02:47
you can use $padding(horizontal,vertical). you can't set different padding for each border on the same axis though.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-09-28 17:14:58
I'm having a bit of a problem with the rating code. How does one display the unrated image when track is unrated and 0 when rating is set to 0? Also I can't figure out how to rate the track on click, when I click now nothing happens.
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-28 17:29:15
I'm having a bit of a problem with the rating code. How does one display the unrated image when track is unrated and 0 when rating is set to 0? Also I can't figure out how to rate the track on click, when I click now nothing happens.

for rating = 0 you need special logic and possibly another image for no rating at all. it depends on your use, some users do not use zero rating or consider it to be the same as no rating (of course if you want to remove rating from already rated song, the basic formatting posted there wouldn't help, you would need special button for that).

for rating the track on click - you need to set up masstager / quicktag / custominfo commands to do these actions, name them like "rate 1" or "set rating = 2" etc. and then use that name as command parameter for $button function.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-09-28 17:32:36
Thanks for the reply. I have custominfo plugin. The code 'Set Rating = 5' doesn't work for me.
Title: Track Info Panel with ability to change font
Post by: ...Just Elliott on 2006-09-28 17:39:15
Did you actually set up a script?
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-09-28 17:41:10
Script?
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-28 17:49:38
as i said, you got to go to (in this case) custom info's settings and create "tag item" like:

name:Custom Info/Rate 0
field name:RATING
value:0

etc.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-09-28 17:54:39
I have that.
Name: Rate/1
Field Name: RATING
Value: 1

etc.
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-28 17:56:04
that's not a good name, as you probably couldn't identify that command just by "1". i suggest you rename your actions to something like "Rate/Rate 1" etc. you would use "Rate 1" (without the quotation marks) as command parameter in $button.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-09-28 18:01:36
Now it works. Thanks
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-09-28 18:25:01
I have this strangest problem:i have buttons for rating and mood,the commands are assigned via the masstager.When i click on rating=x it works fine,but if i click on mood=x after it,it sets the mood correctly,but removes the rating field.Now i've noticed that if you go to "properties" of the playing track and use the "reload"
function it fixes the problem,but there's no way to access this command via the $button function.Any ideas?
Title: Track Info Panel with ability to change font
Post by: Sam Stoat on 2006-09-28 18:29:06
the src rect specifies which part of the resized image you want. leave it to 0s if you want the whole image.

That's how I thought it should work, but its not.  Here's my code:

Code: [Select]
$imageabs2(200,200,,,,,,,'F:\Foobar Pictures\'$meta(artist sort,0).jpg,)

As it stands it should resize the image to 200x200 at 0x0.  I think that's correct.  But instead the picture isn't displayed.  If I remove the 200,200 the picture appears, but at its original size.  If I increase the size to about 500x500, the picture is displayed full size, but moved to the left and down.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-09-28 18:39:51
Nevermind,i did it.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-28 19:02:45
Code: [Select]
...
$button(23,23,0,0,20,20,images\button.png,images\button2.png,playpause,)
...

and now it works fine. I don't know what why the first one didn't work??
...


So what is the "Command" for play/pause? I tried "playpause" like above and also "play or pause" as mazy suggested but my button simply doesnt do anything.

Here's my current code:
Code: [Select]
$if($and(%isplaying%,$not(%ispaused%)),
$button(10,10,0,0,25,15,images\button.pause.png,images\hover.pause.png,playpause,)
,
$button(10,10,0,0,25,15,images\button.play.png,images\hover.play.png,playpause,)
)


The button displays properly according to playback state and the hover works well (except the aforementioned updateeverysecond hoverstate problem).. but doesnt do anything at all whe I click on it.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-09-28 22:58:41
I'm experiencing a really serious slow down after upgrading to the latest version.Not only in trackinfo mod panel
(which is taking 2 seconds to update) but in all the rest of foobar also,for example it freezes when i'm changing
the volume or selecting next track.If switched back to previous version everything is back to normal.
Running win xp x64 on Intel dual core 3 GHz processor with 1G RAM.Any ideas?
Title: Track Info Panel with ability to change font
Post by: apathy on 2006-09-28 23:25:47
I'm experiencing a really serious slow down after upgrading to the latest version.Not only in trackinfo mod panel
(which is taking 2 seconds to update) but in all the rest of foobar also,for example it freezes when i'm changing
the volume or selecting next track.If switched back to previous version everything is back to normal.
Running win xp x64 on Intel dual core 3 GHz processor with 1G RAM.Any ideas?


Yep, I have 2.5g 1gig ram and im getting the same thing 
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-09-28 23:29:36

I'm experiencing a really serious slow down after upgrading to the latest version.Not only in trackinfo mod panel
(which is taking 2 seconds to update) but in all the rest of foobar also,for example it freezes when i'm changing
the volume or selecting next track.If switched back to previous version everything is back to normal.
Running win xp x64 on Intel dual core 3 GHz processor with 1G RAM.Any ideas?


Yep, I have 2.5g 1gig ram and im getting the same thing 

I think it have to be reported as a bug,unless it's may be caused by incompatibility with some other component.
Title: Track Info Panel with ability to change font
Post by: gob on 2006-09-29 00:17:39
%_width% - The width of the panel in pixels
$calcwidth(x) - The width of string x in pixels
$len(x) - The width of string x in characters


those functions are already in there?? sweet! i would have updated to this version a long time ago.. i'll have a go at this crazy new panel when i have the time, hopefully later tonight when i get home.
thanks.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-09-29 01:32:49
Ok,i examined the slowdown issue and it appears to be caused by:
Quote
+added support for cwb_hooks callback notifications

Now if you switch to previous version of cwb_hooks that doesn't provide the callback notifications it's all good
again.I think it have to be fixed as both newest cwb_hooks and trackinfo mod versions provides absolutely
essential functions,but don't get along with each other.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-09-30 15:38:29
I have a problem with a hidden feature in this plugin. When I double-click the the track info mod panel what I select is displayed in the panel. But if I double-click again and no track is playing I get '?' and '[UNKNOWN FUNCTION]' text. Wouldn't it be better if no track is playing that the selected track information is displayed instead, until a track IS playing.

Also. Would it be possible to clean up the settings dialog (display options). And perhaps make the code text box a little bigger.
Title: Track Info Panel with ability to change font
Post by: kockroach on 2006-09-30 15:46:15
I have a problem with a hidden feature in this plugin. When I double-click the the track info mod panel what I select is displayed in the panel. But if I double-click again and no track is playing I get '?' and '[UNKNOWN FUNCTION]' text. Wouldn't it be better if no track is playing that the selected track information is displayed instead, until a track IS playing.

Also. Would it be possible to clean up the settings dialog (display options). And perhaps make the code text box a little bigger.

I always started my old track info panel with this code:
Code: [Select]
$if($and($stricmp(%_trackinfo_mode%,Follow Cursor),$stricmp(%_trackinfo_notrack%,1)),
'NO TRACK SELECTED',
$if($and($stricmp(%_trackinfo_mode%,Now playing),$stricmp(%_trackinfo_notrack%,1)),
'NO TRACK PLAYING',...)

The "..." is where you would put the rest of your code to display whatever info in the playback/selected mode when a track is present.

Just a suggestion to work around the problem.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-09-30 15:55:31
That's great if there is a workaround. Though your code only makes everything disappear for me.
Title: Track Info Panel with ability to change font
Post by: kockroach on 2006-09-30 15:59:40
mil3s,

It should work if you put all of your current code where the "..." is at the end.  Plus, I accidentally forgot one more ")" at the end.  There should be two, not one.  If not, maybe post your code, and I will test it out quick in mine.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-09-30 16:11:01
Works now. Thanks.  The ')' was missing as you said.

2 more questions.
*Why does the button rating code only work if I have Rating in the right-click menu?
*What is $drawrect?
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-09-30 17:09:13
*Why does the button rating code only work if I have Rating in the right-click menu?
*What is $drawrect?

you have to have some command (main menu or context menu) to reference from $button, that's why. custom info creates commands in context menu, but you may be able to remove it from it, i'm not 100% sure though.

$drawrect is custom function terrestrial put into his components. it can be used to draw rectangles (with given pen and brush colors, effects etc.), there's more info about it in the wiki (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_(foo_uie_trackinfo_mod)#To_draw_a_rectangle).
Title: Track Info Panel with ability to change font
Post by: CepiPerez on 2006-09-30 21:49:01
I have a problem with the buttons.

For example, I have this:
$button(10,140,0,0,0,0,pause1.png,pause2.png,Pause,)

It doesn't work.
I don't have the Pause command in the context menu, but I have it in the Playback menu in the toolbar.
What can I do?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-09-30 21:58:22
CepiPerez:

I have been wrestling with this one myself. From what I've been able to gather, $button() can currently only access commands present in the right-click context menu. It cannot access commands from the foobar main menu nor the playback menu.

However, foo_run runservices are displayed in the right-click context menu. Therefore you can create a runservice called for example "playpause" and set that runservice to execute "foobar2000.exe /playpause". This method is a bit sluggish and I would very much like to find an alternative.

If anyone else has further information about this, corrections, or alternatives please post.
Title: Track Info Panel with ability to change font
Post by: Ken-chan on 2006-10-01 00:24:46
Edit: Never mind, sometimes a refresh does all the work for you. See post above mine.
Title: Track Info Panel with ability to change font
Post by: skyhopper88 on 2006-10-01 06:50:21
(http://img180.imageshack.us/img180/2240/scrnshtyq6.png) (http://img180.imageshack.us/my.php?image=scrnshtyq6.png)


Would you mind posting your code and images for the rest of this? I suck at formatting, so I have to either steal something or have a blueprint to go by.
Title: Track Info Panel with ability to change font
Post by: rouge on 2006-10-02 15:41:49
(http://img180.imageshack.us/img180/2240/scrnshtyq6.png) (http://img180.imageshack.us/my.php?image=scrnshtyq6.png)

Would you mind posting your code and images for the rest of this? I suck at formatting, so I have to either steal something or have a blueprint to go by.

Quick and dirty, but here it is:

Code: [Select]
///bg///
$imageabs(0,0,images\cloudbw.png,)
$imageabs(0,25,images\grassleaves.png,)

$align(center,top)
$font(lucida sans unicode, 8, bold glow-0-0-0,255-255-255)

///codec///
$if($stricmp($substr(%codec%,1,7),windows),WMA,[%codec%]$char(32)|$char(32))

///encode///
$if($stricmp($codec(),mp3),
$if($stricmp(%__extrainfo%,VBR),VBR$char(32)|,$char(32)CBR$char(32)|$char(32)),)
$char(32)%__bitrate_dynamic%$char(32)kbps$char(32)|$char(32)

///channels///
$if($stricmp(%channels%,8ch),7.1$char(32),)
$if($stricmp(%channels%,7ch),6.1$char(32),)
$if($stricmp(%channels%,6ch),5.1$char(32),)

///mode///
$if($stricmp(%__mp3_stereo_mode%,joint stereo)JOINT STEREO$char(32)|,)
$if($stricmp(%channels%,stereo),STEREO$char(32)|,)
$if($stricmp(%channels%,MONO),MONO$char(32)|,)

///tag type///
$if($strstr($info(tagtype),id3v1),$char(32)ID3V1$char(32),)
$if($strstr($info(tagtype),id3v2),$char(32)ID3V2$char(32),)
$if($strstr($info(tagtype),apev2),$char(32)APEV2,)

///replaygain///
$font(lucida sans unicode,8, bold glow-0-0-0,255-255-255)
$if(%__replaygain_track_gain%,$char(32)|$char(32)ReplayGain,)

///rating///
$char(32)|$char(32)$char(32)$font(lucida sans unicode,8,bold glow-0-0-0,255-255-255)
$repeat(★ ,%rating%)$repeat($font(lucida sans unicode,8,bold glow-0-0-0,100-100-100)★ ,$sub(5,%rating%))

///title///
$alignabs(10,14,%_width%,%_height%,,)
$font(lucida sans unicode,18,bold glow-50-50-50 ,200-200-200)
[%artist% '/' ][%title%]

///album///
$alignabs(25,42,%_width%,%_height%,,)
$font(lucida sans unicode,10, bold glow-50-50-50,200-200-200)
[%album%][$char(32)'('%date%')']

///status///

$puts(count_idx,$add($mod(%_time_elapsed_seconds%,40),1))
$puts(count_path,images\count$get(count_idx).png)
$imageabs($sub(%_width%,102),3,$get(count_path),)

$if(%_ispaused%,
$alignabs($sub(%_width%,72),24,%_width%,%_height%,,)
$font(lucida sans unicode,30, bold glow-0-0-0,200-200-200)
▮▮,
$alignabs($sub(%_width%,67),16,%_width%,%_height%,,)
$font(lucida sans unicode,36, bold glow-0-0-0,200-200-200)
▶ )

///progress///
$alignabs(13,80,%_width%,%_height%,,)
$font(lucida sans unicode,8,bold glow-50-50-50 ,200-200-200)
%playback_time%

$drawrect(0,73,$sub(%_width%,132),7,pencolor-200-200-200 brushcolor-0-0-0 width-1)

$if3($strcmp(%playback_time_seconds%,0)
,,$drawrect(2,75,$muldiv(%playback_time_seconds%,$sub(%_width%,136),%length_seconds%),3,pencolor-200-200-200 brushcolor-200-200-200 width-1)
,)

$alignabs($sub(%_width%,148),80,%_width%,%_height%,,)
%playback_time_remaining%

///fg effect///
$puts(glass_intensity,10)
$imageabs(0,$sub($get(glass_intensity),20),images\glass.png,)

images (http://rapidshare.de/files/35223849/Images.zip.html)
Title: Track Info Panel with ability to change font
Post by: musosticky on 2006-10-02 20:39:58
Using Russell's Home Stereo Code (v1.9 micro) foobar crashes when I try to use the mood/rating buttons during playback. There is no crashlog. Does anyone have an idea why this is happening?
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-10-02 20:46:35
I've been gone for a few weeks. What's new and why hasn't the wiki been updated?
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-02 20:56:39
Using Russell's Home Stereo Code (v1.9 micro) foobar crashes when I try to use the mood/rating buttons during playback. There is no crashlog. Does anyone have an idea why this is happening?

Yes it happens sometimes for an unknown reason,i'll post an update that uses database/textfile/SQL for
saving those values instead of tag writing today.
Title: Track Info Panel with ability to change font
Post by: hifish on 2006-10-02 23:44:49
Greetings,

as a newbie to foobar and this forum, first of all thanks to those folks writing stuff like foobar, plugins etc and to those writing and helping out in this forum !

I read quite a lot of the messages and tutorials, did a few searches, still two questions (for now):

1) I didn't really understand the different align functions. Is it necessary at all to specify them (if I can live with a rather simple trackinfo)? Do they affect everything that follows until a new align-function or ... Maybe someone can point me to a place where I can get a simple introduction (yet a little more detailed than the wiki).

2) About displaying images and buttons in the trackinfo. How can it be, I can display an image using the button tag but not (the same image, location etc) using the imageabs tag? What am I missing here? Could it be it has to with the fact I don't use any align tags in my script so far? Here's my code, where the button is succesful and the image not:
Code: [Select]
$button(10,10,0,0,0,0,icons\png\mp3.png,,,)
$imageabs(20,20,icons\png\mp3.png,)

Thanks in advance
Hifish
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-10-03 04:08:17
Using $align() functions are completely optional however they can be very useful. By default everything just kind of flows like a normal old text editor and if all you want to do is display some basic playback stats this is fine.

However the image functions require absolute positioning, so if you start integrating images and text it's only a matter of time before you start wanting to $alignabs()'ing some text to make sure it flows properly with your images.

$alignabs() functions become rather powerful when you combine them with %_width% and %_height% because then you can have your text automatically position itself reletive to the size of the panel. This lets you use the same code for both full screen and windowed foobar layouts without having to go back and adjust the code.



Code: [Select]
$button(10,10,0,0,0,0,icons\png\mp3.png,,,)
$imageabs(20,20,icons\png\mp3.png,)


This is interesting. I tried your code and it appears to work but not in the way I expected:
(http://img374.imageshack.us/img374/914/icongl8.png) (http://imageshack.us)
Why is the first $button() image overlayed on to of the second $imageabs() function? I expected the opposite to be true given the order in which the code is written. I even went back and commented out each line to ensure I was seeing what I thought I was seeing.

so... 1) is maybe your second image being hidden under the first 2) can anyone explain why $buttion() is overlayed on top of $imageabs()?
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-10-03 05:00:50
can anyone explain why $buttion() is overlayed on top of $imageabs()?


My guess would be so that button clicks can be 'understood', if you like. If the button was drawn under the image, then I'm guessing there would be problems with clicking on them..?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-10-03 05:28:24
I also find it odd that the transparency of the $button() isnt allowing the $imageabs() to show through (notice the grey "shadow")

EDIT: If I rearrange the lines of code so that the "bottom" image is drawn before the "top" image, the transparency works fine. The shadow effect must have something to do with how the $button() forces it's way to the top layer.
Title: Track Info Panel with ability to change font
Post by: Stuart60611 on 2006-10-03 07:49:46
I want to display the current playlist number of the track playing and the total tracks on the given playlist in trackinfo mod.  I tried %list_index%/%list_total% and %playlist_number%/%playlist_total%, but this component does not seem to recognize these fields.  What are the fields to do this?
Title: Track Info Panel with ability to change font
Post by: hifish on 2006-10-03 17:35:33
Thanks for your reply Yotsuya!

Quote
so... 1) is maybe your second image being hidden under the first

well thanks, I was actually clever enough to check that  ... I can easily push around the button changing the x and y settings, the image just doesn't show up, no matter where (x,y) and no matter if the button is in the code or no button at all. So: is not a matter of (x,y) and no interference with the button.

Anyone any other idea why the image doesn't show up? (see my last post)

Quote
2) can anyone explain why $buttion() is overlayed on top of $imageabs()?

Once the image shoes up here, I will try and see if I can help with that

Quote
it's only a matter of time before you start wanting to $alignabs()'ing some text

Pretty sure you are right there. If I'd be faster to understand the syntax I would play with that already. But already having a problem with the image-function I prefer to go step by step and not mess up things too quick
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-10-04 06:05:55
I want to display the current playlist number of the track playing and the total tracks on the given playlist in trackinfo mod.  I tried %list_index%/%list_total% and %playlist_number%/%playlist_total%, but this component does not seem to recognize these fields.  What are the fields to do this?


I know of no way to pull the playlist index for the currently playing song from a context outside of the playlist, however I believe you should be able to pull the total number of items in the currently playing playlist with %cwb_playinglist_count%. This requires you install foo_cwb_hooks (http://www.hydrogenaudio.org/forums/index.php?showtopic=43606). Maybe you should consider stopping by the cwb_hooks thread and request something like a %cwb_playinglist_index%.
Title: Track Info Panel with ability to change font
Post by: Stuart60611 on 2006-10-05 04:57:00

I want to display the current playlist number of the track playing and the total tracks on the given playlist in trackinfo mod.  I tried %list_index%/%list_total% and %playlist_number%/%playlist_total%, but this component does not seem to recognize these fields.  What are the fields to do this?


I know of no way to pull the playlist index for the currently playing song from a context outside of the playlist, however I believe you should be able to pull the total number of items in the currently playing playlist with %cwb_playinglist_count%. This requires you install foo_cwb_hooks (http://www.hydrogenaudio.org/forums/index.php?showtopic=43606). Maybe you should consider stopping by the cwb_hooks thread and request something like a %cwb_playinglist_index%.


Thanks, and I so posted.  Also, although I read in the change log that global variables were implemented, I am having a strange problem with accessing them.  I tried to access hotness, and although the panel recognizes the variable, it is showing strange values for the variable.  Is this a bug or is there some special way to access global variables?
Title: Track Info Panel with ability to change font
Post by: foo_fighter on 2006-10-06 06:43:22
I'd like to display %path% but if it's too long and doesn't have any spaces, it doesn't know how to wrap it. It also doesn't display anything after that. Is this a bug?
Title: Track Info Panel with ability to change font
Post by: Zetto on 2006-10-06 17:00:20
here's mine...
i took some of Russell777's Code (thx man), modified it a bit and added some gfx... still working on it though.

(http://img473.imageshack.us/img473/5086/zettofoovisualckv8.th.jpg) (http://img473.imageshack.us/my.php?image=zettofoovisualckv8.jpg)
Title: Track Info Panel with ability to change font
Post by: Ran Sagy on 2006-10-06 17:21:46
Woah. Looks kind of neat.
Title: Track Info Panel with ability to change font
Post by: CepiPerez on 2006-10-07 05:31:16
Is there any way to scrolling text?
I want to use this panel to show lyrics, but with a background image.
Title: Track Info Panel with ability to change font
Post by: Mr.Q on 2006-10-07 18:42:57
the $button() is not work if without foo_run.dll

who can tell me how to use the function
Title: Track Info Panel with ability to change font
Post by: m0p on 2006-10-08 13:32:00
Having a few problems getting text on my panel to span multiple lines without the colour changing, kinda frustrating. Here is a screenshot: http://img137.imageshack.us/img137/8477/tr...nfoprob1rx3.jpg (http://img137.imageshack.us/img137/8477/trackinfoprob1rx3.jpg)

Notice how the 2nd line of the track field has reverted to blue. I've tried changing the default colour, as well as placing several changes to FFFFFF in many places but it still doesn't stay that correct colour. It's strange because the artist field has the same

The code in question (I'll post the whole panel if anybody wants to see it):
Code: [Select]
$if(%tracknumber%,DA9363'['FFFFFF%tracknumber%DA9363']' )
FFFFFF$if(%title%,$replace(%title%,'(','DA9363('FFFFFF,')',DA9363')'FFFFFF),
$replace(%filename_ext%,'(','DA9363('FFFFFF,')',DA9363')'FFFFFF))$char(10)$char(10)

$if(%artist%,DA9363Artist: FFFFFF$replace(%artist%,
'(','DA9363('FFFFFF,')',DA9363')'FFFFFF))$char(10)
$if(%album%,DA9363Album: FFFFFF$replace(%album%,
'(','DA9363('FFFFFF,')',DA9363')'FFFFFF)FFFFFF
$if(%date%,DA9363'['FFFFFF%date%DA9363']'))$char(10)
DA9363Total plays: FFFFFF%play_count%$char(10)$char(10)


EDIT: Wierd, removing the date tag from the file (therefor not displaying it) fixes it. Looks like I've already got a solution (stick the date in a new $if(%album%).
Title: Track Info Panel with ability to change font
Post by: unart on 2006-10-10 17:07:02
A small suggestion for a bitrate indicator:

(http://img58.imageshack.us/img58/6649/ibitratebv2.png)

The Code (If interested):
Code: [Select]
$puts(xcoord,10)
$puts(ycoord,178)
$puts(color,250-250-250)
$puts(bita,$div($mul($add(%bitrate%,-64),30),192))
$ifgreater($get(bita),30,$puts(bita,30),)
$ifgreater(0,$get(bita),$puts(bita,0),)
$alignabs($add($get(xcoord),5),$add($get(ycoord),-5),600,50,,)
$font(Arial,10,bold,$get(color))
$repeat(.,$get(bita))
$font(,10,,)
$drawrect($add($get(xcoord),6),$add($get(ycoord),10),117,1,brushcolor-$get(color) pencolor-null)
$alignabs($add($get(xcoord),5),$add($get(ycoord),4),600,50,,)י
$alignabs($add($get(xcoord),44),$add($get(ycoord),4),600,50,,)י
$alignabs($add($get(xcoord),83),$add($get(ycoord),4),600,50,,)י
$alignabs($add($get(xcoord),122),$add($get(ycoord),4),600,50,,)י
$font(,8,,)
$alignabs($get(xcoord),$add($get(ycoord),12),600,50,,)64
$alignabs($add($get(xcoord),36),$add($get(ycoord),12),600,50,,)128
$alignabs($add($get(xcoord),75),$add($get(ycoord),12),600,50,,)192
$alignabs($add($get(xcoord),114),$add($get(ycoord),12),600,50,,)256  kb/s
$alignabs($add($get(xcoord),131),$get(ycoord),200,20,,)bitrate

cwb_hooks plugin is needed.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-10 17:58:30
cwb_hooks plugin is needed.

What for?
Title: Track Info Panel with ability to change font
Post by: unart on 2006-10-10 18:26:17

cwb_hooks plugin is needed.

What for?


My mistake. You do not need it for bitrate. I use a volume indicator as well, which requires cwb_hooks.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-10-11 03:53:58
Hey unart that's a nice idea for a bitrate indicator. I took your idea and ran with it a bit:
(http://img147.imageshack.us/img147/7729/bitratebargd4.png) (http://imageshack.us)

Code: [Select]
// -- Bitrate Bar -- //

$puts(bitratebar.width,200)
$puts(bitratebar.offsetx,10)
$puts(bitratebar.offsety,20)
$puts(bitratebar.text,26)

// Frame
$drawrect($get(bitratebar.offsetx),$get(bitratebar.offsety),$get(bitratebar.width),1,pencolor-233-233-233)
$drawrect($get(bitratebar.offsetx),$sub($get(bitratebar.offsety),6),1,12,pencolor-233-233-233)
$drawrect($add($get(bitratebar.offsetx),$get(bitratebar.width)),$sub($get(bitratebar.offsety),6),1,12,pencolor-233-233-233)

// Tick Marks
$drawrect($add($get(bitratebar.offsetx),$muldiv(11.11,$get(bitratebar.width),100)),$get(bitratebar.offsety),1,6,pencolor-233-233-233)
$drawrect($add($get(bitratebar.offsetx),$muldiv(22.22,$get(bitratebar.width),100)),$get(bitratebar.offsety),1,6,pencolor-233-233-233)
$drawrect($add($get(bitratebar.offsetx),$muldiv(33.33,$get(bitratebar.width),100)),$get(bitratebar.offsety),1,6,pencolor-233-233-233)
$drawrect($add($get(bitratebar.offsetx),$muldiv(44.44,$get(bitratebar.width),100)),$get(bitratebar.offsety),1,6,pencolor-233-233-233)
$drawrect($add($get(bitratebar.offsetx),$muldiv(55.55,$get(bitratebar.width),100)),$get(bitratebar.offsety),1,6,pencolor-233-233-233)
$drawrect($add($get(bitratebar.offsetx),$muldiv(77.77,$get(bitratebar.width),100)),$get(bitratebar.offsety),1,6,pencolor-233-233-233)

// Labels
$font(tahoma,7,,233-233-233)
$alignabs($sub($get(bitratebar.offsetx),4),$get(bitratebar.text),%_width%,%_height%,,)32
$alignabs($sub($add($get(bitratebar.width),$get(bitratebar.offsetx)),8),$get(bitratebar.text),%_width%,%_height%,,)320
$alignabs($add($get(bitratebar.offsetx),$muldiv(11.11,$get(bitratebar.width),100),-6),$get(bitratebar.text),%_width%,%_height%,,)64
$alignabs($add($get(bitratebar.offsetx),$muldiv(22.22,$get(bitratebar.width),100),-6),$get(bitratebar.text),%_width%,%_height%,,)96
$alignabs($add($get(bitratebar.offsetx),$muldiv(33.33,$get(bitratebar.width),100),-6),$get(bitratebar.text),%_width%,%_height%,,)128
$alignabs($add($get(bitratebar.offsetx),$muldiv(44.44,$get(bitratebar.width),100),-6),$get(bitratebar.text),%_width%,%_height%,,)160
$alignabs($add($get(bitratebar.offsetx),$muldiv(55.55,$get(bitratebar.width),100),-6),$get(bitratebar.text),%_width%,%_height%,,)192
$alignabs($add($get(bitratebar.offsetx),$muldiv(77.77,$get(bitratebar.width),100),-6),$get(bitratebar.text),%_width%,%_height%,,)256

// Bar
$if(%isplaying%,
$drawrect($add($get(bitratebar.offsetx),1),$sub($get(bitratebar.offsety),6),$sub($get(bitratebar.width),1),6,brushcolor-$ifgreater(%bitrate%,320,166-202-240,$ifgreater(%bitrate%,32,10-36-106,128-128-128)) pencolor-null)
$ifgreater(%bitrate%,32,$ifgreater(%bitrate%,320,,
$drawrect($add($get(bitratebar.offsetx),1),$sub($get(bitratebar.offsety),6),$sub($muldiv($muldiv(100,$sub(%bitrate%,32),288),$get(bitratebar.width),100),1),6,brushcolor-0-128-255 pencolor-null)
),)
,)

The bar will change colors if the bitrate falls out of range of the indicator and is rather easy to resize. I marked most commonly used bitrates.

EDIT: Code Optimizations
Title: Track Info Panel with ability to change font
Post by: Insolent on 2006-10-11 08:30:30
Is there any way to get playback buttons to work without using foo_run? I have some text and I want to overlay an invisible button to do what the text says.

(http://img223.imageshack.us/img223/8513/untitled1pd6.png)

I've used this code to position the button over the 'Play' text (and yes it is positioned correctly as it works when I use foo_run), but it doesn't want to work.

Code: [Select]
$button(0,0,$get(start_pos),12,$get(play_w),20,,,Play,)
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-10-11 10:46:18
Is there any way to get playback buttons to work without using foo_run?


Not currently, no. 
Title: Track Info Panel with ability to change font
Post by: Stuart60611 on 2006-10-11 16:15:33
I posted this b/4, but I still am not sure of the answer.  The changelog indicates that global variables work, but when I access them I get strange values.  Does anyone know if this is a bug, or is there a special method by which one must access global variables?
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-10-12 17:33:15
globals should work here (not yet in single column playlist). what strange values are you getting?

------------------

updated- new $button2 and support for main menu commands.

an example of how to use $button2:

Code: [Select]
$if(%isplaying%,
$if(%ispaused%,
$button2(0,0,0,0,100,16,
'resume',
'$font(,,glow-0-0-0,255-255-255)resume',
play,)
,
$button2(0,0,0,0,100,16,
'pause',
'$font(,,glow-0-0-0,255-255-255)pause',
pause,)
)
,
$button2(0,0,0,0,100,16,
'play',
'$font(,,glow-0-0-0,255-255-255)play',
play,)
)
Title: Track Info Panel with ability to change font
Post by: Stuart60611 on 2006-10-12 17:58:27
globals should work here (not yet in single column playlist). what strange values are you getting?


I am trying to access the %hotness% variable defined in my global variables.  The value for hotness is showing correctly in my playlist as a number from 1-100 but when I access it in track info mod I am getting values like .0789, etc.  All values less than 1.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-10-12 18:30:00
does it work in the original trackinfo?
Title: Track Info Panel with ability to change font
Post by: Stuart60611 on 2006-10-12 18:54:21
does it work in the original trackinfo?



Not sure.  Not at home to test it.  but it does work in the columns ui playlist.
Title: Track Info Panel with ability to change font
Post by: blaxima on 2006-10-12 22:40:55
updated- new $button2 and support for main menu commands.


Thanx for this terrestrial!!
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-12 23:04:44
For some mysterious reason i'm not able to get images in $button2  command,not with relative path,nor with absolute,a bug?
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-10-12 23:39:24
whats the code you're using?
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-12 23:45:07
whats the code you're using?

Code: [Select]
$button2(341,$add($div(%_height%,5),16),0,0,11,19,images\button.png,images\button.png,'volume mute',)
or:
$button2(341,$add($div(%_height%,5),16),0,0,11,19,'images\button.png','images\button.png','volume mute',)
or:
$button2(341,$add($div(%_height%,5),16),0,0,11,19,C:\Program Files (x86)\foobar2000\images\button.png,C:\Program Files (x86)\foobar2000\images\button.png,'volume mute',)
or:
$button2(341,$add($div(%_height%,5),16),0,0,11,19,'C:\Program Files (x86)\foobar2000\images\button.png','C:\Program Files (x86)\foobar2000\images\button.png','volume mute',)

Non of the variations shows the image,but the command is executed.Also the images is bigger than the clickable area,but it worked fine with $button,so i don't think it's a problem,or am i wrong?
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-10-13 01:09:31
Does $imageabs2 work in this module?
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-13 01:36:31
Found the source of the problem i was talking about one post ago:if you specify active area that is smaller than the image,the image won't show up (not like in old $button command)
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-10-13 02:05:56

whats the code you're using?

Code: [Select]
$button2(341,$add($div(%_height%,5),16),0,0,11,19,images\button.png,images\button.png,'volume mute',)
or:
$button2(341,$add($div(%_height%,5),16),0,0,11,19,'images\button.png','images\button.png','volume mute',)
or:
$button2(341,$add($div(%_height%,5),16),0,0,11,19,C:\Program Files (x86)\foobar2000\images\button.png,C:\Program Files (x86)\foobar2000\images\button.png,'volume mute',)
or:
$button2(341,$add($div(%_height%,5),16),0,0,11,19,'C:\Program Files (x86)\foobar2000\images\button.png','C:\Program Files (x86)\foobar2000\images\button.png','volume mute',)

Non of the variations shows the image,but the command is executed.Also the images is bigger than the clickable area,but it worked fine with $button,so i don't think it's a problem,or am i wrong?


if you want to just use images for buttons then use the old $button command. if you want to use "code" for buttons then use $button2. so:

Code: [Select]
$button(0,0,0,0,0,0,images\button.png,images\button-hot.png,volume mute,)

or the equivalent
Code: [Select]
$button2(0,0,0,0,11,19,'$imageabs(0,0,images\button.png,)','$imageabs(0,0,images\butoon-hot.png,)',volume mute,)



Does $imageabs2 work in this module?


yes
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-13 02:21:33
@ terrestrial
Thanks for the explanation and of course for the amazing plugin
Title: Track Info Panel with ability to change font
Post by: anishbenji on 2006-10-13 02:48:53
This code doesn't seem to show anything, even though the button behaves correctly
Code: [Select]
$button2(0,0,0,0,40,40,'$font(Arial,15,shadow,200-200-200)','$font(Arial,15,glow-250-250-250,200-200-200)',pause,)

Am I doing something wrong?
Anish
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-13 03:01:23
This code doesn't seem to show anything, even though the button behaves correctly
Code: [Select]
$button2(0,0,0,0,40,40,'$font(Arial,15,shadow,200-200-200)','$font(Arial,15,glow-250-250-250,200-200-200)',pause,)
?

Am I doing something wrong?
Anish

try changing both 40's to 60's
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-10-13 03:08:40
all the code has to be self contained inside the button. it doesn't carry through outside the button. think of it as a separate trackinfo panel.
Title: Track Info Panel with ability to change font
Post by: anishbenji on 2006-10-13 03:11:57

This code doesn't seem to show anything, even though the button behaves correctly
Code: [Select]
$button2(0,0,0,0,40,40,'$font(Arial,15,shadow,200-200-200)','$font(Arial,15,glow-250-250-250,200-200-200)',pause,)
?

Am I doing something wrong?
Anish

try changing both 40's to 60's

I tried that. it didn't work. The height of trackinfo is 43 pixels, and the '?' fits nicely in the middle 50% height-wise, so that shouldn't be an issue anyway.
Anish

all the code has to be self contained inside the button. it doesn't carry through outside the button. think of it as a separate trackinfo panel.

OK, I got it now. Thanks
Anish
Title: Track Info Panel with ability to change font
Post by: Blitzmeister on 2006-10-13 09:58:03
Can someone help me here. I have a panel set up with play, pause stop, next & back buttons they all work except the back button. In the run services they are all set to the same location.. etc --> D:\Audio\foobar\foobar2000.exe /Previous. When I click the back button all I get is an error box. All the others work fine.

This is my relevant trackinfo I think -->
$button($sub($div(%_width%,2),64),32,0,0,0,0,neo1\pause1b.png,neo1\pause2b.png,Pause,)
$button($sub($div(%_width%,2),40),31,0,0,0,0,neo1\prev1.png,neo1\prev2.png,Previous,)
$button($add($div(%_width%,2),17),31,0,0,0,0,neo1\next1.png,neo1\next2.png,Next,)
$button($add($div(%_width%,2),44),32,0,0,0,0,neo1\stop1.png,neo1\stop2.png,Stop,)
$button($sub($div(%_width%,2),15),26,0,0,0,0,neo1\play1.png,neo1\play2.png,Play,)

Cheers.
Title: Track Info Panel with ability to change font
Post by: Strictly4me on 2006-10-13 10:55:01
Try instead of "previous" ... only "prev".

((((( Strictly4me )))))
Title: Track Info Panel with ability to change font
Post by: Blitzmeister on 2006-10-13 11:55:36
Thank you very much
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-13 16:10:34
Would it possible in your next update to include the ability to change the cursor type (http://rainbow.arch.scriptmania.com/css/css_cursor_control.html) when hovering over text?

For example:
$font(Arial, 10, underline cursor-pointer, 255-0-0)
Title: Track Info Panel with ability to change font
Post by: MrEnergizer on 2006-10-13 19:47:15
I am trying to put useable buttons in my track info panel. The button appears but does nothing. I have run services but don't know how to configure it.  Can someone explain how to link the button with run services please.
TIA
Mr E
Title: Track Info Panel with ability to change font
Post by: Ran Sagy on 2006-10-13 21:56:46
(http://content.imagesocket.com/thumbs/foobar_in_shape3e9.png) (http://imagesocket.com/view/foobar_in_shape3e9.png)

Hrmf. Because i've used a big $padding in this code (so that the text is aligned after the album-art), Long text drops down to the next line on long names (as it is also padded from the other side).

Anyone have an elegent solution to that?
My code is pretty basic:
Code: [Select]
$imageabs2(200,200,,,,,$sub(%_width%,215),15,'c:\Software\foobar2000\components\default.png',)
$imageabs2(200,200,,,,,$sub(%_width%,215),15,$replace(%path%,%filename_ext%,)$replace(%album%,\,_,/,_,:,_,*,_,?,_,<,_,>,_,|,_,",_)[ '('%date%')'].jpg,)
$padding(230,35)

$align(right,top)$font(Levenim MT,16,bold,255-155-55)
$upper(%title%)

$align(right,middle)$font(Levenim MT,14,bold,200-100-10)
$upper(%album artist%)

$align(right,bottom)$font(Levenim MT,14,bold,155-55-5)
%album%[ %date%]
Title: Track Info Panel with ability to change font
Post by: blaxima on 2006-10-13 22:47:08
@ChaosBlade
use this
Code: [Select]
$padding(0,0)$align(right,top)
Before the title string and adjust the padding to your liking.

use this
Code: [Select]
$padding(0,0)$align(right,bottom)
For the other stuff

You will have to fool with the padding and keep in mind that the lines under the first will be realative to that.
To have the most control you could add the string I put before everything so you can position them seprately

@terrstrial
This has probably been asked before but is it possible for you to make it so that I could use any aspect ratio for images?
Title: Track Info Panel with ability to change font
Post by: Ran Sagy on 2006-10-13 22:55:17
I'm not sure how that helps. My issue that the padding works from both ways - So i lose 200px from each side when i want to lose 200px just from the image's side.
Title: Track Info Panel with ability to change font
Post by: blaxima on 2006-10-13 23:04:08
Try it first and see

1)I gave you a suggestion in the appearance thread to align the song title to the left so it wont trip over the stuff underneath.

2)If you align it like I said you will be able to create a line under the song title that will be used by long titles and not trip over the stuff underneath.

If you dont want the entire song title to be displayed you will have to add a variable to your string like $iflonger (I think)
Title: Track Info Panel with ability to change font
Post by: Ran Sagy on 2006-10-13 23:26:20
So there's no way to tell it to align to the right after the image, and not wrap if it reaches that line's end?

EDIT: Did it the most ugly way possible - $alignabs with random pixel values

(http://content.imagesocket.com/thumbs/SmoothBar20001dd.png) (http://imagesocket.com/view/SmoothBar20001dd.png)
Title: Track Info Panel with ability to change font
Post by: Hamallainen on 2006-10-14 15:27:53
updated- new $button2 and support for main menu commands.

Hi,
If I understand well, we can now acces the main menu commands without using the run service.
However i don't manage to make it work.
For example if want to open the Console window, how should i do ?
Here's what i tried and none of them worked but if i use any context menu command instead, it works as intended.

Code: [Select]
$button(0,0,0,0,21,21,image.png,imagehot.png,Main/View/Console,)
or
$button(0,0,0,0,21,21,image.png,imagehot.png,'Main/View/Console',)
or
$button(0,0,0,0,21,21,image.png,imagehot.png,View/Console,)
or
$button(0,0,0,0,21,21,image.png,imagehot.png,'View/Console',)
or
$button(0,0,0,0,21,21,image.png,imagehot.png,Console,)
or
$button(0,0,0,0,21,21,image.png,imagehot.png,'Console',)

i also tried with $button2

thanks
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-14 15:49:53
Hi,
If I understand well, we can now acces the main menu commands without using the run service.
However i don't manage to make it work.
For example if want to open the Console window, how should i do ?
Here's what i tried and none of them worked but if i use any context menu command instead, it works as intended.

thanks


You need to use $button2. It opens the console window on mine: $button2(0,0,0,0,21,21,image.png,imagehot.png,Console,)
Title: Track Info Panel with ability to change font
Post by: Hamallainen on 2006-10-14 16:09:31
You need to use $button2. It opens the console window on mine: $button2(0,0,0,0,21,21,image.png,imagehot.png,Console,)

Thanks for your answer.
I thought i had updated the plugin to the last version but no (f***ing cache)
Works fine now with the last version
and it even works with both $button and $button2
Title: Track Info Panel with ability to change font
Post by: dmce on 2006-10-14 21:11:11
Can anyone give me a little help on this. Im displaying the current track in the trackinfo_mod panel along with album art. My info is being padded beyond the album art, but this pads the right side as well, give a very small area for the text and causes it to wrap.

The picture below shows it better than i describe

(http://rockinchair.co.uk/simplegal/galleries/Misc/foobar_thumb.jpg) (http://rockinchair.co.uk/simplegal/view/Misc/foobar.jpg/full)
Title: Track Info Panel with ability to change font
Post by: Ran Sagy on 2006-10-14 22:14:17
Not much you can do there. I just used $alignabs for it, But thats rather 'dirty' as you need to specify your own 'box' for the text. That, and the fact mine had all kinds of random pixel values
Title: Track Info Panel with ability to change font
Post by: gaillard on 2006-10-14 22:32:33
is it possible to use this to display a picture or one of many pngs in a music folder??


edit: can you use wildcards in the folder adress, so you can use foobars titleformatting then?
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-15 00:01:43
@terrstrial
I'm not sure if I am doing something wrong, but $get variables do not seem to work inside the $button2 function.

Code: [Select]
$puts(fonthover,$font(tahoma,8,nocleartype underline,255-0-0))

$button2(117,14,0,0,$calcwidth(See Review),18,'$font(tahoma,8,nocleartype underline,88-116-163)See Review','$get(fonthover)See Review',Album Review,)
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-10-15 01:24:14
@terrstrial
I'm not sure if I am doing something wrong, but $get variables do not seem to work inside the $button2 function.

Code: [Select]
$puts(fonthover,$font(tahoma,8,nocleartype underline,255-0-0))

$button2(117,14,0,0,$calcwidth(See Review),18,'$font(tahoma,8,nocleartype underline,88-116-163)See Review','$get(fonthover)See Review',Album Review,)


He said that the $button2 display parts are like seperate trackinfo panels, so I'm guessing that it won't work.

You could either put the $puts into the $button2 code, or just replace the $get with the actual code, which will work, but will probably defeat the point of having the $puts/$get in the first place..
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-15 01:44:34
@spex04
You're right. I missed that post. Thanks.

all the code has to be self contained inside the button. it doesn't carry through outside the button. think of it as a separate trackinfo panel.
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-10-16 05:57:54
Right now I'm using this code:

Code: [Select]
$alignabs(50,32,$sub($div(%_width%,2),283),15,,)
$font(,,,255-255-255)%track%. %title%


How can i make "%track%. %title%" scroll horizontally?
What I'm doing is confining the text in a certain area that is flexible depending on how wide the panel is, and if the text is too wide for that area i want to to clip it down and scroll.
Title: Track Info Panel with ability to change font
Post by: henn1ng on 2006-10-16 15:09:45
i need some help folks :/

i am all new to this coding etc. so show some mercy pls

this is my current code:

Code: [Select]
$if(%_isplaying%,
$imageabs2(,,,,,,$sub(%_width%,75),$sub($div(%_height%,2),38),'C:\programme\foobar2000\images\arrows.png',)
$imageabs2(474,90,,,,,0,-13,'C:\Programme\foobar2000\components\Untitled-1.png',)
$padding(4,2)
$align(left,bottom)$font(Swis721 Cn BT D-Type,10,bold glow-91-100-111 glowblur-10,203-206-211)
$font(Swis721 Cn BT D-Type,10,bold glow-91-100-111 glowblur-10,203-206-211)$get(head)Length: $font(Swis721 Cn BT D-Type,10,bold  glow-129-138-150 glowblur-10,255-255-255)$get(info)$if(%_isplaying%,%_time_elapsed%$get(anno)$if(%_length%, / %_length%,)$if(%_time_elapsed%, / $muldiv(%_time_elapsed_seconds%,100,%_length_seconds%)'%')$if(%_length%, / -%_time_remaining%),%_length%)$char(10)
$font(Swis721 Cn BT D-Type,10,bold glow-91-100-111 glowblur-10,203-206-211)$get(head)Quality: $font(Swis721 Cn BT D-Type,10,bold  glow-129-138-150 glowblur-10,255-255-255)$if(%__codec%, $get(info)%__codec%) $get(info)
$if2(%__bitrate_dynamic%,%__bitrate%) $get(anno)Kb/s $if($stricmp(%__codec%,mp3),$if($stricmp(%__extrainfo%,vbr),VBR,CBR))
$char(10)
$if(%__lame_version%,$get(head)Encoder: $font(Swis721 Cn BT D-Type,10,bold  glow-129-138-150 glowblur-10,255-255-255)$get(info)$left(%__lame_version%,4) $right(%__lame_version%,4) [$upper(%__lame_profile%)]$char(10),)
$if(%__flac_vendor%,$get(head)Encoder: $font(Swis721 Cn BT D-Type,10,bold  glow-129-138-150 glowblur-10,255-255-255)$get(info)$if($stricmp(%__flac_vendor%,reference libFLAC 1.1.2 20050205),FLAC 1.1.2 -8)$char(10),)
$if(%__mpc_profile%,$get(head)MPC Profile: $font(Swis721 Cn BT D-Type,10,bold  glow-129-138-150 glowblur-10,255-255-255)$get(info)%__mpc_profile%$char(10),)
$font(Swis721 Cn BT D-Type,10,bold glow-91-100-111 glowblur-10,203-206-211)$get(head)Compression: $font(Swis721 Cn BT D-Type,10,bold  glow-129-138-150 glowblur-10,255-255-255)$get(info)$div(1411,%__bitrate%).$substr($muldiv(1411,100,%__bitrate%),2,3):1 '('$get(info)$muldiv(%__bitrate%,100,1411)$get(anno)'% of original quality)'$char(10)
$font(Swis721 Cn BT D-Type,10,bold glow-91-100-111 glowblur-10,203-206-211)$get(head)Channel Mode: $font(Swis721 Cn BT D-Type,10,bold  glow-129-138-150 glowblur-10,255-255-255)$get(info)$if($stricmp($codec(),MP3),$get(space2)$caps(%__mp3_stereo_mode%),
$if(%__channels%,$ifgreater(%__channels%,1,Stereo,Mono),'?'))$char(10)
$if(%__bitspersample%,$font(Swis721 Cn BT D-Type,10,bold glow-91-100-111 glowblur-10,203-206-211)$get(head)Bitdepth: $get(info)%__bitspersample% bits/sample$char(10),)
$if(%__samplerate%,$font(Swis721 Cn BT D-Type,10,bold glow-91-100-111 glowblur-10,203-206-211)$get(head)Samplerate: $font(Swis721 Cn BT D-Type,10,bold  glow-129-138-150 glowblur-10,255-255-255)$get(info)$div(%__samplerate%,1000).$substr(%__samplerate%,3,3) KHz $char(10))
$if(%_filesize%,$font(Swis721 Cn BT D-Type,10,bold glow-91-100-111 glowblur-10,203-206-211)$get(head)Filesize: $font(Swis721 Cn BT D-Type,10,bold  glow-129-138-150 glowblur-10,255-255-255)$get(info)
$div(%_filesize%,1048576).$left($num($muldiv($mod(%_filesize%,1048576),100,1048576),2),2) $get(anno)'MB'$char(10),)

$align(right,bottom)

$font(calibri,8,bold glow-129-138-150 glowblur-10,255-255-255)
$upper(%title%)
$font(calibri,8,bold glow-91-100-111 glowblur-10,129-138-150)
 /
$font(calibri,8,bold glow-91-100-111 glowblur-10,203-206-211)
$upper(%artist%)

,

$imageabs2(66,66,,,,,$sub($div(%_width%,2),33),$sub($div(%_height%,2),38),'C:\programme\foobar2000\images\arrows.png',))

//////////TRACKINFO MOD PROGRESS BAR

$padding(0,0)
$drawrect(,,,10,brushcolor-null pencolor-222-225-228)

$puts(progress,$muldiv(%playback_time_seconds%,$sub(%_width%,10),%length_seconds%))

$ifgreater($get(progress),0,
$padding(2,2)$drawrect(,,$get(progress),6,brushcolor-190-197-203 pencolor-null),)


/////////////PLAYLIST DROPDOOOWN

%index%/%total% %title%
$hsl(140,25,121)
$if(%isactive%,' (active'$if(%isplaying%,', playing')')',$if(%isplaying%,' (playing)'))
$tab(2)[ '('%lock%')']
$hsl(140,25,121)' ('
%size% tracks @ %length%')'

and this is what it looks like:

(http://home.arcor.de/sgtskillz/helppls.jpg)


as you can see, i was trying to add that image on top and it just doesnt look right. i'd like that image to be width dynamic and also show up when im not playing music.

any help is appreciated!

thx in advance.
Title: Track Info Panel with ability to change font
Post by: blaxima on 2006-10-16 23:27:51
i need some help folks :/

i am all new to this coding etc. so show some mercy pls

this is my current code:
alskdjflkasjflkjsalkdflksadjflkjsadlkfj

as you can see, i was trying to add that image on top and it just doesnt look right. i'd like that image to be width dynamic and also show up when im not playing music.

any help is appreciated!

thx in advance.



I'm not the best with code but I'm learning........(i think) but looking at yours I'd say for starters the
Code: [Select]
$if(%_isplaying%,
string being right before your images could be why they dont show when your not playing anything

also the image does not stretch across the entire panel so you can try this
Code: [Select]
$imageabs2(,,,,,,0,0,'C:\Programme\foobar2000\components\Untitled-1.png',)

becuase the plugin wants even ratios anyways ie (100,100,,,,,)
Title: Track Info Panel with ability to change font
Post by: PlazzTT on 2006-10-17 22:41:41
I'm having trouble getting images to work and I can't figure out why. I'm using this line:

$imageabs(0,0,'C:\Program Files\foobar2000\images\cloudbw.png',)

and the file is definately there, but I'm still just getting black.

(I'm having the same problem with the single column playlist plugin)

Anything obvious I could be missing?
Title: Track Info Panel with ability to change font
Post by: acedriver on 2006-10-18 00:08:41
@PlazzTT, if "user profile support" is enable, the image should go into your profile folder

C:\Documents and Settings\USERNAME\Application Data\foobar2000\YOUR IMAGES DIRECTORY\

http://wiki.hydrogenaudio.org/index.php?ti...e_supported.29: (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29#To_include_an_image_.28Note:_Only_PNGs_are_supported.29:)
Title: Track Info Panel with ability to change font
Post by: CepiPerez on 2006-10-18 03:50:05
@terrstrial
Is there a way to use mouse wheel for scroll like the classic trackinfo?
I want to show lyrics with background image.
Title: Track Info Panel with ability to change font
Post by: churowero on 2006-10-18 17:48:22
I'm having trouble getting images to work and I can't figure out why. I'm using this line:

$imageabs(0,0,'C:\Program Files\foobar2000\images\cloudbw.png',)

and the file is definately there, but I'm still just getting black.

(I'm having the same problem with the single column playlist plugin)

Anything obvious I could be missing?



try this:

$imageabs2(,,,,,,,,'C:\Program Files\foobar2000\images\cloudbw.png',)


pd: i have the same problem with 'width dynamic image'

a stretch or resize image code will be nice.
Title: Track Info Panel with ability to change font
Post by: vonmeth on 2006-10-19 18:32:32
"a stretch or resize image code will be nice."

There is a resize, but it seems to only be able to 'squeeze' the image and not stretch it.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-10-19 19:10:59
@terrstrial
Is there a way to use mouse wheel for scroll like the classic trackinfo?
I want to show lyrics with background image.


no, the display code (and syntax) are not really designed for scrolling.

----

I've uploaded a new version which fixes a bug which could cause a crash when using a button. Also a new button command: "TAG:SET:tag:value" which sets tag values without having to use scripts.

example:

Code: [Select]
$button2(0,0,0,0,20,10,'$font(tahoma,11,,0-0-0)Rating1','$font(tahoma,11,bold,0-0-0)Rating1',TAG:SET:Rating:1,)
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-10-19 19:25:23
I've uploaded a new version which fixes a bug which could cause a crash when using a button.
So I guess you didn't find out about the reported display glitches? How can I help?

BTW, would you please edit the first post and add a version info if you offer a new version? Then we can see there, when the post was edited and which version it is. Now we have to search and read your postings within the thread.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-19 19:36:20
Thank you terrestrial
Title: Track Info Panel with ability to change font
Post by: LXtreme on 2006-10-19 21:25:46
Thanks for the update terrestrial!

Question:

How do i know which main menu entries are supported for buttons?!
I am trying to set up my own volume-control, but "Set volume to XYdB" does not work.
Entries like e.g. "Seek ahead by 10 seconds" or "About" work (but do not really help me setting up a volume-control  ).
I looked them up on the Commandline Guide (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Commandline_Guide).
Title: Track Info Panel with ability to change font
Post by: tomthomson on 2006-10-20 01:06:29
Also a new button command: "TAG:SET:tag:value"

New command seems to work very well - no crashes when clicking around on tag-related buttons anymore

Thanks
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-20 01:15:14
2 LXtreme
In latest fb2k versions the volume commands are restricted to volume up\down\mute only,however you can define the volume steps in advanced options window.That's the reason why it doesn't work from $button command.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-10-20 02:16:10
So I guess you didn't find out about the reported display glitches? How can I help?


display glitch in trackinfo? if you're referring to the display glitch in single column playlist, I haven't had a chance to look further into it yet...

Quote
BTW, would you please edit the first post and add a version info if you offer a new version? Then we can see there, when the post was edited and which version it is. Now we have to search and read your postings within the thread.


will try to remember for next time.

New command seems to work very well - no crashes when clicking around on tag-related buttons anymore


it shouldn't crash using scripts anymore either
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-10-20 02:47:02
is there any way i can check if "stop after current" is turned on?
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-10-20 05:15:21
is there any way i can check if "stop after current" is turned on?
foo_cwb_hooks

@Terrestrial: You're right, I was in the wrong thread.
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-20 05:17:35
I've uploaded a new version which fixes a bug which could cause a crash when using a button. Also a new button command: "TAG:SET:tag:value" which sets tag values without having to use scripts.

That is awesome addition. Thank you
Title: Track Info Panel with ability to change font
Post by: LXtreme on 2006-10-20 09:47:58
In latest fb2k versions the volume commands are restricted to volume up\down\mute only

thanx russell777! didn't know that. is there a ressource where all availible commands are listed?
(well, i could use foo_run or the buttons to have a look at them, but isn't there a web-ressource....would be easier for a lazy guy like me  )

Quote
however you can define the volume steps in advanced options window

didn't know about that feature either, so thanks for the hint....now my volume-up and down buttons are more helpful....
and with foo_runs "simultanious runs"-option it might be even possible to create some kind of klickable volume-bar.
(i thought someone allready made something like this with pics included, but i can't find the thread/post anymore)
Title: Track Info Panel with ability to change font
Post by: alphaex32 on 2006-10-20 14:42:04
Would you be able to implement standard windows controls into this somehow, like:
$button_check(xpos,ypos,text,offcriteria,oncriteria,offaction,onaction,disabledcriteria)
$button_radio(xpos,ypos,text,groupname,oncriteria)

I know this could be done with some fancy coding, but it would be nice to have real skinned windows controls with easily set options. You could do stuff like have panels of checkboxes for genres, styles, etc and maybe even dropdown lists, real windows-style progress bars, buttons, etc. Also, you could create custom context menus for certain areas of the panel, so for example you could right click on genre and a menu would popup with a list of genres.
$menu(xstart,ystart,xend,yend,menuitem1,action1,menuitem2,action2,etc...)
Title: Track Info Panel with ability to change font
Post by: odyssey on 2006-10-20 15:40:40
all the code has to be self contained inside the button. it doesn't carry through outside the button. think of it as a separate trackinfo panel.
So you can't have a button changing another buttons image? (Could be useful for effects overlaying other buttons in a panel)

Edit: Sure it can be done, using seperate images as a whole, with seperate hover points. I already do it with my rating control. Sorry, still new to this
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-20 19:02:59
In the case that anyone else is wondering how to remove a tag altogether; I was trying to figure it out myself and found that not specifying a tag value does the trick, like this:

$button2(50,50,0,0,25,13,'$font(tahoma,8,,0-0-0)Test','$font(tahoma,8,underline,0-0-0)Test',TAG:SET:Rating:,)

As far as creating a tag with multiple values or adding to a tag that has multiple values, I haven't found a way to do that, and am not sure it's even possible with the current build. Maybe the next version will use a semi-colon to to separate multiple values or something.
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-20 21:05:41
Bug Report
When no track is playing or the playlist is empty, and you click a button that is using the SET:TAG option;  Foobar crashes.

Code: [Select]
$button2(0,0,0,0,$calcwidth(Test),13,'$font(tahoma,8,,0-0-0)Test','$font(tahoma,8,underline,0-0-0)Test',TAG:SET:Rating:1,)

Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 0043BD59h
Access violation, operation: read, address: 00000000h
Call path:
entry=>app_mainloop
This is the first crash logged by this instance.
Code bytes (0043BD59h):
0043BD19h:  C0 EB 66 39 7D 08 74 21 7E 0A 83 7D 08 02 7F 04
0043BD29h:  B0 01 EB 55 8D 75 E0 E8 1D 7B FC FF 68 2C 7F 4C
0043BD39h:  00 8B C6 50 E8 52 C6 05 00 3B C7 53 76 38 57 8D
0043BD49h:  45 F0 50 8B CE E8 75 61 FD FF 83 65 FC 00 8B 08
0043BD59h:  8B 01 FF 50 20 8A D8 F6 DB 1A DB 83 4D FC FF 8B
0043BD69h:  4D F0 FE C3 85 C9 74 04 8B 01 FF 10 84 DB 75 17
0043BD79h:  47 3B 7D EC 72 C8 32 C0 5B 8B 4D F4 5F 5E 64 89
0043BD89h:  0D 00 00 00 00 C9 C3 B0 01 EB ED B8 DD FA 4A 00
Stack (0012F670h):
0012F650h:  00F8E644 7C9C93C0 77F643DD 7C9C93C0
0012F660h:  00000004 00000000 00F8DB50 00000000
0012F670h:  00000000 0549474C 0012F6FC 0012F6A8
0012F680h:  0040A6F4 0040A709 00000001 00000000
0012F690h:  0012F6B4 004A798B 00000000 0012F6C0
0012F6A0h:  0043BDB1 00000000 0012F6FC 00000000
0012F6B0h:  004DEB6C 0012F6EC 004AFADD FFFFFFFF
0012F6C0h:  0012F9E8 015494CF 0012F6E0 00000000
0012F6D0h:  00FC03D8 00000000 C39E7EA7 0012F6FC
0012F6E0h:  01555DD8 0012F6FC 00000001 0012F9DC
0012F6F0h:  0154ED28 00000000 015157B4 00000000
0012F700h:  00000000 00FC03D8 00000000 C39E7F6B
0012F710h:  01F103C6 05492B58 001B004F 031194D0
0012F720h:  00000000 0012F6FC 05492B58 004DEB6C
0012F730h:  773EABE2 01F103C6 0A010E62 00000000
0012F740h:  00000000 00000000 0000025D 00000000
0012F750h:  0549E1E8 00D8ADBC A54B8AB0 00000000
0012F760h:  BFA0E991 00000000 A54B892C 00000002
0012F770h:  00000000 00000001 00CC0020 FFFFFFFF
0012F780h:  0549E1E8 00D8ADC0 0549E1E8 00D8ADB8
Registers:
EAX: 0012F68C, EBX: 00000000, ECX: 00000000, EDX: 0043BD94
ESI: 0012F6E0, EDI: 00000000, EBP: 0012F69C, ESP: 0012F670
Crash location: "foobar2000", loaded at 00400000h - 004F2000h

Loaded modules:
foobar2000                      loaded at 00400000h - 004F2000h
ntdll                            loaded at 7C900000h - 7C9B0000h
kernel32                        loaded at 7C800000h - 7C8F4000h
COMCTL32                        loaded at 773D0000h - 774D3000h
msvcrt                          loaded at 77C10000h - 77C68000h
ADVAPI32                        loaded at 77DD0000h - 77E6B000h
RPCRT4                          loaded at 77E70000h - 77F01000h
GDI32                            loaded at 77F10000h - 77F57000h
USER32                          loaded at 77D40000h - 77DD0000h
SHLWAPI                          loaded at 77F60000h - 77FD6000h
SHELL32                          loaded at 7C9C0000h - 7D1D5000h
ole32                            loaded at 774E0000h - 7761D000h
shared                          loaded at 10000000h - 1002A000h
comdlg32                        loaded at 763B0000h - 763F9000h
uxtheme                          loaded at 5AD70000h - 5ADA8000h
foo_albumlist                    loaded at 00A30000h - 00A77000h
OLEAUT32                        loaded at 77120000h - 771AC000h
foo_audioscrobbler              loaded at 00A80000h - 00AB7000h
WS2_32                          loaded at 71AB0000h - 71AC7000h
WS2HELP                          loaded at 71AA0000h - 71AA8000h
foo_autoplaylist                loaded at 00B00000h - 00B32000h
foo_browser                      loaded at 00B60000h - 00B9B000h
foo_cdda                        loaded at 00BC0000h - 00BF6000h
foo_common                      loaded at 00C20000h - 00C5A000h
foo_cwb_hooks                    loaded at 00C80000h - 00CAE000h
foo_dbsearch                    loaded at 00CD0000h - 00D3C000h
foo_dsp_crossfader              loaded at 00D60000h - 00D6D000h
MSVCR80                          loaded at 78130000h - 781CB000h
foo_dsp_skip_silence            loaded at 00D90000h - 00D9A000h
foo_dsp_std                      loaded at 00DB0000h - 00DF1000h
foo_input_std                    loaded at 00E20000h - 00F34000h
foo_lnk                          loaded at 00F60000h - 00F79000h
foo_masstag                      loaded at 00FA0000h - 00FF0000h
foo_playcount                    loaded at 01010000h - 01038000h
foo_playlist_tree                loaded at 01060000h - 010C9000h
foo_random                      loaded at 010F0000h - 0112F000h
foo_rgscan                      loaded at 01150000h - 01198000h
foo_run                          loaded at 011C0000h - 011EB000h
foo_uie_albumart                loaded at 01210000h - 01247000h
gdiplus                          loaded at 4EC50000h - 4EDF3000h
foo_uie_albumlist                loaded at 01280000h - 012BF000h
foo_uie_explorer                loaded at 012E0000h - 0131C000h
foo_uie_lyrics                  loaded at 01340000h - 0139E000h
WININET                          loaded at 771B0000h - 77259000h
CRYPT32                          loaded at 77A80000h - 77B14000h
MSASN1                          loaded at 77B20000h - 77B32000h
WINMM                            loaded at 76B40000h - 76B6D000h
foo_uie_quicksearch              loaded at 01470000h - 014B7000h
foo_uie_tabs                    loaded at 014C0000h - 014EA000h
foo_uie_trackinfo_mod            loaded at 01510000h - 01563000h
MSVCP80                          loaded at 7C420000h - 7C4A7000h
foo_ui_columns                  loaded at 01580000h - 01617000h
foo_ui_std                      loaded at 01640000h - 01697000h
foo_utils                        loaded at 016C0000h - 016F9000h
tskh                            loaded at 01A20000h - 01A32000h
CLBCATQ                          loaded at 76FD0000h - 7704F000h
COMRes                          loaded at 77050000h - 77118000h
VERSION                          loaded at 77C00000h - 77C08000h
SETUPAPI                        loaded at 77920000h - 77A79000h
appHelp                          loaded at 77B40000h - 77B62000h
cscui                            loaded at 02240000h - 022F1000h
CSCDLL                          loaded at 76600000h - 7661D000h
USERENV                          loaded at 769C0000h - 76A73000h
mswsock                          loaded at 71A50000h - 71A8F000h
DNSAPI                          loaded at 76F20000h - 76F47000h
iphlpapi                        loaded at 76D60000h - 76D79000h
imon                            loaded at 20B00000h - 20B45000h
WSOCK32                          loaded at 71AD0000h - 71AD9000h
NTMARTA                          loaded at 77690000h - 776B1000h
WLDAP32                          loaded at 76F60000h - 76F8C000h
SAMLIB                          loaded at 71BF0000h - 71C03000h
hnetcfg                          loaded at 662B0000h - 66308000h
wshtcpip                        loaded at 71A90000h - 71A98000h
DSOUND                          loaded at 73F10000h - 73F6C000h
WINTRUST                        loaded at 76C30000h - 76C5E000h
IMAGEHLP                        loaded at 76C90000h - 76CB8000h
wdmaud                          loaded at 72D20000h - 72D29000h
rasadhlp                        loaded at 76FC0000h - 76FC6000h
msacm32                          loaded at 72D10000h - 72D18000h
MSACM32                          loaded at 77BE0000h - 77BF5000h
midimap                          loaded at 77BD0000h - 77BD7000h
KsUser                          loaded at 73EE0000h - 73EE4000h
dciman32                        loaded at 73BC0000h - 73BC6000h
DBGHELP                          loaded at 59A60000h - 59B01000h

Stack dump analysis:
Address: 0040A6F4h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 0040A709h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004A798Bh, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 0043BDB1h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004DEB6Ch, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004AFADDh, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 015494CFh, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 00FC03D8h, location: "foo_masstag", loaded at 00FA0000h - 00FF0000h
Address: 01555DD8h, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 0154ED28h, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 015157B4h, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 00FC03D8h, location: "foo_masstag", loaded at 00FA0000h - 00FF0000h
Address: 004DEB6Ch, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 773EABE2h, location: "COMCTL32", loaded at 773D0000h - 774D3000h
Symbol: "Ordinal414" (+00000BA5h)
Address: 77F16EAAh, location: "GDI32", loaded at 77F10000h - 77F57000h
Symbol: "DeleteDC" (+00000012h)
Address: 773D6B40h, location: "COMCTL32", loaded at 773D0000h - 774D3000h
Symbol: "DllInstall" (+000008C0h)
Address: 77D4B629h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "EndPaint" (+0000000Ch)
Address: 77443B46h, location: "COMCTL32", loaded at 773D0000h - 774D3000h
Symbol: "Ordinal384" (+00057CA6h)
Address: 00CE04A4h, location: "foo_dbsearch", loaded at 00CD0000h - 00D3C000h
Address: 7C910732h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C90EE18h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "strchr" (+00000117h)
Address: 7C910738h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000164h)
Address: 7C910732h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C9106ABh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+000000D7h)
Address: 7C9106EBh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 7C9105D4h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000000h)
Address: 77D48BD9h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowThreadProcessId" (+00000159h)
Address: 7744583Bh, location: "COMCTL32", loaded at 773D0000h - 774D3000h
Symbol: "CreateToolbar" (+00000C97h)
Address: 77444BDBh, location: "COMCTL32", loaded at 773D0000h - 774D3000h
Symbol: "CreateToolbar" (+00000037h)
Address: 7744636Fh, location: "COMCTL32", loaded at 773D0000h - 774D3000h
Symbol: "CreateToolbar" (+000017CBh)
Address: 77D48B26h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowThreadProcessId" (+000000A6h)
Address: 01514A00h, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 77D488D1h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongW" (+0000002Bh)
Address: 77D488DAh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongW" (+00000034h)
Address: 01514A00h, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 7C9105C8h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+0000018Bh)
Address: 7C910551h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+00000114h)
Address: 7C91056Dh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+00000130h)
Address: 01514A00h, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 77D48734h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+0000006Dh)
Address: 77D48B26h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowThreadProcessId" (+000000A6h)
Address: 01514A00h, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 77D488D1h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongW" (+0000002Bh)
Address: 77D488DAh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongW" (+00000034h)
Address: 01514A00h, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 0155080Fh, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 01514A43h, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 01514A00h, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 77D48734h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+0000006Dh)
Address: 01514A00h, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 01514A00h, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 77D48816h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+0000014Fh)
Address: 01514A00h, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 77D70467h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 77D70467h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 77D48830h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetDC" (+00000169h)
Address: 77D489CDh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongW" (+00000127h)
Address: 01514A00h, location: "foo_uie_trackinfo_mod", loaded at 01510000h - 01563000h
Address: 77D4DAEAh, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DestroyWindow" (+00000000h)
Address: 77D5E04Ah, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "IsDialogMessageW" (+0000008Eh)
Address: 77D70467h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 77D489F0h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "GetWindowLongW" (+0000014Ah)
Address: 77D48A10h, location: "USER32", loaded at 77D40000h - 77DD0000h
Symbol: "DispatchMessageW" (+0000000Fh)
Address: 0042FC82h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 10002DD2h, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uCallStackTracker::uCallStackTracker" (+00000032h)
Address: 004C0518h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004307C8h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004C03B8h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004C754Ch, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004C754Ch, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 7C910732h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004C7530h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 7C911538h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "wcsncpy" (+00000AA9h)
Address: 7C910732h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C9106EBh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 7C90EE18h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "strchr" (+00000117h)
Address: 7C910738h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000164h)
Address: 7C911596h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "wcsncpy" (+00000B07h)
Address: 7C9106EBh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 004E41B8h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004B49D0h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 7C91056Dh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+00000130h)
Address: 7C917BF5h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlReAllocateHeap" (+000001F8h)
Address: 7C883780h, location: "kernel32", loaded at 7C800000h - 7C8F4000h
Address: 7C90EE18h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "strchr" (+00000117h)
Address: 7C9106F0h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000011Ch)
Address: 7C9106EBh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 00492016h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004E4238h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 00447CCCh, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 00431F56h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 0049928Dh, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 00497420h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004C0528h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 10002D87h, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uPrintCrashInfo_SetDumpPath" (+000000A7h)
Address: 004C0528h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004AF7B4h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004C0528h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004309CFh, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004E0928h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 00497625h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004938BAh, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004938B4h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004B49E4h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004B3680h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004E4230h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 00497420h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004AFBA8h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 00496334h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 00497420h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 7C816FD7h, location: "kernel32", loaded at 7C800000h - 7C8F4000h
Symbol: "RegisterWaitForInputIdle" (+00000049h)
Address: 7C839AA8h, location: "kernel32", loaded at 7C800000h - 7C8F4000h
Symbol: "ValidateLocale" (+000002B0h)
Address: 7C816FE0h, location: "kernel32", loaded at 7C800000h - 7C8F4000h
Symbol: "RegisterWaitForInputIdle" (+00000052h)
Address: 0049639Dh, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004E0049h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004F0044h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004B0063h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 00410072h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004E0049h, location: "foobar2000", loaded at 00400000h - 004F2000h
Address: 004F0044h, location: "foobar2000", loaded at 00400000h - 004F2000h

Version info:
foobar2000 v0.9.4.1
UNICODE

Additional info:
Track info panel mod 0.6 beta [Oct 18 2006 - 23:08:07]  (foo_uie_trackinfo_mod)
Album List 3.2.0  (foo_albumlist)
cwbowron's title format hooks 1.0.13 [Oct  2 2006 - 09:06:52]  (foo_cwb_hooks)
Audioscrobbler 1.3.4  (foo_audioscrobbler)
Columns UI 0.1.3 beta 1v6 TEST  (foo_ui_columns)
Default User Interface 0.9acc  (foo_ui_std)
Standard Input Array 1.0  (foo_input_std)
Album Art Panel 0.2.5.1  (foo_uie_albumart)
Lyric Show Panels 0.3.0.0  (foo_uie_lyrics)
Crossfader 0.1.6  (foo_dsp_crossfader)
Common services 0.1  (foo_common)
Standard DSP array 1.0  (foo_dsp_std)
Explorer Tree 1.04.6b  (foo_uie_explorer)
Shell link resolver 1.1  (foo_lnk)
Masstagger 1.6  (foo_masstag)
Playback Statistics 1.3.2  (foo_playcount)
FLAC Decoder 1.1.0  (foo_input_std)
Tabbed panel modified 0.2.5  (foo_uie_tabs)
foobar2000 core v0.9.4.1  (Core)
Album list panel 0.2.1 beta 4  (foo_uie_albumlist)
Quick Search Toolbar 2.8j  (foo_uie_quicksearch)
Database search 1.4 beta 3  (foo_dbsearch)
Playlist Tree Panel 2.2.3 [Aug 25 2006 - 11:27:07]  (foo_playlist_tree)
Music Browser 1.2.2c [Jul  6 2006 - 09:42:02]  (foo_browser)
Run services 0.3.2  (foo_run)
CD Audio Decoder 2.1.1  (foo_cdda)
WMA Decoder 1.1  (foo_input_std)
Playlist tools 0.5.7  (foo_utils)
ReplayGain Scanner 2.0.2  (foo_rgscan)
Randomized playlist entry 1.2.3  (foo_random)
Skip silence 0.1  (foo_dsp_skip_silence)
Title: Track Info Panel with ability to change font
Post by: ...Just Elliott on 2006-10-20 21:42:47
Hardly a bug, how can it tag a file that doesn't exist? Disable your buttons or something when nothing's playing.
Title: Track Info Panel with ability to change font
Post by: Coppertop on 2006-10-20 21:45:02
Hardly a bug, how can it tag a file that doesn't exist? Disable your buttons or something when nothing's playing.


It shouldn't crash, but maybe just do nothing...
Title: Track Info Panel with ability to change font
Post by: musosticky on 2006-10-20 21:59:10
any crash should be investigated for overall functionality
Title: Track Info Panel with ability to change font
Post by: ...Just Elliott on 2006-10-20 22:05:10
masstagger does the same via buttons you know
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-20 23:21:25
masstagger does the same via buttons you know

Not for me. I can't reproduce a crash in the same instance using a masstagger script called via the toolbar buttons (if that is what you mean). As it should, it does nothing when no song is playing, when nothing is selected, or when the playlist is empty.
Title: Track Info Panel with ability to change font
Post by: dtsneak on 2006-10-21 21:58:08
My %artist% and whatnot follows the cursor rather than what is being played. Is that intended?
Title: Track Info Panel with ability to change font
Post by: avish on 2006-10-21 22:11:52
^ Double click the trackinfo panel
Title: Track Info Panel with ability to change font
Post by: dtsneak on 2006-10-21 22:21:12
^ Double click the trackinfo panel

Ahh, thanks for the quick reply.

May I suggest a toggle in the context menu?
Title: Track Info Panel with ability to change font
Post by: stampgevaar on 2006-10-22 12:52:03
How do I do this in de track info mod panel cause I really cant figure it out.
The text keeps going down when it is too long en then my whole panel isn't correct.
kan somebody please tell me how to align all this and how to put lines in there I would be VERY gratefull,I'm getting really desperate!

http://img156.imageshack.us/img156/2209/fo...hristophzc9.jpg (http://img156.imageshack.us/img156/2209/foobar2000christophzc9.jpg)

thanks in advance

in the normal trackinfopanel i just did this with tabs but I want to use the modified version to do rating buttons like I saw on the stereo skin.
Title: Track Info Panel with ability to change font
Post by: LXtreme on 2006-10-22 14:02:46
How do I do this in de track info mod panel cause I really cant figure it out.
The text keeps going down when it is too long en then my whole panel isn't correct.

As scrolling and ellipses for line ending were removed from the settings in foo_uie_trackinfo_mod it has to be implemented in the code.

i would suggest to cut off the text which is too long:
Code: [Select]
//////////////////////////////////////////////////////////////////////////////
$puts(winlen,29)
//////////////////////////////////////////////////////////////////////////////
$alignrel(left,top)
Filename:
$alignrel(right,top)
$ifgreater($add($len2(filename: ),$len2(%filename%)),$get(winlen)
,$cut(%filename%,$sub($get(winlen),$len2(filename: )))
,%filename%)
$alignset()

as $cut does not work with $calcwidth and %width%, you have to define the width of your panel in characters -> just change the 29 behind winlen to your needs.

if you want to scroll the text instead of cutting it, take a look at russel's home stereo display code (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=47714&view=findpost&p=424177) (especially the Trackinfo-Code in the SDK).
if you want to "swap" infos if they are to long, you can get impressions later in the same thread (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=47714&view=findpost&p=443045).

hope i could help you fighting your desperation!
Title: Track Info Panel with ability to change font
Post by: stampgevaar on 2006-10-22 14:41:23
thanks for the quick reply


edit: But isn't it possible to just do it like the previous panel with the tab functions?
Title: Track Info Panel with ability to change font
Post by: stampgevaar on 2006-10-23 14:03:48
And it maybe sounds stupid but what's the difference between alignabs and alignrel and alignset cause I don't really get it?
Title: Track Info Panel with ability to change font
Post by: RadioactiveMan on 2006-10-23 16:09:57
Hello, i experimented a little bit with the component and especially the $button(). Now I would like to perform two actions with one click. How can I achieve that?

I have experienced another problem but I don't know if its foo_cwb_hacks or trackinfo's fault. Depending on %cwb_playback_state% i change the appearance of some buttons. At the start of foobar the playback is stopped. But the buttons aren't shown the right way. I either have to doubleclick the panel two times or resize it before everything looks the way it is supposed. Has anyone else experienced that behaviour?
Title: Track Info Panel with ability to change font
Post by: 2Pacalypse on 2006-10-23 22:44:41
can some1 help me out. how do i :

1. retrieve the album art ie folder.jpg from the playing album
2. (not sure if this is relevant) in the appearance thread ppl have album art in their playlists. is this through this plug in? if so how
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-10-24 00:13:47
can some1 help me out. how do i :

1. retrieve the album art ie folder.jpg from the playing album
2. (not sure if this is relevant) in the appearance thread ppl have album art in their playlists. is this through this plug in? if so how


You can do both with the $imageabs or $imageabs2 function
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-24 04:10:59
can some1 help me out. how do i :
2. (not sure if this is relevant) in the appearance thread ppl have album art in their playlists. is this through this plug in? if so how

They're using foo_uie_single_column_playlist (http://www.hydrogenaudio.org/forums/index.php?showtopic=47810) to put images inside their playlist.
Title: Track Info Panel with ability to change font
Post by: Ken-chan on 2006-10-24 12:09:59
Just wndering: Does %_selected% not work with the trackinfo_mod?
Title: Track Info Panel with ability to change font
Post by: Divajjn on 2006-10-24 20:45:47
i have a question . i use track info mod. look at this code, it´s the code i use for showing the rating of album/track.. if i have some tracks rated 0 i want it to display (NOT RATED). is it possible. and if so, how do i do it...

Code: [Select]
$font(Swis721 Cn BT D-Type,8,bold glow-91-100-111 glowblur-10,203-206-211)$get(head)Rating: $font(Swis721 Cn BT D-Type,8,bold glow-129-138-150 glowblur-10,255-255-255)$get(info)$if(%rating%,%rating%,)
$char(10)
Title: Track Info Panel with ability to change font
Post by: Ken-chan on 2006-10-24 21:44:55
$if($strcmp(%rating%,0),NOT RATED,Rest of the code)?
Title: Track Info Panel with ability to change font
Post by: Divajjn on 2006-10-24 22:01:30
$if($strcmp(%rating%,0),NOT RATED,Rest of the code)?



cheers, that worked just fine =)
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-24 23:01:38
@terrestrial
If Foobar2000 is the inactive window on my desktop and I click anywhere on a trackinfo_mod panel of Foobar2000 it does not make Foobar2000 the active window. Whereas if I click another area of Foobar2000 while it's the inactive window, such as the title bar, Foobar2000 becomes the active window. Is this trackinfo_mod behaviour intentional or a bug?
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-10-25 00:49:35
Hello, i experimented a little bit with the component and especially the $button(). Now I would like to perform two actions with one click. How can I achieve that?


you currently can't have two buttons overlapping. maybe in the next version.

Just wndering: Does %_selected% not work with the trackinfo_mod?


nope.

@terrestrial
If Foobar2000 is the inactive window on my desktop and I click anywhere on a trackinfo_mod panel of Foobar2000 it does not make Foobar2000 the active window. Whereas if I click another area of Foobar2000 while it's the inactive window, such as the title bar, Foobar2000 becomes the active window. Is this trackinfo_mod behaviour intentional or a bug?


I'll try to fix it for the next version.


--------------


I've uploaded a new version. Two new buttons to filter and sort playlists. Two examples on how to use the new buttons:

Code: [Select]
$font(calibri,9,,0-0-0)
$alignabs(18,2,$sub(%_width%,20),40,left,top)$if2(%filterstring%,No Filter)
$button2(2,2,0,0,14,14,'$font(wingdings 3,9,bold,0-0-0)u','$font(wingdings 3,9,bold,82-18-18)u','FILTER:source|!source!:genre|%genre%:decade|$mul($div(%date%,10),10):composer|%composer%:artist|%artist%:album|%album%',)

$alignabs(18,18,$sub(%_width%,20),40,left,top)$if2(%sortstring%,No Sort)
$button2(2,18,0,0,14,14,'$font(wingdings 3,9,bold,0-0-0)u','$font(wingdings 3,9,bold,82-18-18)u','SORT:genre|%genre%:date|%date%:composer|%composer%:artist|%artist%:album|%album%',)


and

Code: [Select]
$button2(2,8,0,0,18,24,'$font(Wingdings 3,12,,0-0-0)u','$font(Wingdings 3,12,,255-0-0)u','FILTER:source|!source!',)

$if($filtered(genre),
$alignabs(20,2,40,16,left,top)$font(calibri,9,underline,0-0-0)genre
$alignabs(20,16,40,16,left,top)$font(,,,)$filtered(genre)
,
$button2(20,2,0,0,40,16,'$font(calibri,9,,0-0-0)genre','$font(calibri,9,,255-0-0)genre','FILTER:genre|%genre%',)
)

$if($sorted(album),
$button2(62,4,0,0,20,16,'$font(Wingdings 3,9,,255-0-0)q$font(calibri,9,,255-0-0)$sorted(album)','$font(Wingdings 3,9,,0-0-0)q$font(calibri,9,,255-0-0)$sorted(album)','SORT:album|%album%',)
,
$button2(62,4,0,0,20,16,'$font(Wingdings 3,9,,0-0-0)q','$font(Wingdings 3,9,,255-0-0)q','SORT:album|%album%',)
)


$if($filtered(decade),
$alignabs(86,2,40,16,left,top)$font(calibri,9,underline,0-0-0)decade
$alignabs(86,16,40,16,left,top)$font(,,,)$filtered(decade)
,
$button2(86,2,0,0,40,16,'$font(calibri,9,,0-0-0)decade','$font(calibri,9,,255-0-0)decade','FILTER:decade|$mul($div(%date%,10),10)',)
)

$if($sorted(date),
$button2(128,4,0,0,40,16,'$font(Wingdings 3,9,,255-0-0)q$font(calibri,9,,255-0-0)$sorted(date)','$font(Wingdings 3,9,,0-0-0)q$font(calibri,9,,255-0-0)$sorted(date)','SORT:date|%date%',)
,
$button2(128,4,0,0,40,16,'$font(Wingdings 3,9,,0-0-0)q','$font(Wingdings 3,9,,255-0-0)q','SORT:date|%date%',)
)
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-10-25 11:52:08
terrestrial, could you somehow make it possible to identify menu commands in button functions by their full path? i would need this especially for the jump feature of foo_menu_addons.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-25 13:15:15
Thank you terrestrial,the update is really a great thing to happen to foobar!
I have one question:in normal way i use grouping of SCP by %album%,but then i apply sorting by %rating%
via trackinfo mod panel it still sorts the playlist by albums and their rating.How can i make the SCP to recognize
the custom sorting and not to group my playlist by albums,but by tracks along with suppressing the headers?
(I want to achieve a playlist which will be sorted by individual rating of the tracks  with no headers)TIA.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-25 14:16:26
Ok,i found a workaround for the problem i described above,yet another question:
When you using a sorting\filtering commands the playlist won't change until you select "source",is it possible
to set source  automaticly when "sort" selected?
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-10-25 15:41:28
terrestrial, could you somehow make it possible to identify menu commands in button functions by their full path? i would need this especially for the jump feature of foo_menu_addons.


yes, I'll try to add it in for the next version.


Thank you terrestrial,the update is really a great thing to happen to foobar!
I have one question:in normal way i use grouping of SCP by %album%,but then i apply sorting by %rating%
via trackinfo mod panel it still sorts the playlist by albums and their rating.How can i make the SCP to recognize
the custom sorting and not to group my playlist by albums,but by tracks along with suppressing the headers?
(I want to achieve a playlist which will be sorted by individual rating of the tracks  with no headers)TIA.


cannot currently set the grouping in scp. will be in a future version.


Ok,i found a workaround for the problem i described above,yet another question:
When you using a sorting\filtering commands the playlist won't change until you select "source",is it possible
to set source  automaticly when "sort" selected?


filtering creates a new playlist (if you don't select a source first, it should use the media library). sort sorts the currently active playlist. make sure you have version 0.7.1 (not 0.7).
Title: Track Info Panel with ability to change font
Post by: Bh4i on 2006-10-25 17:23:02
Im using latest version, and when i use this function: (

Code: [Select]
$imageabs(0,0,C:\Program Files\foobar2000\images\0s1.png, )


It gives me [UNKNOWN FUNCTION]

What im doing wrong?

(http://i13.tinypic.com/4c25soz.png)
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-25 17:59:20
Sorry,but what's the relation to the columns ui playlist?This command works only from trackinfo mod panel or single column playlist.

On a different note:such a great tool terrestrial had provided us with!I've already added Mood>x,Mood=x,
Rating>x,Rating=x filter strings and it just kicks ass!

(http://img265.imageshack.us/img265/8537/hahakw2.png)
Title: Track Info Panel with ability to change font
Post by: Bh4i on 2006-10-25 21:47:01
Allright, now i know i was doing somehting really wrong...

PS: i dont think it was a good idea to post this here, maybe u could look here: http://www.hydrogenaudio.org/forums/index....showtopic=49581 (http://www.hydrogenaudio.org/forums/index.php?showtopic=49581)
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-25 23:03:37
The recent feature additions look really promising, especially if they ever get proper support for tags with multiple values (TAG:SET, FILTER, etc).

I think it would be useful to have a third button function for text/code that does not require absolute positioning co-ordinates, nor mouse-over co-ordinates; all the text/code within this button function would be "clickable," and would be positioned relative to the code before it. Something like $button3(text, font properties, hover font properties, command).

Basic example:

Code: [Select]
$button3(%artist%,underline 255-0-0,underline 0-0-255,Search for Same Artist) released the album $button3(%album%,underline 255-0-0,underline 0-0-255,Search for Same Album) in the year $button3(%date%,underline 255-0-0,underline 0-0-255,playlist command here).

Would be parsed as: <Artist tag> (http://) released the album <album tag> (http://) in the year <date tag> (http://).
Title: Track Info Panel with ability to change font
Post by: ARiel G. on 2006-10-26 09:37:58
Im using latest version, and when i use this function: (

Code: [Select]
$imageabs(0,0,C:\Program Files\foobar2000\images\0s1.png, )


It gives me [UNKNOWN FUNCTION]

What im doing wrong?

(http://i13.tinypic.com/4c25soz.png)



You have to use $imageabs() in Track info mod (foo_trackinfo_mod) panel only; this string is not valid or recognized in other panels or in standard playlist view (foo_ui_columns).

You need a much more complex layout, and u have to put a track info mod panel in the right end of your layout, and i don't surly know how to do it.
Title: Track Info Panel with ability to change font
Post by: henn1ng on 2006-10-26 14:34:27
i have searched for it but i couldnt find anything. so my question is, whether there is a list of available buttons.
i am wondering if there is the possibility to add a "File/Open..." button, in particular.

please help me.

thx in advance.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-26 14:42:50
@terrestrial Is it possible in some way to have sub menus inside of sub menus?I mean "artist" gives you
a list of first letters of available artists (a,b,c,d) and selecting a letter gives you additional menu with artist names.I tried but with no luck,mayby something with the syntax that i don't know about?
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-26 17:41:19
i have searched for it but i couldnt find anything. so my question is, whether there is a list of available buttons.
i am wondering if there is the possibility to add a "File/Open..." button, in particular.

please help me.

thx in advance.


Something like this? $button(0,0,0,0,25,25,images\fileopen.png,images\fileopen_hover.png,Open...,)

BTW, the Wiki (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29#Buttons) is helpful as a reference for this component.
Title: Track Info Panel with ability to change font
Post by: henn1ng on 2006-10-27 02:28:34
Something like this? $button(0,0,0,0,25,25,images\fileopen.png,images\fileopen_hover.png,Open...,)

BTW, the Wiki (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29#Buttons) is helpful as a reference for this component.



sweet! thank you man. i have looked at that wiki before and i tried "file/open" and all kinds of variations of it. apparently all but the most obvious one...

THX!
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-10-27 05:17:39
@terrestrial Is it possible in some way to have sub menus inside of sub menus?I mean "artist" gives you
a list of first letters of available artists (a,b,c,d) and selecting a letter gives you additional menu with artist names.I tried but with no luck,mayby something with the syntax that i don't know about?


you currently can't have sub menus. I'm going to replace the menu control with something else that should handle long lists better.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-27 11:23:15
Thanks!I'll be waiting.
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-10-27 20:02:08
Is the wiki (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29#TAG:SET_-_To_edit_a_tags_value) information up to date? I'm playing with adding buttons and just to see what it looks like, I copied and pasted the examples but I'm getting an unknown function message.

(http://img112.imageshack.us/img112/3782/f2kinfopanelmd4.png) (http://imageshack.us)

Here's my code for that section.

Code: [Select]
$if(%tempo%,,
// TEMPO BUTTONS
$transition($repeat($get(sepchar),$get(seplen)),$get(fadeend),$get(text1))$get(text1)'[' $get(text2)S e t T e m p o $get(text1)']'
$char(10)
$button2(0,0,0,0,$calcwidth(Remove Tempo),13,'$font(tahoma,8,,0-0-0)Remove Tempo','$font(tahoma,8,underline,0-0-0)Remove Tempo',TAG:SET:tempo:,)
$button2(0,0,0,0,37,13,'$font(tahoma,8,,0-0-0)Freeflow','$font(tahoma,8,underline,0-0-0)Freeflow',TAG:SET:tempo:1,)
$button2(0,0,0,0,37,13,'$font(tahoma,8,,0-0-0)Slow','$font(tahoma,8,underline,0-0-0)Slow',TAG:SET:tempo:2,)
$button2(0,0,0,0,37,13,'$font(tahoma,8,,0-0-0)Medium','$font(tahoma,8,underline,0-0-0)Medium',TAG:SET:tempo:3,)
$button2(0,0,0,0,37,13,'$font(tahoma,8,,0-0-0)Fast','$font(tahoma,8,underline,0-0-0)Fast',TAG:SET:tempo:4,)
$button2(0,0,0,0,37,13,'$font(tahoma,8,,0-0-0)Frenetic','$font(tahoma,8,underline,0-0-0)Frenetic',TAG:SET:tempo:5,)$char(10))


Also, how do I add padding on the left side of the panel?
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-10-27 20:40:29
$padding(4,0)
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-10-27 22:44:03
$padding(4,0)

That blanks the entire panel.
Title: Track Info Panel with ability to change font
Post by: alphaex32 on 2006-10-28 01:30:45
you currently can't have sub menus. I'm going to replace the menu control with something else that should handle long lists better.
What's the menu control you guys are talking about? Did I miss something?
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-28 02:14:26
Is the wiki (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29#TAG:SET_-_To_edit_a_tags_value) information up to date? I'm playing with adding buttons and just to see what it looks like, I copied and pasted the examples but I'm getting an unknown function message.

Here's my code for that section.

I cannot reproduce the [unknown function] message with the code you provided. I'm assuming you want all your tempo buttons adjacent to one another, but from your code I can tell you that a.) all your tempo buttons are overlapping and b.) they're getting clipped.

a. The first two parameters (DstX, DstY) in all your buttons are 0,0 so you're telling the buttons to align at co-ordinates 0,0 hence the overlapping. The buttons don't output text relatively, they have absolute position like the $alignabs function, which you have to specify.

b. The text in your buttons is getting clipped because you have all their bounding rectangles the same width (37). Instead of the number 37, use $calcwidth() to get the precise width of your buttons text as you did with your Remove Tempo button... $calcwidth(Freeflow), $calcwidth(Slow), etc.

Hope that helps.
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-10-28 03:00:50

$padding(4,0)

That blanks the entire panel.


works fine for me
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-10-28 17:56:44


$padding(4,0)

That blanks the entire panel.


works fine for me

I tested on 2 machines, same problem. Maybe I'm using it incorrectly?
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-10-28 18:10:58
I cannot reproduce the [unknown function] message with the code you provided.

I tried creating a single button and still get the same error. Here's the entire code (very long sorry). It's based on Habla's settings.

Code: [Select]
// Original code by necropimp, modified by AstreaEdge, final by KockRoach
// Appearance changed by Habla. Muchas gracias to those above!
// Best viewed with vert pad 10, hor pad 13, line space 2, Segoe UI 7pt font, black background

// !!!!BEGIN USER CONFIGURATION!!!!

// Show Artist? (1 = show, 0 = don't show)
$puts(arts,1)

// Show Album?
$puts(albs,1)

// Show Title?
$puts(tils,1)

// Info Heading Color e.g. "Title:"
$puts(head,$rgb(61,129,193))

// Info Color e.g. "Black Dog"
$puts(info,$rgb(255,255,255))

// Info Annotation Color (e.g. kbps is the annotation)
$puts(anno,$rgb(255,255,255))

// Separator
// the separators (Song,Play,Tech info) will change to a different color if the panel mode is set to Follow cursor.
// change "followcursorcol" to change this color. It is currently set to flash orange.
$puts(followcursorcol,$rgb(200,150,50))
$puts(text2,$rgb(255,255,255))
$puts(text1,$if(%_trackinfo_nowplaying%,$rgb(61,129,193))$if(%_trackinfo_followcursor%,$get(followcursorcol)))
$puts(fadeend,$rgb(0,0,0))
$puts(seplen,83)
$puts(sepchar,'.')

// Set Rating character
$puts(ratingchar,'?')

// !!!!END USER CONFIGURATION!!!!

// Day Conversion
$puts(day,$substr(%last_played%,9,10))
$if(%last_played%,
$if($strcmp($left($get(day),1),0),$puts(day,$right($get(day),1))))
$if($strcmp($get(day),11),$puts(xx,th),
$if($strcmp($get(day),12),$puts(xx,th),
$if($strcmp($get(day),13),$puts(xx,th),
$if($strcmp($right($get(day),1),1),$puts(xx,st),
$if($strcmp($right($get(day),1),2),$puts(xx,nd),
$if($strcmp($right($get(day),1),3),$puts(xx,rd),
$puts(xx,th)))))))

// Month Conversion
$puts(month,$substr(%last_played%,6,7))
$puts(month_name,$select($get(month),
Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec))

// Year Conversion
$puts(year,$substr(%last_played%,1,4))

// Time Conversion
$puts(hour,$substr(%last_played%,12,13))
$puts(min,$substr(%last_played%,14,16))
$puts(sec,$substr(%last_played%,17,19))

// 24 Hour to 12 Hour Conversion
$if($strcmp($left($get(hour),1),0),$puts(hour1,$right($get(hour),1)))
$if($strcmp($left($get(hour),1),1),$puts(hour1,$sub($get(hour),12)))
$if($strcmp($left($get(hour),1),2),$puts(hour1,$sub($get(hour),12)))
$if($strcmp($get(hour),00),$puts(hour1,12))
$if($strcmp($get(hour),10),$puts(hour1,10))
$if($strcmp($get(hour),11),$puts(hour1,11))
$if($strcmp($get(hour),12),$puts(hour1,12))

// AM/PM Conversion
$if($strcmp($get(hour),00),$puts(yy,am))
$if($strcmp($get(hour),10),$puts(yy,am))
$if($strcmp($get(hour),11),$puts(yy,am))
$if($strcmp($get(hour),12),$puts(yy,pm))
$if($strcmp($get(hour),24),$puts(yy,am))
$if($strcmp($left($get(hour),1),0),$puts(yy,am))
$if($strcmp($left($get(hour),1),1),$puts(yy,pm))
$if($strcmp($left($get(hour),1),2),$puts(yy,pm))

// Date Format
$puts(time_of_year,$get(month_name) $get(day)$get(xx)',' $get(year))

// Time Format
$puts(time_of_day,$get(hour1)$get(min)$get(sec) $get(yy))

// SONG INFO SEPARATOR
$transition($repeat($get(sepchar),$get(seplen)),$get(fadeend),$get(text1))$get(text1)'[' $get(text2)S o n g I n f o $get(text1)']'$char(10)

$if($strcmp(1,$get(tils)),$if(%title%,$get(head)Title: $get(info)%title%[ $char(40)%version%$char(41)]$char(10),),)
$if($strcmp(1,$get(arts)),$if(%artist%,$get(head)Artist: $get(info)%artist%$char(10),),)
$if($strcmp(1,$get(albs)),$if(%album%,$get(head)Album: $get(info)%album%[ $char(40)%subtitle%$char(41)][ $char(91)%edition%$char(93)]$char(10),),)
$if(%disc%,$get(head)Disc: $get(info)%disc%$get(head)$if(%disc%, of $get(info)%totaldiscs%)$char(10),)
$if(%date%,$get(head)Year: $get(info)%date%$char(10),)
$if(%tracknumber%,$get(head)Track #: $get(info)%tracknumber%$char(10),)
$transition($repeat($get(sepchar),$get(seplen)),$get(text1),$get(fadeend))$char(10)
$if(%genre%,$get(head)Genre: $get(info)%genre%$char(10),)
$if(%style%,$get(head)Style: $get(info)%style%$char(10),)
$if(%mood%,$get(head)Mood: $get(info)%mood%$char(10),)
$if(%tempo%,$get(head)Tempo: $get(info)$select(%tempo%,Freeflow,Slow,Medium,Fast,Frenetic,Choose between 1-5)$char(10),)
$if(%bpm%,$get(head)BPM: $get(info)$num(%bpm%,1)$char(10),)
$if(%rating%,$get(head)Rating: $repeat($get(info)$get(ratingchar),%rating%)
$repeat($rgb(70,70,70)$get(ratingchar),$sub(5,%rating%))$char(10),)

// TECH INFO SEPARATOR
$transition($repeat($get(sepchar),$get(seplen)),$get(fadeend),$get(text1))$get(text1)'[' $get(text2)T e c h I n f o $get(text1)']'$char(10)

$get(head)Length: $get(info)$if(%_length%,%_length%,)$if(%_isplaying%, / %_time_elapsed%$get(anno)$if(%_length%, / -%_time_remaining%),%_length%)$char(10)
$get(head)Type:$if(%__codec%, $get(info)%__codec%) $get(info)
$if2(%__bitrate_dynamic%,%__bitrate%) $get(anno)Kb/s $if($stricmp(%__codec%,mp3),$if($stricmp(%__extrainfo%,vbr),VBR,CBR))
$char(10)
$if(%__lame_version%,$get(head)Preset: $get(info)$left(%__lame_version%,4) $right(%__lame_version%,4) [$upper(%__lame_profile%)]$char(10),)
$if(%__flac_vendor%,$get(head)Encoder: $get(info)$if($stricmp(%__flac_vendor%,reference libFLAC 1.1.2 20050205),FLAC 1.1.2 -8)$char(10),)
$if(%__mpc_profile%,$get(head)MPC Profile: $get(info)%__mpc_profile%$char(10),)
$get(head)Compression: $get(info)$div(1411,%__bitrate%).$substr($muldiv(1411,100,%__bitrate%),2,3):1 '('$get(info)$muldiv(%__bitrate%,100,1411)$get(anno)'%)'$char(10)
$get(head)Channels: $get(info)$if($stricmp($codec(),MP3),$get(space2)$caps(%__mp3_stereo_mode%),
$if(%__channels%,$ifgreater(%__channels%,1,Stereo,Mono),'?'))$char(10)
$if(%__bitspersample%,$get(head)Bitdepth: $get(info)%__bitspersample% bits/sample$char(10),)
$if(%__samplerate%,$get(head)Samplerate: $get(info)$div(%__samplerate%,1000).$substr(%__samplerate%,3,3) KHz $char(10))
$if(%__replaygain_album_gain%,$get(head)Replay Gain: $get(info)A,$if(%__replaygain_track_gain%,$get(head)Replay Gain: $get(info)T,$get(head)Replay Gain: $rgb(255,0,0)X))$char(10)

$transition($repeat($get(sepchar),$get(seplen)),$get(text1),$get(fadeend))$char(10)
$if(%path%,$get(head)Path: $get(info)%path%$char(10),)
$if(%_filesize%,$get(head)Filesize: $get(info)
$div(%_filesize%,1048576).$left($num($muldiv($mod(%_filesize%,1048576),100,1048576),2),2) $get(anno)'MB'$char(10),)

$if(%last_played%,
// PLAY STATS SEPARATOR
$transition($repeat($get(sepchar),$get(seplen)),$get(fadeend),$get(text1))$get(text1)'[' $get(text2)P l a y I n f o $get(text1)']'
$char(10),)

$if(%play_count%,$get(head)Played: $get(info)%play_count% times$char(10),)
$if(%last_played%,$get(head)Last played on: $get(info)$get(time_of_year) at $get(time_of_day)$char(10),)
$get(head)$progress(%_time_elapsed_seconds%,%_time_total_seconds%,52,$get(info)'()',$get(head)'-')
$get(info)$muldiv(%_time_elapsed_seconds%,100,%_length_seconds%)'%'$char(10)

$if(%mood%,,
// MOOD BUTTONS
$transition($repeat($get(sepchar),$get(seplen)),$get(fadeend),$get(text1))$get(text1)'[' $get(text2)S e t M o o d $get(text1)']'
$char(10)
$button2(0,0,0,0,$calcwidth(Properties),13,'$font(tahoma,8,,0-0-0)Properties','$font(tahoma,8,underline,0-0-0)Properties', properties,))
[!--sizeo:1--][span style=\"font-size:8pt;line-height:100%\"][!--/sizeo--]Edit: Changed CODE to CODEBOX.[/size]
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-28 21:01:25
I tried creating a single button and still get the same error. Here's the entire code (very long sorry). It's based on Habla's settings.

Weird, I'm still not getting that error. Make sure you're using the latest version of the component -- 0.7 beta [Oct 24 2006 - 18:45:32]
Title: Track Info Panel with ability to change font
Post by: Hamallainen on 2006-10-28 21:34:08
There's a more recent one.
Track info panel mod 0.7.1 beta [Oct 24 2006 - 22:48:54]
Title: Track Info Panel with ability to change font
Post by: sune on 2006-10-29 00:59:07
hi. I wanted to ask if there is a way to lock the panel mode.. I mean, keep it always in "now playing mode", not allowing it to change when you double click on it

I ask this cause I have made some playback buttons. The pause button switches to play when it is paused, and viceversa. So I've had to use something like: $if(%isplaying%, , ) but when I double click to turn volume up with another button I have on the panel, the mode switches, and the play/pause button does not display as it should. I hope I made myself clear.

If it's not possible consider it as a feature request 
thanks in advance

sune
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-10-29 07:11:41
Weird, I'm still not getting that error. Make sure you're using the latest version of the component -- 0.7 beta [Oct 24 2006 - 18:45:32]

I did have an older version. After updating, I no longer get the error message but I dont' get a properties button either. All the code prior to the button works and if I create a new panel and just add

Code: [Select]
$button2(0,0,0,0,$calcwidth(Properties),13,'$font(tahoma,8,,0-0-0)Properties','$font(tahoma,8,underline,0-0-0)Properties', properties,))

I still get nothing. 

Also, adding $padding(4,0) still blanks the entire panel.
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-10-29 09:50:53
I don't know what to say because I copied and pasted that exact piece of code into a fresh panel and it works for me. All I can think of is you possibly made your background colour black so you cannot see the buttons black font?
Title: Track Info Panel with ability to change font
Post by: wolver1ne on 2006-10-29 14:32:22
Is it possible to implement base64 decoding in some way? That way there's no need to meddle around with image files. Instead you just use base64 hash. That way it would be easier for people to post scripts without the need to provide the image files.
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-10-29 17:39:25
I don't know what to say because I copied and pasted that exact piece of code into a fresh panel and it works for me. All I can think of is you possibly made your background colour black so you cannot see the buttons black font?

Well I thought that too since I am using a black background for the full code but I don't see anything with just the button code on a white background either. This is quite frustrating. Do you have a simple config you can post that I could test? It seems pointless sense this one line of could works for you but...
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-10-29 21:53:34
As a test, I uninstalled F2K.8 from the only machine I had not upgraded and did a clean F2K.9 install, only adding Columns UI 0.1.3 beta 1v6 and Track Info Panel Mod 0.7.1 beta. I still don't have a button with

Code: [Select]
$button2(0,0,0,0,$calcwidth(Properties),13,'$font(tahoma,8,,255-0-0)Properties','$font(tahoma,8,underline,255-0-0)Properties', properties,))

and with

Code: [Select]
$padding(4,0)
$button2(0,0,0,0,$calcwidth(Properties),13,'$font(tahoma,8,,255-0-0)Properties','$font(tahoma,8,underline,255-0-0)Properties', properties,))

I get an [UNKNOWN FUNCTION] message again.
Title: Track Info Panel with ability to change font
Post by: vonmeth on 2006-10-29 21:58:56
As a test, I uninstalled F2K.8 from the only machine I had not upgraded and did a clean F2K.9 install, only adding Columns UI 0.1.3 beta 1v6 and Track Info Panel Mod 0.7.1 beta. I still don't have a button with

Code: [Select]
$button2(0,0,0,0,$calcwidth(Properties),13,'$font(tahoma,8,,255-0-0)Properties','$font(tahoma,8,underline,255-0-0)Properties', properties,))

and with

Code: [Select]
$padding(4,0)
$button2(0,0,0,0,$calcwidth(Properties),13,'$font(tahoma,8,,255-0-0)Properties','$font(tahoma,8,underline,255-0-0)Properties', properties,))

I get an [UNKNOWN FUNCTION] message again.


Do you have

Requires:

MS Visual C++ 2005 Runtime Library
GDI+ - only needed for Windows 2000

Links to above in the first post.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-10-29 22:04:37
Would it be possible to add a boolean value to $imageabs2() to reflect if an image exists?  The current function appears to return a boolean of TRUE no matter what I throw at it. This would be useful so that we could do things like:

$if2($imageabs2(code for cover image),$imageabs2(code for no-cover image))

instead of the current layering approach which has some limitations and wastes resources.
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-10-30 00:15:43
yes I second that, I also want wild card value possible ie so I could do Folder.* and have it display any gfx type..
Title: Track Info Panel with ability to change font
Post by: kockroach on 2006-10-30 00:57:05
Code: [Select]
$padding(4,0)
$button2(0,0,0,0,$calcwidth(Properties),13,'$font(tahoma,8,,255-0-0)Properties','$font(tahoma,8,underline,255-0-0)Properties', properties,))

I get an [UNKNOWN FUNCTION] message again.

You have one too many ")" at the end.
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-10-30 00:59:46
Do you have

Requires:

MS Visual C++ 2005 Runtime Library
GDI+ - only needed for Windows 2000

Links to above in the first post.

Yes. Otherwise it wouldn't work at all.
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-10-30 01:26:46

Code: [Select]
$padding(4,0)
$button2(0,0,0,0,$calcwidth(Properties),13,'$font(tahoma,8,,255-0-0)Properties','$font(tahoma,8,underline,255-0-0)Properties', properties,))

I get an [UNKNOWN FUNCTION] message again.

You have one too many ")" at the end.

Good catch but still doesn't work. 

I just tried the pause button example in the wiki and it displays but nothing happens when I click it. Just substituting properties for pause seems to break something.

Also, still can't get padding to work at all. After removing the extra closing parens, I at least don't get an error and the screen doesnt' go blank but nothing happens either. Could someone document this command in the wiki please? The only reference to it is under drawing a rectangle.
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-10-30 01:57:04
So I played a bit more and noticed a few oddities.

Code: [Select]
$button2(0,0,0,0,$calcwidth("Properties"),$calcheight("Properties"),'$font(tahoma,8,,0-0-0)Properties','$font(tahoma,8,underline,0-0-0)Properties', properties,)

&

Code: [Select]
$button2(0,0,0,0,$calcwidth("Properties"),$calcheight(Properties),'$font(tahoma,8,,0-0-0)Properties','$font(tahoma,8,underline,0-0-0)Properties', properties,)

Will display correctly but the button doesn't work.

While

Code: [Select]
$button2(0,0,0,0,$calcwidth(Properties),$calcheight(Properties),'$font(tahoma,8,,0-0-0)Properties','$font(tahoma,8,underline,0-0-0)Properties', properties,)

&

Code: [Select]
$button2(0,0,0,0,$calcwidth("Properties"),$calcheight("Properties"),'$font(tahoma,10,,0-0-0)Properties','$font(tahoma,10,underline,0-0-0)Properties', properties,)

Will not display at all.

The slightest change in values seems to break buttons.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-10-30 02:38:31
hi. I wanted to ask if there is a way to lock the panel mode.. I mean, keep it always in "now playing mode", not allowing it to change when you double click on it

I ask this cause I have made some playback buttons. The pause button switches to play when it is paused, and viceversa. So I've had to use something like: $if(%isplaying%, , ) but when I double click to turn volume up with another button I have on the panel, the mode switches, and the play/pause button does not display as it should. I hope I made myself clear.

If it's not possible consider it as a feature request 
thanks in advance

sune


yeah, I don't like the double-click to change mode either... I will change it to a context menu option in the next version.


Would it be possible to add a boolean value to $imageabs2() to reflect if an image exists?  The current function appears to return a boolean of TRUE no matter what I throw at it. This would be useful so that we could do things like:

$if2($imageabs2(code for cover image),$imageabs2(code for no-cover image))

instead of the current layering approach which has some limitations and wastes resources.


I'll add a $fileexists or something similar (as well as wildcard support).

So I played a bit more and noticed a few oddities.


I'm guessing the font you have chosen in the "Font" section isn't tahoma 8.

Try this:

Code: [Select]
$calcwidth(Properties)|
$font(tahoma,8,,0-0-0)$calcwidth(Properties)


which should illustrate the problem.

also the command should match exactly with the menu item, so remove the space before properties.

this should work

Code: [Select]
$button2(0,0,0,0,$calcwidth($font(tahoma,10,,0-0-0)Properties),$calcheight($font(tahoma,10,,0-0-0)Properties),'$font(tahoma,10,,0-0-0)Properties','$font(tahoma,10,underline,0-0-0)Properties',Properties,)

or
Code: [Select]
$font(tahoma,10,,0-0-0)
$button2(0,0,0,0,$calcwidth(Properties),$calcheight(Properties),'$font(tahoma,10,,0-0-0)Properties','$font(tahoma,10,underline,0-0-0)Properties',Properties,)
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-10-30 03:21:22
I'm guessing the font you have chosen in the "Font" section isn't tahoma 8.

Yes. I see the problem.

also the command should match exactly with the menu item, so remove the space before properties.

Looks like the problem was in the example on the wiki but Metal termite has corrected it already (Thanks!).

I'm still not sure how to use $padding(x,x) though. I tried adding it to the first example you gave and it works fine but it still doesn't work with the properties example.
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-10-30 04:11:04
Is a clickable progress bar possible? I'd love this
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-10-30 05:49:16
a clickable progress bar wouldnt be too hard using buttons but the actual event of skipping to position x is the hangup. do you know of any way to tell foobar to jump to a given time index?
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-10-30 08:34:45
no. this would be nice special feature of track info panel mod to have.
Title: Track Info Panel with ability to change font
Post by: Gord on 2006-10-30 09:27:05
A nice feature would be the ability to use Ctrl - A to select all the code in the formatting strong part of the config window


I am also having some problems with the WMP11 layout. Buttons just don't work at all. I cleared the very bottom trackinfo_mod panel and just used some basic button code and it still not liking me.

Code: [Select]
$button2(489,11,0,0,48,48,$imageabs(489,11,images\play.png,),$imageabs(489,11,images\play_h.png,),Playpause,)


The image appears but it is the hover image not the normal one and the button is unclickable.

foo_run is setup correctly to work with Playpause. I also tried it with Play or Pause. No luck though.


WMP11 thread is here (http://www.hydrogenaudio.org/forums/index.php?showtopic=49401&st=0&gopid=445230&#entry445230) for details on the code and layouts
Title: Track Info Panel with ability to change font
Post by: Hamallainen on 2006-10-30 14:08:36

hi. I wanted to ask if there is a way to lock the panel mode.. I mean, keep it always in "now playing mode", not allowing it to change when you double click on it
"........"
sune

yeah, I don't like the double-click to change mode either... I will change it to a context menu option in the next version.

Hi
I agree that the double-click system is annoying now that we have the possibility to insert buttons and an option  to choose the mode we want would be better.
But also i find it a bit frustrating to have to choose between a panel that will only display 'now playing' infos or only 'follow cursor' infos. Of course we can set up 1 panel for each mode. But wouldn't it be better if we could display both at the same time in just one panel ? With 2 functions maybe ?
An exemple would maybe explain better what i would like:
Code: [Select]
$nowplaying(...Some code that would take its infos from the now playing file...)

$followcursor(...Some code that would take its infos from the file selected by the cursor...)

Thanks
Title: Track Info Panel with ability to change font
Post by: sunstone on 2006-10-30 14:18:24
hello
i love the plugin!!!! 
in fact i have two panels displayed as described by the above poster.
my question though is this:
on my "follow cursor" panel i can't seem to make it completely blank out.
even when i clear the playlist the panel will not empty.
the info for the last track i had selected is still displayed in the panel.
am i doing something wrong or is this normal ?
and is there a way to make it be blank when there is nothing in my playlist ?
i hope i am making sense

-pete
Title: Track Info Panel with ability to change font
Post by: 2Pacalypse on 2006-10-30 15:44:17
Is there a way to have buttons set up to open up say the lyrics panel.  Either as a new panel say using the floating panel plug in (dockable or whatever it is) or better yet as a new splitter.

I already have a splitter on auto hide containing the lyrics panel, but would prefer it if i could have a button for the playlist and one for the lyrics and click to alternate between.

What im trying to say is replace foo_uie_tabs with buttons is it possible?
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-30 15:54:49
Is there a way to have buttons set up to open up say the lyrics panel.  Either as a new panel say using the floating panel plug in (dockable or whatever it is) or better yet as a new splitter.

I already have a splitter on auto hide containing the lyrics panel, but would prefer it if i could have a button for the playlist and one for the lyrics and click to alternate between.

What im trying to say is replace foo_uie_tabs with buttons is it possible?

There is a modification of foo_uie_tabs in which you can access it's commands via context menu=via buttons too.
Title: Track Info Panel with ability to change font
Post by: 2Pacalypse on 2006-10-30 16:11:02

Is there a way to have buttons set up to open up say the lyrics panel.  Either as a new panel say using the floating panel plug in (dockable or whatever it is) or better yet as a new splitter.

I already have a splitter on auto hide containing the lyrics panel, but would prefer it if i could have a button for the playlist and one for the lyrics and click to alternate between.

What im trying to say is replace foo_uie_tabs with buttons is it possible?

There is a modification of foo_uie_tabs in which you can access it's commands via context menu=via buttons too.



Do you have any links on how to do it or where i can download the mod? would i need to use foo_run?
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-10-30 17:19:48
Download (http://tmp.reharmonize.net/foobar/foo_uie_tabs_0.2.5.zip)
It acts exactly like the the usual foo_uie_tabs,but adds a few commands that you can assign to buttons.
Title: Track Info Panel with ability to change font
Post by: 2Pacalypse on 2006-10-30 18:42:07
Download (http://tmp.reharmonize.net/foobar/foo_uie_tabs_0.2.5.zip)
It acts exactly like the the usual foo_uie_tabs,but adds a few commands that you can assign to buttons.


thanks i found it but this is a newer version so cheers
Title: Track Info Panel with ability to change font
Post by: kockroach on 2006-10-30 19:44:59
thanks i found it but this is a newer version so cheers

The one that russell777 mentioned actually is the newest version.  Version 0.2.5 is a modified version, which was spawned from version 2.07
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-10-31 04:03:37
Is there a way to have buttons align with the preceeding text? I need something like:

Line 1
Line 2
Line 3

Button

But I can't specify a height because in some cases Line 2 may not be displayed. I've tried using $button2(,,,,,,x,x,x,x) but the button is still positioned as if the values were 0.

Also, if I change underline in the following to bold, the screen is blank. Any ideas?

Code: [Select]
$button2(0,0,0,0,30,13,'$font(tahoma,8,,0-0-0)pause','$font(tahoma,8,underline,0-0-0)pause',pause,)
Title: Track Info Panel with ability to change font
Post by: 2Pacalypse on 2006-10-31 13:51:44
i want to display my album art to a max of 300by300 centrally is there a code i can use? so it remains centered even if the window resizes?

also is there a way so the images resizes due to the visible space (again if the window resizes?)
Title: Track Info Panel with ability to change font
Post by: dtsneak on 2006-10-31 16:23:06
I'm having trouble with playback commands within $button. None of them seem to work including: play, pause, playpause, previous, prev, next, stop, playback/play, playback/prev, playback/previous, etc, etc, etc.

I've tried the wiki that includes all foobar commands, but they just aren't working.
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-10-31 16:45:18
I'm having trouble with playback commands within $button. None of them seem to work including: play, pause, playpause, previous, prev, next, stop, playback/play, playback/prev, playback/previous, etc, etc, etc.

I've tried the wiki that includes all foobar commands, but they just aren't working.

Make sure there is no space between the previous comma and the command and the command is exactly as it appears in the wiki. There was a space in the example on the wiki that was causing it not to work for me.
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2006-11-01 05:26:11
Hi, terrestrial and gang.
I've been using foobar for about a week and this plug-in for about as long. (version: 0.7.1 beta [Oct 24 2006 - 22:48:54])

I'm using the following code to display album art:
Code: [Select]
$imageabs2(125,125,,,,,2,2,$replace(%path%,%filename_ext%,)folder.jpg,)

and this works great for everything except whenever I'm playing/viewing a song from the directory ...My Music\Albums\Big Star\#1 Record

Since the image file is viewable with the same code if I move it to another directory, and the $replace(%path%,%filename_ext%,) prints in trackinfo_mod by itself as one would expect, I'm guessing the bug is with your plug-in, and has something to do with the path to the file containing a #.
Thank you.
Title: Track Info Panel with ability to change font
Post by: sune on 2006-11-01 05:56:07
I'm trying to make a button for playing an audio cd, like this:

$button(21,0,0,0,18,17,images\icons\opencd.png,,play audio cd...,)      and it does not work

I've also tried: $button(21,0,0,0,18,17,images\icons\opencd.png,,play audio cd,)  but still, nothing

The "play audio cd..." command belongs to the Main Menu Items.
Anybody else has made that button? is it not possible?

EDIT: nvm, the right command is "Open Audio CD". It's wrong in the commandline guide in the wiki
Title: Track Info Panel with ability to change font
Post by: carmenm on 2006-11-01 13:02:05
Does anyone know if there would be a way to know the state of a tabbed panel, i mean which view it is on, inside the code of a track info mod panel?

Edit: It appears that images loaded in track info mod are locked so we cant modify album arts for example. Would there be a way for those images not to be locked?

Also i really hope fileexists will be implemented in track info mod too
Cant wait for that and the full path commands

Thanks a lot for your work terrestrial!
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-11-01 17:55:05
If you guys find a mistake in the Wiki, don't be shy, fix it! 

Does anyone know if there would be a way to know the state of a tabbed panel, i mean which view it is on, inside the code of a track info mod panel?

It's not possible to my knowledge. There's no way to detect what state a tabbed panel is in.
Title: Track Info Panel with ability to change font
Post by: carmenm on 2006-11-01 18:03:14
If you guys find a mistake in the Wiki, don't be shy, fix it! 


Does anyone know if there would be a way to know the state of a tabbed panel, i mean which view it is on, inside the code of a track info mod panel?

It's not possible to my knowledge. There's no way to detect what state a tabbed panel is in.

That s what i thought
Title: Track Info Panel with ability to change font
Post by: dtsneak on 2006-11-01 19:17:57
Could I make a button to load a specific playlist?

Closest command I can find is: Playlist/Load playlist...

Is there a way to specify one? I'm kind of assuming thats why it's ...
Title: Track Info Panel with ability to change font
Post by: carmenm on 2006-11-01 20:33:48
Currently when you resize the panel, images are not updated. Consequently if the size of an imageabs2 depends on the width or height, the image does not resize itself when you resize the panel.

Could it be possible terrestrial to add that feature?
Title: Track Info Panel with ability to change font
Post by: alphaex32 on 2006-11-02 02:49:59
Currently when you resize the panel, images are not updated. Consequently if the size of an imageabs2 depends on the width or height, the image does not resize itself when you resize the panel.

Could it be possible terrestrial to add that feature?
I was going to ask the same thing. Also, are you planning to implement the new features in single_column into this (NOKEEPASPECT,filecheck,image wildcards)?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-11-02 07:21:23
When I upgraded to the Oct. 24 version of trackinfomod my buttons linked to foo_run services and tabs stopped working. I downgraded to my previous version and they started working again. I re-upgraded to Oct.24 and they stopped. However, my buttons linked to main menu playback commands such as previous, next, play/pause, and volume functions all function properly in both versions. Is anyone experiencing this problem? I'll have to wait until this weekend to give it a proper debugging.
Title: Track Info Panel with ability to change font
Post by: 2Pacalypse on 2006-11-02 10:49:22
my tabs are still working in the current version
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-11-03 02:23:08
Well I solved my problem, there appears to have been a change in the button command:

$button(x,y,a,b,w,h,image,hover,option)

Before I had left a and b blank, this used to work fine but the newer version appears to be a bit more sensitive. I replaced the empty parameters with 0's and now all is well.
Title: Track Info Panel with ability to change font
Post by: sunstone on 2006-11-03 20:18:08
is there a way to display the total number of tracks selected in this panel somehow ?
i see a way to display selected time...and a way to show the number of tracks in a playlist.
but is there a way to display how many tracks i have selected ?
thanks!
Title: Track Info Panel with ability to change font
Post by: Snowsfall on 2006-11-04 16:28:55
quick requests, could you make it so setting tags/running scripts targets all of the tracks selected, right now it is only doing one. Also the same imageabs2 options you added to single columns playlists would be awesome(nokeepaspect/image aligning)

thanks for the great work on these components
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-11-04 16:46:30
i hope $fileexists is being added to this plugin too
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-11-04 17:39:20
Feature Request

Allow buttons, rectangles and images to flow with text instead of specifying a position. Thanks!
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-11-05 04:01:35
Feature Request

Allow buttons, rectangles and images to flow with text instead of specifying a position. Thanks!

use $calcwidth to find the length of text and size them that way
Title: Track Info Panel with ability to change font
Post by: 2Pacalypse on 2006-11-05 12:30:56
is it possible for a button to switch to a different foobar layout?

and going even further specifying which tabbed panel?
Title: Track Info Panel with ability to change font
Post by: san84 on 2006-11-05 13:19:27
Using last build of TrackInfo.. I don't have ability to bring my foobar window on top when clicking on trackinfo area.. Could it be fixed? Older builds don't have such problem..
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-11-05 13:56:57
is it possible for a button to switch to a different foobar layout?

and going even further specifying which tabbed panel?


You should be able to just use the panel/layout name as the button command.. I think
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-11-05 17:03:06

is it possible for a button to switch to a different foobar layout?

and going even further specifying which tabbed panel?


You should be able to just use the panel/layout name as the button command.. I think


yep, thats what i do
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-11-05 17:11:24

Feature Request

Allow buttons, rectangles and images to flow with text instead of specifying a position. Thanks!

use $calcwidth to find the length of text and size them that way

That really only would apply to horizontal placement on a line of text. What I really want is vertical positioning after several rows of text. I can't specify height because I'm hiding empty lines with $if statements.
Title: Track Info Panel with ability to change font
Post by: HYDE on 2006-11-05 20:21:33
I dont have much knowledge with that sintax, but I was trying to create a info pannel.
My fb2k uses a sidebar to display the coverart pannel, the specrum analyse pannel and the trackinfomod pannel with tha code:

Code: [Select]
$drawrect(0,0,0,20,brushcolor-190-190-190 width-1)
$drawrect(0,19,0,189,brushcolor-51-103-189  width-1)
$drawrect(10,30,120,170,brushcolor-43-86-159 pencolor-null)
$alignabs(0,1,140,210,center,top)$font(aerial,9,glow-157-0-79 glowblur-5,255-255-255)%_trackinfo_mode%$char(10)$if(%_trackinfo_notrack%,$align(center,middle)$font(Lucida Sans Unicode,15,glow-255-255-255 glowexpand-2 glowblur-5,0-0-160)No track playing,
$align(CENTER,MIDDLE)$font(Microstyle Extended,10,bold glow-255-255-255 glowexpand-2 glowblur-5,0-0-160)%artist%$char(10)$char(10)
$font(Microstyle Extended,10, bold glow-255-255-255 glowexpand-2 glowblur-5,0-0-160)%title%$char(10)$char(10)
$font(Microstyle Extended,10,bold glow-255-255-255 glowexpand-2 glowblur-5,0-0-160)%album%
$alignabs(-22,85,150,210,right,middle)
$font(Visitor TT2 -BRK-,10,glow-255-255-255 glow- glowexpand-0,0-0-0)%samplerate%Hz %__bitrate%kbps %__codec%$char(10)
%channels% [%playback_time% / ]%length%)


I want to optimize it, with the ability to cut off or minimize the font size for too long %titles% and %albums% and add a background. But I dont know how to do it. if anyone could help me, I'll be grateful.
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-11-05 23:33:17


Feature Request

Allow buttons, rectangles and images to flow with text instead of specifying a position. Thanks!

use $calcwidth to find the length of text and size them that way

That really only would apply to horizontal placement on a line of text. What I really want is vertical positioning after several rows of text. I can't specify height because I'm hiding empty lines with $if statements.

Actually you can if you make a counter that increments itself every time an if-statement is true. Then multiply the counter by the amount of space you want between each button, then put that formula in the Y co-ordinate of each button function. There you have dynamic "line spacing" or whatever you want to call it. But I noticed, if you have a lot of them it makes foobar a bit sluggish on track changes. So I agree with you, it would good if there were buttons that positioned themselves relatively.
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-11-06 00:01:28

Feature Request

Allow buttons, rectangles and images to flow with text instead of specifying a position. Thanks!

Actually you can if you make a counter that increments itself every time an if-statement is true. Then multiply the counter by the amount of space you want between each button, then put that formula in the Y co-ordinate of each button function. There you have dynamic "line spacing" or whatever you want to call it. But I noticed, if you have a lot of them it makes foobar a bit sluggish on track changes. So I agree with you, it would good if there were buttons that positioned themselves relatively.

Yeah. The code I'm using now is already quite long and testing for each line would be fairly difficult to maintain with changes and I'd rather not it up any more processor time than necessary.
Title: Track Info Panel with ability to change font
Post by: minielim on 2006-11-06 00:51:41
I have noticed what may be a bug. Leading spaces are not always respected.

Elsewhere on this forum I found a little dancing stick figure. The code for this consists of a select that picks a 3x3 grid of text.

Two choices are shown below.
Code: [Select]
... o>$char(10)<! $char(10) <>$char(10),
<o>$char(10) ! $char(10)< >$char(10),
...


I would show output versus expected output, but I cannot see how to do so using this forum software (as all leading spaces are ignored in both the code and font environments).

When the first character of the output is a space this is displayed correctly (as in the first choice). However, when the second or third line starts with a space the output line starts with the first non space character. Placing each line of output in single quotes does not fix the problem. Placing a non space character first on each line results in correct output. I am using a fixed width font.
Title: Track Info Panel with ability to change font
Post by: neooffs on 2006-11-07 11:46:10
hello,
can you make the $button() detect when its option is active or not? I dream the day I will be able to see when the "stop after current" is on or off...
maybe keeping the button in hover state?
ty in anyway
Title: Track Info Panel with ability to change font
Post by: henn1ng on 2006-11-07 13:24:43
apoglogies in advance if this has been discussed before, but i didnt really know what to search for in this case.

has anyone else encountered the bug where your buttons are not getting displayed after you opened a file without foobar running already?
i.e. whenever i start up foobar via opening a file my buttons will not be shown in the  panel. however they will still work. only the images cannot be seen.

i hope someone can help me with this

brdgs
Title: Track Info Panel with ability to change font
Post by: Purple Monkey on 2006-11-07 19:51:25
hello,
can you make the $button() detect when its option is active or not? I dream the day I will be able to see when the "stop after current" is on or off...
maybe keeping the button in hover state?
ty in anyway


Look for cwb_hooks, it allows you to get some items (like stop after current) into titleformatting variables. You could then put your $button in an $if and have one for when its on and one when its off.
Title: Track Info Panel with ability to change font
Post by: callisto on 2006-11-10 02:54:53
Hey guys, I'm crazy with this. Is it possible to stretch or repeat an image from one position to another, to make the panel (or whole fb2k) stretchable itself.
I mean, if I have an image with stuff on it on both sides and I want to fill the space in between with an 1px width image from position A (eg. right end of the left image) to position B (left end of the right image)... how do I do that (if it's possible ")
understand what I mean? fine!
thx for help, callisto
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2006-11-10 04:58:35
Well, You could make a really long image, position it absolutely and have whatever is on the left cover it up.
Title: Track Info Panel with ability to change font
Post by: callisto on 2006-11-10 09:19:36
Don't you think, that I thought about this possibility? That's not what I want, because of transparency...
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2006-11-10 09:31:26
Sorry about trying to help.
Don't worry, I won't make the same mistake twice.
Title: Track Info Panel with ability to change font
Post by: q-stankovic on 2006-11-10 11:39:51
I am not very familiar with the track info (mod) plugin so i am not sure if the following strange behavior is a bug:

When i use %cwb_activelist% or %cwb_activelist_count% in track info mod with enabled notification optin in cwb_hooks this happens: every click with the mouse inside the track info  on empty area turns the correct display to the display of "?" and the next click back to correct display and so on... 
Title: Track Info Panel with ability to change font
Post by: callisto on 2006-11-10 12:59:44
Sorry about trying to help.
Don't worry, I won't make the same mistake twice.

sry, I didn't meant it the way it seemed to be... thx for your try, I'm just  really curious 'bout the thing
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-11-10 14:13:38
I am not very familiar with the track info (mod) plugin so i am not sure if the following strange behavior is a bug:

When i use %cwb_activelist% or %cwb_activelist_count% in track info mod with enabled notification optin in cwb_hooks this happens: every click with the mouse inside the track info  on empty area turns the correct display to the display of "?" and the next click back to correct display and so on... 

Probably not a bug. It sounds like you're switching between Now Playing and Follow Cursor modes. I'm guessing that those fields won't display properly in Follow Cursor but I'm not sure what the do since I'm not using that component. You could enclose them with brackets so nothing is displayed.
Title: Track Info Panel with ability to change font
Post by: q-stankovic on 2006-11-10 16:02:21
Probably not a bug. It sounds like you're switching between Now Playing and Follow Cursor modes. I'm guessing that those fields won't display properly in Follow Cursor but I'm not sure what the do since I'm not using that component. You could enclose them with brackets so nothing is displayed.


The strange thing is that %cwb_playinglist% or %cwb_playinglist_count% is displayed always correctly.
Title: Track Info Panel with ability to change font
Post by: neooffs on 2006-11-11 23:30:17
my image buttons aren't drawing on foobar start... does anyone know how I fix that?

EDIT: it fixed itself and I don't know how :S
Title: Track Info Panel with ability to change font
Post by: 2Pacalypse on 2006-11-12 21:30:51


is it possible for a button to switch to a different foobar layout?

and going even further specifying which tabbed panel?


You should be able to just use the panel/layout name as the button command.. I think


yep, thats what i do


couple of things:

i know how to have a button to a different layout, but is there a way to have it load a specific playlist?
as i have a media library layout and it requires the browser playlist

Also can buttons specify which tab they load from a different layout ^ thats what i mean? ie change to a different layout and switch to a specified tab?
Title: Track Info Panel with ability to change font
Post by: fabiospark on 2006-11-13 20:32:58
So far, I've been using a Samurize screensaver to show the playing song info in very big letters.

(http://img355.imageshack.us/img355/9092/sanscrsv8hh.th.png) (http://img355.imageshack.us/my.php?image=sanscrsv8hh.png)

Now I'm thinking to use a trackinfo panel to do the screensaver job.
Do you think I can build something similar?
Where should I look to find the information to build it?

The key points, for me, are:

1)  to hide everything on the screen and just see the info on a black background

2)  to show a small picture when an $if statement returns "true" or has a certain value from 1 to 10

3)  to scroll vertically inside a section of the screen if a tag content is long (see the performers area)

Thanks.
Title: Track Info Panel with ability to change font
Post by: fabiospark on 2006-11-14 21:03:14
Does anybody know how to make some text scroll vertically if it is too long to fit in an area, please?

I need to show info with very big letters.

I had a look at the thread but couldn't find anything.

Thanks.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-11-14 21:59:02
What do you mean by vertically?Like to break the text into letters and to scroll it from top to bottom?
Title: Track Info Panel with ability to change font
Post by: q-stankovic on 2006-11-15 16:23:54
So far, I've been using a Samurize screensaver to show the playing song info in very big letters.

[a href="http://img355.imageshack.us/my.php?image=sanscrsv8hh.png" target="_blank"]
Title: Track Info Panel with ability to change font
Post by: fabiospark on 2006-11-15 17:04:12
What do you mean by vertically?Like to break the text into letters and to scroll it from top to bottom?


Not into letters but into lines as wide as the middle box (minus some margins). As you can see in the screenshot, I have the performer field filled (sorry for the twistongue) with many names but I want to use fo it only the middle bordered space. With such a long text, you can't really think to use the horizontal scrolling so I have to go for the vertical one. (That one used for credits at the end of movies). Of course I would need a wrapping too with the ability to show a separator from the end line and the first one to give readers a key to know the starting point. Not sure about bouncing.
So, different problems are involved: calculate how many lines, the height of the text block, where to break the text as to not break a word, etc.
I'm going to study the wiki and examples and try to create the thing but any help or shortcut would be welcome.

Thanks.



So far, I've been using a Samurize screensaver to show the playing song info in very big letters.

[a href="http://img355.imageshack.us/my.php?image=sanscrsv8hh.png" target="_blank"]


Yes, I have already thought to use the dockable panel, in the end. But for now, at development time, I'd rather use a tab (or many) of the foo tab stack. After playing around a few minutes, it seems more stable and predictable, to me.
Of course, I will love the ability to hide everything but the black and the info...

Thanks.

Another thing I'm thinking on is if there will be a way to make the info block, once built, move like a screensaver does...
Let's go back studying and testing...
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-11-16 00:15:23
I think I found a bug. It has been mention a few times in the thread, but no one seams to know a way out.
My buttons won't show unless I start foobar "manually" (with shortcut or executable directly). If it starts from a executed media file or with the media key on my keyboard, no buttons show. The strange thing is as soon as I manage to apply changes in the configuration without even modifing the code (I simply press a key, erase it and press apply), buttons appear.

* I'm on Windows XP SP2 french,
* foobar2000 0.9.4.2 (it happens with 0.9.4.1 too) fresh installation (the only configuration that has been done was adding trackinfo_mod panel in the layout)
* Only stock components plus ColumnUI, trackinfo mod, single column - all latest version,
* MS Visual C++ 2005 Runtime Library.

Here is my (pretty basic) code:
Code: [Select]
$button(764,4,0,0,42,21,images\pref.png,images\pref_h.png,Preferences,)
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2006-11-16 01:36:38
Wow. That does seem to be a bug indeed. I started foobar via clicking an associated media file as you described and the same happened to me. None of the buttons in my track info mod configuration appear, except for the pause button (for whatever reason). Here's my code with the pause button. Maybe it will help shed some clues for the developer.

Code: [Select]
// VARIABLES //
$puts(dir,'images\buttons\ifoo\')

// PREVIOUS BUTTON //
$button(0,0,0,0,33,35,$get(dir)prev.png,$get(dir)prev2.png,Previous,)

// PLAY-PAUSE BUTTON //
$if($and(%isplaying%,$not(%ispaused%)),
// Show pause button...
$button(36,0,0,0,35,37,$get(dir)pause.png,$get(dir)pause2.png,Play or pause,),
// Show play button...
$button(36,0,0,0,35,37,$get(dir)play.png,$get(dir)play2.png,Play or pause,))

// NEXT BUTTON //
$button(76,0,0,0,33,35,$get(dir)next.png,$get(dir)next2.png,Next,)
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-11-16 01:50:57
Good thing to know that I'm not the only one experiencing this... although I'm a little surprised to be the first one to notice/report it. 
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-11-16 03:47:07
I have noticed what may be a bug. Leading spaces are not always respected.


use a non-breaking space if you want leading spaces.

I think I found a bug. It has been mention a few times in the thread, but no one seams to know a way out.
My buttons won't show unless I start foobar "manually" (with shortcut or executable directly). If it starts from a executed media file or with the media key on my keyboard, no buttons show. The strange thing is as soon as I manage to apply changes in the configuration without even modifing the code (I simply press a key, erase it and press apply), buttons appear.

* I'm on Windows XP SP2 french,
* foobar2000 0.9.4.2 (it happens with 0.9.4.1 too) fresh installation (the only configuration that has been done was adding trackinfo_mod panel in the layout)
* Only stock components plus ColumnUI, trackinfo mod, single column - all latest version,
* MS Visual C++ 2005 Runtime Library.

Here is my (pretty basic) code:
Code: [Select]
$button(764,4,0,0,42,21,images\pref.png,images\pref_h.png,Preferences,)


try using an absolute path.
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-11-16 04:01:39
Great it works, thanks.
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-11-16 06:51:46
terrestrial, are you going to add the nokeepaspect option to image functions in this, like in the single column playlist?
Title: Track Info Panel with ability to change font
Post by: Vasya Belkin on 2006-11-16 11:10:19
try using an absolute path.


First of all, thank you for the wonderful plugin.
Second, IMHO, using absolute path is not a good solution. It may be even unacceptable for some people. I've also noticed this bug some time ago using Foobar at home. But the strange thing is that at work I'm not experiencing this behaviour. Both Foobars are in the same directory using the same settings without user's profile thing (e.g. all the files are in the same directory at c:\progs\foobar2000 ). It has to be something else. Some difference in parameters of Windows' file assosiation or maybe something else in registry (for example, I've installed new versions of Foobar in other directories for the purpose of upgrading, 'cause merely unpacking the installation .exe with 7z had not worked for me as expected. I've properly removed these temporary installations, but have not checked the registry). Maybe if I do have time, I'll check this thoroughly.

Also, could somebody give me a good tip, please, how to maintain my two configs of Foobar depending on the screen resolution (1280*1024 at home and 1600*1200 at work) with minimal user interference. Perhaps I must use  a variable with resolution in the track info panel and base all the calculations of buttons places as offsets or something. Thanks
Title: Track Info Panel with ability to change font
Post by: fabiospark on 2006-11-16 19:50:22
Is there a way to make part of the info update every second and other part (a rectangle) update every 20 secs?
I'm trying to reproduce the behaviour of a screensarver and I thought of using two vars (offsex,offsety) set by a rand() function every 20 seconds of playing time but I don't know how to keep the setting of the vars when the if criteria in sont matched:

Code: [Select]
$if($greater($mod(%playback_time_seconds%,20),18),$puts(offsetx,$mod($mul($rand(),1000),280)),$puts(offsetx,$get(offsetx)))
$if($greater($mod(%playback_time_seconds%,20),18),$puts(offsety,$mod($mul($rand(),1000),350)),$puts(offsetx,$get(offsety)))
$drawrect($add(0,$get(offsetx)),$add($get(offsety)),1000,160,pencolor-0-128-255 brushcolor-null width-1)

This doesn't seem to work. The rectangle moves to a new position once every 20 secs but the next second it goes back to 0,0 origin.

Any help, please?

Thanks.
Title: Track Info Panel with ability to change font
Post by: loft on 2006-11-16 21:05:12
terrestrial, you've done a great job! Thank you!
But, while configuring the panel, I'vegot stuck into something:
$imageabs2 doesn't seem to accept long paths for images. For example I have a picture with an 81 characters path (including spaces and filename) that doesn't apear on the panel but when I copy it in the root directory it's ok.
The problem is that I'm trying to put albumarts and the pictures are in albums' folders which, after sorting, went 4 levels below root directory.
Any idea what's the problem? I'm gonna have to rearange my library in order to work with foo_trackinfo_mod?


PS: I haven't tryied to find from which path lenght the problem occurs, but I think it's 64.

Edit: After a few minutes I've found the problem and it's not the lenght of the path but the ( and [ inside it. With the path put within apostrophes it works.
Sorry for posting.
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-11-16 21:23:26
nevermind
Title: Track Info Panel with ability to change font
Post by: minielim on 2006-11-17 01:37:37

I have noticed what may be a bug. Leading spaces are not always respected.


use a non-breaking space if you want leading spaces.



Thanks, that works.
Title: Track Info Panel with ability to change font
Post by: fabiospark on 2006-11-18 14:05:32
Can we draw rectangles with rounded corners?

and...

let me a little bumping about this:

Is there a way to update a couple of vars (offsetx and offsety) only once in a time (say 20 secs) and let them keep their last value till the next update?
I'm trying to reproduce the behaviour of a screensaver, mooving info randomly around every 20 secs.

Thanks.
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-11-19 15:33:08
terrestrial, are you going to add the nokeepaspect option to image functions in this, like in the single column playlist?

I too am waiting patiently for this
Title: Track Info Panel with ability to change font
Post by: PonasX on 2006-11-21 14:12:02
[a href="http://img133.imageshack.us/my.php?image=fb2kct1.jpg" target="_blank"]

Can somebody help me with coding Track Info ? How to get scrolling Artist and Title ? My current code is
Code: [Select]
$alignabs(15,15,%_width%,%_height%,center,top)
$font(calibri,24,glow-255-0-0 glowexpand-2 glowblur-4 blur-2,255-255-255)
$caps2([%artist% - ][%title%])$alignset()


And is any way to convert progressbar to seekbar ? (press on center of progressbar and song jumps to center)
Code: [Select]
$puts(directory,G:\Programos\foobar2000\)
$puts(progressblength,630)
//// Progress Bar
//////////////////////////////////////
$if(%isplaying%,
$puts(percent,$muldiv(%_time_elapsed_seconds%,$get(progressblength),%_time_total_seconds%))
$puts(progress,$muldiv($get(percent),1000,1000))
$if($greater($get(percent),0),
$drawrect(15,55,$get(progress),1,brushcolor-110-149-255 pencolor-null)
$drawrect(15,56,$get(progress),1,brushcolor-40-70-154 pencolor-null)
$drawrect(15,57,$get(progress),1,brushcolor-97-121-190 pencolor-null)))
$ifgreater($get(progress),14,$imageabs($get(progress),55,images/pb.png,),)


Sorry for bad English   
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2006-11-21 14:56:50
Can we draw rectangles with rounded corners?
Can already be done using images. And if you use a 24-bit .png with transparency, the corners can even be anti-aliased.

and...

let me a little bumping about this:

Is there a way to update a couple of vars (offsetx and offsety) only once in a time (say 20 secs) and let them keep their last value till the next update?
I'm trying to reproduce the behaviour of a screensaver, mooving info randomly around every 20 secs.
Thanks.
Can already be done using $mod() and either %playback_time_seconds% or %cwb_systemdatetime%

checkout my config (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=49783&view=findpost&p=447726) for an example.
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-11-21 15:25:36
Is there a way to update a couple of vars (offsetx and offsety) only once in a time (say 20 secs) and let them keep their last value till the next update?
I'm trying to reproduce the behaviour of a screensaver, mooving info randomly around every 20 secs.
Thanks.
Can already be done using $mod() and either %playback_time_seconds% or %cwb_systemdatetime%

What he's looking for is a way to change a variable value every 20 seconds and keep this value between the intervals. Using $mod can trigger a fonction ($rand in this case) and put it in a variable for 1 second only. The other 19 seconds, either the variable will equal 0 or it will constantly call a new random number. AFAIK calling $rand fonction and keep it in memory for a certain amount of time is currently not possible.
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2006-11-21 15:51:38
Psudeo-random would be less than satisfactory I'm asumming?
If you worked with %playback_time_remaining seconds% psudeo-random would be even less noticable.
Title: Track Info Panel with ability to change font
Post by: fabiospark on 2006-11-21 17:25:05
Is there a way to update a couple of vars (offsetx and offsety) only once in a time (say 20 secs) and let them keep their last value till the next update?
I'm trying to reproduce the behaviour of a screensaver, mooving info randomly around every 20 secs.
Thanks.
Can already be done using $mod() and either %playback_time_seconds% or %cwb_systemdatetime%

What he's looking for is a way to change a variable value every 20 seconds and keep this value between the intervals. Using $mod can trigger a fonction ($rand in this case) and put it in a variable for 1 second only. The other 19 seconds, either the variable will equal 0 or it will constantly call a new random number.

Yes.

Now, I will try to use some track characteristics (length, lenght+title length or any other combination of tag values) after the needed normalization, to create a "fake random" value and keep the info block in the same position for the whole song.
Maybe some statistics expert will come up saying it's not the best way to evenly distribute points on an xy plane but, on a screensaver point of view, I think it can be enough.
No?
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-11-22 23:11:31
updated. there are a couple more changes than noted in the changelog because I forgot what they were 
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-11-22 23:41:00
Quote
+ mode changes through the context menu instead of double click

Brilliant! Thanks terrestrial
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-11-22 23:54:47
Thanks for the update,this component keeps getting better and better!I've noticed that ow it updates emidiatly
on event,and not once per second.For example volume changes show up right away.
Title: Track Info Panel with ability to change font
Post by: fabiospark on 2006-11-23 21:15:22
Does this plugin support $meta(x,y)?

Thanks.
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-11-24 08:41:04
updated. there are a couple more changes than noted in the changelog because I forgot what they were 

Still no way to have buttons that aren't absolutely aligned. 
Title: Track Info Panel with ability to change font
Post by: fabiospark on 2006-11-24 10:13:33
Is there a way to show a working clock even when nothing is playing?

If yes, linked to which variable?

I tried with %cwb_systemdatetime% but I see it only while playing.

Thanks.
Title: Track Info Panel with ability to change font
Post by: amors on 2006-11-24 12:04:38
Quote
updated. there are a couple more changes than noted in the changelog because I forgot what they were


CPU usage: previosly was 6-7 %, but now - 10-12%
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-11-26 01:33:12
This latest release causes my foobar to explode, consuming all the resources it can grab and making my system unresponsive for several minutes before I can finally kill the process and return to normality. This happens during the initial foobar loading so there is little I can do to narrow down the problem other than remove the component.

Request: Would you consider continuing to host the last known stable release of your component on your download page in addition to any recent releases so that those of us who forgot to backup their component or configuration can roll back when things like this happen?
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-11-26 05:36:44
This latest release causes my foobar to explode, consuming all the resources it can grab and making my system unresponsive for several minutes before I can finally kill the process and return to normality. This happens during the initial foobar loading so there is little I can do to narrow down the problem other than remove the component.

Request: Would you consider continuing to host the last known stable release of your component on your download page in addition to any recent releases so that those of us who forgot to backup their component or configuration can roll back when things like this happen?


must be a conflicting plugin?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-11-28 01:50:38
To investigate if this is a matter of a conflicting plugin I have installed a separate copy of foobar using only:

foo_input_std.dll
foo_ui_columns.dll
foo_uie_trackinfo_mod.dll

I have used both foobar 0.9.4.1 and 0.9.4.2 beta 2
I have used both ColumnsUI v0.1.3 b1v6 and 0.1.3 b1v7

I continue to experience the problem of foobar consuming excessive resources and becoming non-responsive during load when using the latest version of trackinfomod. The problem goes away when trackinfomod is removed.

Does anyone have a mirror for the previous version of trackinfomod?
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-11-28 04:15:21
unfortunately I don't have older versions... but I should hopefully be able to fix the problem

maybe it has something to do with your code... please post it and I will take a look.

also does it happen with the default code, plus have you tried removing trackinfo mod completely to see if the problem persists?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-11-28 17:50:01
After a long process of rebuilding my foobar piece by piece I tracked the problem down to a typo in the code. Sorry to bother you :)
Title: Track Info Panel with ability to change font
Post by: sune on 2006-11-29 00:13:07
Quote
Changelog:
+ mode changes through the context menu instead of double click


ooooh thanks a lot for this Terrestrial!! Now I can use the volume controls in my track info panel in a comfortable way.. cool
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-11-29 12:56:10
Still waiting for NOKEEPASPECT and file exist checking , these are the things I need to implement the new designs I am thinking of.
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-11-29 13:02:25
Still waiting for NOKEEPASPECT and file exist checking , these are the things I need to implement the new designs I am thinking of.

You can do file exists with foo_cwb_hooks now.

I still need inline instead of absolute positioned buttons.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-11-29 17:04:27
Still waiting for NOKEEPASPECT and file exist checking , these are the things I need to implement the new designs I am thinking of.


its in there... most stuff automatically gets added to both components since they share a lot of the same source code.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-11-29 18:30:47
Is there any way to calculate the size of a rezised image?

For example:

I have an image of size 180x350 (CD Single Cover).
I use this function to load the image:
$imageabs2(85,85,,,,,,,image.jpg,)
The resulting image is 43x85 (scaled as expected).

How do I calculate that the width will be 43 from an arbitrary image? Not all my images are this same aspect ratio.
Title: Track Info Panel with ability to change font
Post by: Sam Stoat on 2006-11-29 18:50:34
Is there any way to calculate the size of a rezised image?

For example:

I have an image of size 180x350 (CD Single Cover).
I use this function to load the image:
$imageabs2(85,85,,,,,,,image.jpg,)
The resulting image is 43x85 (scaled as expected).

How do I calculate that the width will be 43 from an arbitrary image? Not all my images are this same aspect ratio.
That's the sort of thing I'd like to know.

Also, in your example, the 43x85 pic is displayed in the middle of a 85x85 box.  It would be nice to choose whether the pic is displayed in the left/middle/right of the box, or top/centre/bottom.
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-11-29 19:18:46

Still waiting for NOKEEPASPECT and file exist checking , these are the things I need to implement the new designs I am thinking of.


its in there... most stuff automatically gets added to both components since they share a lot of the same source code.


Oh excellent

Is there anyway to force an image resize when the window is resized?
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-11-29 19:30:29
@terrestrial
Is there some sort of feature list that you're working on? Is my request even being considered? I ask because I've never seen any comment on it.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-11-30 03:01:59
Is there any way to calculate the size of a rezised image?


not currently.

Also, in your example, the 43x85 pic is displayed in the middle of a 85x85 box.  It would be nice to choose whether the pic is displayed in the left/middle/right of the box, or top/centre/bottom.


you can specify where teh image is aligned in the image options-- you might have to check the scpl changelog for the exact syntax.

Is there anyway to force an image resize when the window is resized?


nope. will do for the next version.

@terrestrial
Is there some sort of feature list that you're working on? Is my request even being considered? I ask because I've never seen any comment on it.


yes that feature will make it in, but it will have to wait for a rewrite of the drawing code- which I don't know when I'll get to
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-11-30 03:38:50

Also, in your example, the 43x85 pic is displayed in the middle of a 85x85 box.  It would be nice to choose whether the pic is displayed in the left/middle/right of the box, or top/centre/bottom.

you can specify where teh image is aligned in the image options-- you might have to check the scpl changelog for the exact syntax.


Or you can go the wiki. I've made a couple of updates today, hopefully it is now up to date. And while you are there, you can also take a look for some informations that I would have missed.
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-11-30 03:57:29

@terrestrial
Is there some sort of feature list that you're working on? Is my request even being considered? I ask because I've never seen any comment on it.


yes that feature will make it in, but it will have to wait for a rewrite of the drawing code- which I don't know when I'll get to

Thanks for the update. I'll be patient now. 
Title: Track Info Panel with ability to change font
Post by: alphaex32 on 2006-11-30 04:29:59
its in there... most stuff automatically gets added to both components since they share a lot of the same source code.
Does that mean buttons will be implemented into the single column playlist code?
Title: Track Info Panel with ability to change font
Post by: Ran Sagy on 2006-11-30 18:53:15
As a side note, I'd just like to comment on terrestrial's awesome attitude towards bug reports and\or feature requests, as well as questions most developers find annoying (and i can understand those too, being one myself) like "when is the next version done".

It's nice to see such friendly and active developers in the community. Kudos
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-11-30 19:17:07
As a side note, I'd just like to comment on terrestrial's awesome attitude towards bug reports and\or feature requests, as well as questions most developers find annoying (and i can understand those too, being one myself) like "when is the next version done".

It's nice to see such friendly and active developers in the community. Kudos

Here! Here!
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-12-01 00:11:49
Can values be appended with buttons? I just realised that what I want to do with non-aligned buttons really requires that as well. I'd like to be able to click each button and add the value instead of replacing the existing value.
Title: Track Info Panel with ability to change font
Post by: tns on 2006-12-01 02:05:07
I've got a couple of small problems to which I haven't been able to find a solution yet. I hope this is the right place to ask for help, otherwise I apologize. 

1. I've set the default font to Verdana 7pt, but whenever I try to use a larger amount of pt (like 20 pt on the second line below //Track in the codebox) that line get's drawn but the other lines don't  See the screenshots.

(http://img205.imageshack.us/img205/6066/foobar2000lq5.th.jpg) (http://img205.imageshack.us/my.php?image=foobar2000lq5.jpg)
(How it's supposed to look like with small font)

Code: [Select]
//Track
$alignabs(665,87,50,12,,)$font(Verdana,,,)$transition(Track:,$rgb(25,100,255),$rgb(0,0,0))
$alignabs(700,87,280,12,center,middle)$font(Verdana,,,)$if(%title%,$transition(%title%,$rgb(25,100,255),$rgb(0,0,0)),$transition(Unknown titlet,$rgb(25,100,255),$rgb(0,0,0)))
(http://img215.imageshack.us/img215/1919/foobarred2000ym5.th.jpg) (http://img215.imageshack.us/my.php?image=foobarred2000ym5.jpg)
(What happens with 20pt)

Code: [Select]
//Track
$alignabs(665,87,50,12,,)$font(Verdana,,,)$transition(Track:,$rgb(25,100,255),$rgb(0,0,0))
$alignabs(700,87,280,50,center,middle)$font(Verdana,20,,)$if(%title%,$transition(%title%,$rgb(25,100,255),$rgb(0,0,0)),$transition(Unknown titlet,$rgb(25,100,255),$rgb(0,0,0)))

2. Whenever I enable "Update every second" using the code below, CPU usage goes up to 14% (P4 2.4GHZ). I don't use a lot of code, i suspect it has to do with my code for the $imageabs2 functions but i can't seem to solve the problem. Do variables on lines that have been commented out still get evaluated? Because commenting out the line with $puts and $alignabs doesn't seem to do much, makes up for a difference of 1 or 2%. With the "Update every second" CPU usages simply is 0%.

Code: [Select]
//Background
$imageabs2(1280,350,0,0,1280,350,0,0,images/background.png,)
$imageabs2(1280,350,0,0,1280,350,0,0,images/overlay.png,alpha-25)

//Albumart path
$puts(coverlocation,$replace(%path%,%filename%.mp3,)folder.jpg)
 
//Album art
$imageabs2(248,248,0,0,248,248,100,63,$if($fileexists($get(coverlocation)),$get(coverlocation),images/nocover.png),imageOptions)

//Trackinfo
//Track
$alignabs(665,87,50,12,,)$font(Verdana,,,)$transition(Track:,$rgb(25,100,255),$rgb(0,0,0))
$alignabs(700,87,280,12,center,middle)$font(Verdana,,,)$if(%title%,$transition(%title%,$rgb(25,100,255),$rgb(0,0,0)),$transition(Unknown title,$rgb(25,100,255),$rgb(0,0,0)))
//Artist
$alignabs(665,122,50,12,,)$font(Verdana,,,)$transition(Artist:,$rgb(25,100,255),$rgb(0,0,0))
$alignabs(700,122,280,12,center,middle)$font(Verdana,,,)$if(%artist%,$transition(%artist%,$rgb(25,100,255),$rgb(0,0,0)),$transition(Unknown artist,$rgb(25,100,255),$rgb(0,0,0)))
//Album
$alignabs(665,145,50,12,,)$font(Verdana,,,)$transition(Album:,$rgb(25,100,255),$rgb(0,0,0))
$alignabs(700,145,280,12,center,middle)$font(Verdana,,,)$if(%album%,$transition(%album%,$rgb(25,100,255),$rgb(0,0,0)),$transition(No album,$rgb(25,100,255),$rgb(0,0,0)))
//Album
$alignabs(665,168,50,12,,)$font(Verdana,,,)$transition(Album:,$rgb(25,100,255),$rgb(0,0,0))
$alignabs(700,168,280,12,center,middle)$font(Verdana,,,)$if(%album%,$transition(%album%,$rgb(25,100,255),$rgb(0,0,0)),$transition(No album,$rgb(25,100,255),$rgb(0,0,0)))
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-12-01 04:05:15
Here's some sample code for displaying album art inside a cd case when it exists, but otherwise displaying a nocover image:

Code: [Select]
// Album Art
$if($fileexists($replace(%path%,%filename_ext%,$if2(%cdid%,[%artist% - ]$replace(%album%,?,,:,)).*)),
$imageabs2(150,,,,,,10,10,images\emptycd.png,)
$imageabs2(103,103,,,,,36,13,$replace(%path%,%filename_ext%,$if2(%cdid%,[%artist% - ]$replace(%album%,?,,:,)).*),)
,
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),
$imageabs2(150,150,,,,,8,2,images\online-radio.*,)
,
$imageabs2(150,150,,,,,8,2,images\no-cover.*,)
))

EDIT: Added image for online radio.
Title: Track Info Panel with ability to change font
Post by: 2Pacalypse on 2006-12-01 10:38:50
is there a way to have clickable (searchable) progress bars?
Title: Track Info Panel with ability to change font
Post by: Spirit_of_the_ocean on 2006-12-01 13:23:57
is there a way to have clickable (searchable) progress bars?


Same question here
Title: Track Info Panel with ability to change font
Post by: lav-chan on 2006-12-01 16:09:28
There would be a way, if there was a command to seek to a certain point in a given song. As far as i know, foobar only has commands to seek relative to the current position -- for example, 'Playback/Seek ahead by 1 minute'.

What you would need to make a functioning searchable progress bar is a command to do that absolutely, like maybe a 'Seek to 50% of track length' kind of deal. And then you would need several of those (at the very minimum, i suppose, 0%, 25%, 50%, 75%, and 100%; but preferably even more than that) which you could assign to various buttons along the length of the progress bar.

The problem is, i don't think that such a command exists for foobar. It'd probably be trivial to write a component for it though, so if you can get someone to do that for you you'd be OK.
Title: Track Info Panel with ability to change font
Post by: BlueScreenJunky on 2006-12-01 18:25:45
Yeah, I think that and the ability to control volume through Track Info Panel in the same way would be just perfect. I mean right now you can customize almost everything with columnUI, track info mod and single column... except for those two things (volume and seekbar) which look pretty ugly if you don't have a nice Visual Style.

edit : More generaly, it would be useful to have "clickable" buttons in Trackinfo, for exemple if you display stars to chow your rating, you could make each star a button which would allow you to quickly set your rating. Or is it already possible ?
Title: Track Info Panel with ability to change font
Post by: lav-chan on 2006-12-01 20:15:25
edit : More generaly, it would be useful to have "clickable" buttons in Trackinfo, for exemple if you display stars to chow your rating, you could make each star a button which would allow you to quickly set your rating. Or is it already possible ?

Yes, it's already possible. Just set buttons to use the 'TAG' command. There are examples of this all over in the appearance thread.

Yeah, I think that and the ability to control volume through Track Info Panel in the same way would be just perfect. I mean right now you can customize almost everything with columnUI, track info mod and single column... except for those two things (volume and seekbar) which look pretty ugly if you don't have a nice Visual Style.

You actually already can do volume through Track Info Panel. foobar includes volume commands (like 'Playback/Set volume to 0dB' and 'Playback/Volume up') out of the box, so it's only a matter of setting buttons to perform those actions. What foobar doesn't include is a method of retrieving the current volume level (which is necessary if you want to make a bar that fills up as the volume increases); however, cwbowron's foo_cwb_hooks component offers variables for this.

If you dig through the recent threads and find the 'Home Stereo Display' one you'll see how this is accomplished.
Title: Track Info Panel with ability to change font
Post by: BlueScreenJunky on 2006-12-01 21:33:02
thanx a lot lav-chan! I overlooked the whole button thing in the wiki, looks like this plugin is far more complete (and complexe ^^; ) than I first thought.
I'll check foo_cwb_hooks the "stereo display" strings and see if I can get it to work the way I want =)
Title: Track Info Panel with ability to change font
Post by: Purple Monkey on 2006-12-01 21:38:21
There would be a way, if there was a command to seek to a certain point in a given song. As far as i know, foobar only has commands to seek relative to the current position -- for example, 'Playback/Seek ahead by 1 minute'.


I suppose you could have a dynamically sized button that followed the seekbar, if your click to one side it seeked back by 10sec/1minute, on the other side forward. It wouldn't be perfect but it would be usable.
Title: Track Info Panel with ability to change font
Post by: callisto on 2006-12-02 01:13:44
To that progressbar thingy...
I personnally think, that it would be easier to make the original progressbar skinnable (eg: choosing pic for the progress bg-line + pic for the dot thing), than making the whole thing up in the trackinfo_mod.
but then it would be on the to-do-list of the fb2k developers and I dunno if they are willingly to do that and have enough time...
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-12-02 04:20:05
I would prefer a clickable/dragable progress/seek bar in trackinfomod as opposed to a separate toolbar component because then I can put it in the middle of a trackinfomod panel without adding the ugly splitter lines you get from columns ui. Also, I'd like to be able to do stuff like make vertical progress bars, circlular progress bars, progress bars that turn into other things on certain conditions... trackinfomod just opens up a whole level of flexibility you dont get with the traditional control.

I have already enjoyed migrating all my buttons to trackinfomod:
(http://img180.imageshack.us/img180/7916/fooyl8.th.png) (http://img180.imageshack.us/my.php?image=fooyl8.png)
In the above example I could have made the bottom section of my layout from several button toolbars on a horizontal splitter and a custom statusbar but instead I have used a single trackinfomod panel. This allows me to move my playback controls to virtually any position I desire including halfway on top of my status bar. This also allows me to position controls based off of %_width% and %_height% so that they reposition effortlessly when switching from windowed to fullscreen mode.  This sort of flexibility just isnt there with the traditional controls. I also have an auto-hide trackinfo panel .. I would like to do things like change all my buttons to a seekbar when it unhides etc.  I would like to replace the dropdown main menu controls on the top with trackinfomod code so that I can change the code based on playback conditions.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-12-02 18:54:46
New version uploaded

It might break some some code as leading tabs / spaces are removed to allow for more legible code

---------------------------------------------------------------------------


Or you can go the wiki. I've made a couple of updates today, hopefully it is now up to date. And while you are there, you can also take a look for some informations that I would have missed.


Thanks for keeping the wiki up to date 

its in there... most stuff automatically gets added to both components since they share a lot of the same source code.
Does that mean buttons will be implemented into the single column playlist code?


most stuff, not all...  I'm still thinking over whether to/the best way to add buttons to scpl.

As a side note, I'd just like to comment on terrestrial's awesome attitude towards bug reports and\or feature requests, as well as questions most developers find annoying (and i can understand those too, being one myself) like "when is the next version done".

It's nice to see such friendly and active developers in the community. Kudos


thanks  bug reports and well thought out feature requests are always nice.

1. I've set the default font to Verdana 7pt, but whenever I try to use a larger amount of pt (like 20 pt on the second line below //Track in the codebox) that line get's drawn but the other lines don't  See the screenshots.


your alignabs box isn't big enough to display the text.

Quote
2. Whenever I enable "Update every second" using the code below, CPU usage goes up to 14% (P4 2.4GHZ). I don't use a lot of code, i suspect it has to do with my code for the $imageabs2 functions but i can't seem to solve the problem. Do variables on lines that have been commented out still get evaluated? Because commenting out the line with $puts and $alignabs doesn't seem to do much, makes up for a difference of 1 or 2%. With the "Update every second" CPU usages simply is 0%.


try the new version and move your background images drawing to the "// Background" section.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-12-02 19:18:15
Maybe i'm missing something,but it stopped updating every second with the new version:playback time is frozen
P.S. Thanx for the text editor!It rules!
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-12-02 19:29:48
put stuff that needs to update every second under "// PerSecond"
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-12-02 19:36:21
Sorry,i missed that part in the changelog.
One question can //Per second declaration be made number of times or is it defining one solid section of the code?
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-12-02 19:45:27
haven't tested it but you should be able to have multiple "// PerSecond" declarations. (note, it has to be exactly that, capitalization and all).
Title: Track Info Panel with ability to change font
Post by: fabiospark on 2006-12-02 19:51:26
Any hope to have a: "//PerSempre"  (Italian for "forever")? 

I mean, having some system date and time keep showing and updating even if nothing is playing.

Thanks.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-12-02 20:15:07
Any tips on how to make buttons work again?And also does //Per Second declaration affects all the lines that come after it until the next declaration,or is it only for the line under it?

Ok it goes as following:if you define the whole code as //Per Second,then everything works fine except for buttons,if you make no decaration,then the buttons work ok,but everything else is frozen.
Bottom line:? (what should i do?)
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-12-02 20:19:25
affects all the lines after.

buttons only work under "// PerTrack" (which is the default)
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-12-02 20:24:56
affects all the lines after.

buttons only work under "// PerTrack" (which is the default)

Yeah,figured that out already,another problem though:i have buttons that has no symbols displayed (empty fields),they placed on top of symbols that indicates their command output (for example on top of rating stars)
it worked fine in previous versions,but now when the button is hovered i get new background drawn on top of everything else.
(http://img67.imageshack.us/img67/4672/44ny0.png)
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-12-02 20:39:14
put the stuff over the button on // PerTrack also.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-12-02 20:42:49
The stuff on top of the button is the overlay glass image,if i put it on //PerTrack mode,all other info is drawn over it and not beneath
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2006-12-02 21:13:32
Quote
+ different redraw times for different sections.
   // Background
      // Put background stuff here (eg images). Only drawn once.
   // PerTrack
      // Put stuff that changes per track here (%album%, %artist%, etc.) Buttons go here as well.
   // PerSecond
      // Stuff that needs to update every second (%playback_time%, etc)

So, for backwards compatibility we can just put a //PerSecond at the very beginning, and the other options are kinda just for resource management?
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-12-02 23:39:52
Another bug:when in //PerTrack mode some buttons response only once per track play.
I have a button that circles the playback modes,it only works once per track now.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-12-03 03:15:15
The stuff on top of the button is the overlay glass image,if i put it on //PerTrack mode,all other info is drawn over it and not beneath


for best performance you could break up the overlay image (I'm assuming the stuff over/under the button isn't updating every second).

however, for the next version, I will add the ability to have buttons in the // PerSecond section.


So, for backwards compatibility we can just put a //PerSecond at the very beginning, and the other options are kinda just for resource management?


pretty much, except for buttons which have to go under // PerTrack.

Another bug:when in //PerTrack mode some buttons response only once per track play.
I have a button that circles the playback modes,it only works once per track now.


I can't reproduce this... can you post a code snipped which shows this behavior?
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-12-03 10:30:23
Quote
I can't reproduce this... can you post a code snipped which shows this behavior?


Code: [Select]
$button2(72,21,0,0,13,12,,,
$if($stricmp(%cwb_playback_order%,'Shuffle (tracks)'),'Shuffle (albums)',
$if($stricmp(%cwb_playback_order%,'Shuffle (albums)'),'Shuffle (directories)',
'Shuffle (tracks)')),)
$alignabs(90,21,%_width%,%_height%,,)%cwb_playback_order%
Title: Track Info Panel with ability to change font
Post by: lav-chan on 2006-12-03 10:51:28
It's noted in the wiki that %cwb_playback_order% (and one other variable, i forget which) won't update until a track is played. You think that might have something to do with it?
Title: Track Info Panel with ability to change font
Post by: Coppertop on 2006-12-03 12:39:58
I use $puts and $get to store my font styles and some other stuff. I need to use $puts in both // PerTrack and // PerSecond to usse the variable in both sections. Is this intended?
Title: Track Info Panel with ability to change font
Post by: topdownjimmy on 2006-12-04 01:18:01
Thanks again Terrestrial for these wonderful components.

I have a couple feature requests for the foo_trackinfo_mod:

* Follow cursor mode when not playing.  This is how the albumart component behaves, and I think it makes sense.

* Double-click function

* Not a feature request, but I notice that clicking on the panel doesn't give foobar focus from behind another window.

* Another non-request, but I get the same problem Russell does with buttons, where they put black rectangles over images.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-12-04 05:12:46
I don't want to sound too critical but I do not like the idea of parsing comments as code. I don't like the idea of parsing rem statements in cue sheets for meta tags and I don't like using // comments in code to flag different sections.  Comments should be just that, comments. Perhaps there is a better approach to implementing these features, maybe a separate code box for each one? Maybe separate tabbed pages for each type in the config? I am hesitant to upgrade this component until all the button functionality is sorted out.
Title: Track Info Panel with ability to change font
Post by: eisteh on 2006-12-04 13:38:26
I don't want to sound too critical but I do not like the idea of parsing comments as code. I don't like the idea of parsing rem statements in cue sheets for meta tags and I don't like using // comments in code to flag different sections.  Comments should be just that, comments. Perhaps there is a better approach to implementing these features, maybe a separate code box for each one? Maybe separate tabbed pages for each type in the config? I am hesitant to upgrade this component until all the button functionality is sorted out.


Yeah, I partially agree with you. This commenting is kind of weird. I think the best solution would be to handle it like in SCP, a own box for every rendering type. Tabs would be nice, too.
Title: Track Info Panel with ability to change font
Post by: tns on 2006-12-04 15:55:07
It appears that if you don't have "Update every second" enabled on the old version, then upgrade, the update function is disabled in the new version : < (e.a // PerSecond %playback_time% shows up as ?)

Fix: Get the old plugin back and enable the option, then reinstall the new version.

Just so you know 

CPU usage appears to be better now, thanks for the update terrestrial!
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-12-04 16:06:08
I think the best solution would be to handle it like in SCP, a own box for every rendering type. Tabs would be nice, too.

I like the tab idea. A forth tab/box for global values (e.g. $puts, $font, etc.) would be über.
Title: Track Info Panel with ability to change font
Post by: ojdo on 2006-12-04 20:42:02
Thanks so much terrestrial, with // Background & // PerSecond the panel has reached perfection for me (and my slow hardware). Now I can use my fullscreen trackinfo panel (http://galsch.de/files/open/screenshots/2006-12-02-fb2k-htpc-2.png) without having to wait 3 seconds after each tagging action.

ojdo
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-12-05 01:22:00
Quote
I can't reproduce this... can you post a code snipped which shows this behavior?


Code: [Select]
$button2(72,21,0,0,13,12,,,
$if($stricmp(%cwb_playback_order%,'Shuffle (tracks)'),'Shuffle (albums)',
$if($stricmp(%cwb_playback_order%,'Shuffle (albums)'),'Shuffle (directories)',
'Shuffle (tracks)')),)
$alignabs(90,21,%_width%,%_height%,,)%cwb_playback_order%



works fine for me... make sure you have notifications turned on in cwb_hooks.


I use $puts and $get to store my font styles and some other stuff. I need to use $puts in both // PerTrack and // PerSecond to usse the variable in both sections. Is this intended?


yes. the there sections run at different times, separately.


* Follow cursor mode when not playing.  This is how the albumart component behaves, and I think it makes sense.


yep, seems logical.

Quote
* Double-click function


why would you need this (instead of using buttons)?

I don't want to sound too critical but I do not like the idea of parsing comments as code. I don't like the idea of parsing rem statements in cue sheets for meta tags and I don't like using // comments in code to flag different sections.  Comments should be just that, comments. Perhaps there is a better approach to implementing these features, maybe a separate code box for each one? Maybe separate tabbed pages for each type in the config? I am hesitant to upgrade this component until all the button functionality is sorted out.


well, it can be any string to separate sections... the advantage of comments is that it maintains compatibility with older versions, and (more importantly) with scpl. Tabs would also be good, but would be a lot more work for me  (especially when using an external editor).

It appears that if you don't have "Update every second" enabled on the old version, then upgrade, the update function is disabled in the new version : < (e.a // PerSecond %playback_time% shows up as ?)

Fix: Get the old plugin back and enable the option, then reinstall the new version.


nice debugging  will fix for the next version.
Title: Track Info Panel with ability to change font
Post by: anishbenji on 2006-12-05 05:26:24
Is it possible for variables created in one section, be available in another section. If not, would it be possible to allow this.
-anishbenji
Title: Track Info Panel with ability to change font
Post by: pIv on 2006-12-05 05:28:49
To terrestrial!

Can you create //Global section.

Example: in Russell7777 code  I must use

$puts(write_tags,1)

twice

in // PerSecond section and // PerTrack section too.

When I place string

$puts(write_tags,1)

as first string of script - it's value available only in // PerTrack section.
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-12-05 05:29:18
Quote
works fine for me... make sure you have notifications turned on in cwb_hooks.

With all the respect ,terrestrial,this means to kill my foobar and to make it slow and useless=
to discard all the advantages of resource managment you've put in the last version+more 
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-12-05 06:12:01
Can you create //Global section.


I can make $get_global and $set_global persist across different sections.

With all the respect ,terrestrial,this means to kill my foobar and to make it slow and useless=
to discard all the advantages of resource managment you've put in the last version+more 


have you tried it with the latest version? What kind of cpu usage are you seeing with notifications on and off?
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2006-12-05 10:10:37
2terrestrial:I take everything i said back,you was right and i was wrong,sorry and thank you
Title: Track Info Panel with ability to change font
Post by: topdownjimmy on 2006-12-05 14:03:17

Can you create //Global section.


I can make $get_global and $set_global persist across different sections.
I think it would be convenient just to have all our globals out of the way, on a separate tab if possible.  Otherwise they clog up whichever box they're in, and it would be easy to forget where you defined them, making changing them more difficult.
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-12-05 15:27:44
I have very complicated code in some cases. Can I have:

Code: [Select]
// PerTrack
command1
command2

// PerSecond
command3

// PerTrack
command4


?

Additionally, I don't like the comment style of your new commands. Comments are comments. Why not using a command style ($section(background) etc?)
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-12-05 16:27:03
The dll update fails!

Arrg! At startup fb2k first asked about changing settings, as the module has been removed?!
Then the problem "Failed to load DLL: foo_uie_trackinfo_mod.dll"

So you changed runtime dependencies?

fb2k 0.9.4.2 here on W2K. The vc++ redistributable is installed.

Now I can't even revert to an older version of your component: I always get the above error message. ???

EDIT: I got it working but I do not understand at all:

1) Another foobar instance worked.
2) In the broken foobar, I could even put back old trackinfomod dlls and a 3 days old foobar2000.cfg: "could not load dll".
3) I put the components from the other fb2k into the broken one. Now it worked. Then I put back all the components from the broken one except for the new trackinfo mod. Still works now.

To me it looks like your component has a dependency to another component. I have no idea.
Title: Track Info Panel with ability to change font
Post by: adrianmak on 2006-12-06 01:46:09
I also can't work with button, no response at all
Code: [Select]
// PerSecond
$imageabs($sub($div(%_width%,2),454),5,neo1\back2.png,)
$if(%isplaying%,
$puts(volume,$add($mul($substr($num(%cwb_volume%,4),2,4),-1),100))
$alignabs(10,20,60,200,,)
$font(Calibri,7,glow-50-70-90,170-230-250)
Volume: $get(volume) '%'
$imageabs($sub(%_width%,58),12,'neo1\vol\'$div($add($get(volume),5),10)'.png',)
$alignabs($sub(%_width%,70),45,60,200,right,)
$get(spacer)%_time_elapsed%$if(%_time_total%,' / '%_time_total%,)
$if(%_time_remaining%,$get(spacer),)
$alignabs(10,45,200,200,,)
$if($strstr(%_path_raw%,'tone://'),$if(%_time_total%,%_length%' Seconds of '$replace(%title%,'Tone: ',)' Tone',%title%),)
$if($strstr(%_path_raw%,'silence://'),%_length%' Seconds of Silence',)
$if($strstr(%_path_raw%,'cdda://'),'CDDA',)
$if2(%mp3%,$if2(%__codec%,))
$if($strstr(%_path_raw%,'cdda://'),$get(spacer)'1411kbps',$if(%__bitrate%,$get(spacer)%__bitrate%' kbps ',))
$if(%__extrainfo%,$get(spacer)%__extrainfo% ,)
$if(%__samplerate%,$get(spacer)$cut(%__samplerate%,2)' kHz' ,)
$if(%__channels%,$get(spacer)$ifgreater(%__channels%,1,'Stereo','Mono'),)
,)
// PerTrack
$button($sub($div(%_width%,2),64),32,0,0,0,0,neo1\pause1b.png,neo1\pause2b.png,Pause,)
$button($sub($div(%_width%,2),40),31,0,0,0,0,neo1\prev1.png,neo1\prev2.png,Previous,)
$button($add($div(%_width%,2),17),31,0,0,0,0,neo1\next1.png,neo1\next2.png,Next,)
$button($add($div(%_width%,2),44),32,0,0,0,0,neo1\stop1.png,neo1\stop2.png,Stop,)
$button($sub($div(%_width%,2),15),26,0,0,0,0,neo1\play1.png,neo1\play2.png,Play,)

I have put // Per Track before $button  definition
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-12-06 19:12:23
A feature request: I'd like to be able to flip vertically or horizontally the image I am showing. I'd like to use this for reflections.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-12-06 20:30:50
To me it looks like your component has a dependency to another component. I have no idea.


nope... sounds like something got corrupted somewhere along the way.

------------------------------------

I've uploaded a new version with support for a "// Globals" section and ability to flip and rotate images.
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-12-06 22:21:30
Terrestrial: Did you just add that awesome function for rotation since my request? That's so incredibly awesome.
Title: Track Info Panel with ability to change font
Post by: soundwave on 2006-12-07 10:13:10
Hello, hope somebody can help me.
Just downloaded this plugin, but i can't figure out how to get it to work properly.
Everything seems fine, but the display is not getting updated.
i.e. I use %_time_elapsed%, but the trackinfo_mod only displays 0:00.
What am i doing wrong?
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2006-12-07 10:37:08
http://wiki.hydrogenaudio.org/index.php?ti...%29#Redraw_type (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29#Redraw_type)
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-12-07 13:05:30
So how can I set spaces at the beginning of a code line now? ' ' doesn't work as well as $char(32).
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-12-07 14:19:43
How do I put a fixed png overlay over the top of something that updates every second?
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2006-12-07 14:37:13
update that .png every second.
Title: Track Info Panel with ability to change font
Post by: 2Pacalypse on 2006-12-07 15:30:03
i have foo_uie_tabs is there a way to have a button which is not directly linked to one tab but works by:

if displaying tab 1 on click go to tab 2 & if displaying tab 2 on click go to tab 1?
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-12-07 15:54:42
i have foo_uie_tabs is there a way to have a button which is not directly linked to one tab but works by:

if displaying tab 1 on click go to tab 2 & if displaying tab 2 on click go to tab 1?


I wanted this too, and there is a main menu command for it (Panel #0 Cycle Forward, 0 may be different), but it doesn't seem to work with trackinfo_mod..?
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2006-12-07 17:16:36
probably because of the '#'
Trackinfo mod has weird issues with #
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-07 18:09:14
So how can I set spaces at the beginning of a code line now? ' ' doesn't work as well as $char(32).


Maybe restructure your code to look more like:
Code: [Select]
Blah
$char(10)  Blah

Instead of:
Code: [Select]
Blah$char(10)
  Blah
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-12-07 18:28:17
Small feature request: Could you perhaps make a checkbox or something to use system default background color (depending on msstyle) instead of custom. That would be awesome.
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-07 18:36:55
I also can't work with button, no response at all

Code: [Select]
// PerTrack
$button($sub($div(%_width%,2),64),32,0,0,0,0,neo1\pause1b.png,neo1\pause2b.png,Pause,)
$button($sub($div(%_width%,2),40),31,0,0,0,0,neo1\prev1.png,neo1\prev2.png,Previous,)
$button($add($div(%_width%,2),17),31,0,0,0,0,neo1\next1.png,neo1\next2.png,Next,)
$button($add($div(%_width%,2),44),32,0,0,0,0,neo1\stop1.png,neo1\stop2.png,Stop,)
$button($sub($div(%_width%,2),15),26,0,0,0,0,neo1\play1.png,neo1\play2.png,Play,)


I have put // Per Track before $button  definition



The last two numeric arguments in the $button function are the width and height of the button, so your buttons have zero width and height.

You should look at the following page before asking questions in this thread:

http://wiki.hydrogenaudio.org/index.php?ti...rackinfo_mod%29 (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29)
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-07 18:49:14
Perhaps a little off topic, but a few pages back, I saw the function $sorted(field) used in an $if statement.  I tried it in my modified info pannel, but it said [UNKNOWN FUNCTION], so I assume that it is a part of some plugin that I don't have.  Does anybody know how to get it, what plugin it might be part of?

Answered my own question; $sorted(field) is supposed to display '[UNKNOWN FUNCTION]' when the playlist is not sorted by using the SORT:etc method; I was sorting by the Columns UI column titles.
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-07 20:32:26
Minor feature request: auto reseting sorting context menu; from what I can tell, reseting only resets the context menu and the values of $sorted(field), and it's inconvenient to have to check too see if the field that I want to sort by now has already been used.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-12-07 20:41:59
Terrestrial: Did you just add that awesome function for rotation since my request? That's so incredibly awesome.


you caught me at a good time and it only took about three lines to add


So how can I set spaces at the beginning of a code line now? ' ' doesn't work as well as $char(32).


Code: [Select]
test
'     'test
test


probably because of the '#'
Trackinfo mod has weird issues with #


yep. anything with # won't work in buttons.

Small feature request: Could you perhaps make a checkbox or something to use system default background color (depending on msstyle) instead of custom. That would be awesome.


Code: [Select]
$drawrect(0,0,%_width%,%_height%,pencolor-null brushcolor-SYSCOL-15)


I think 15 is correct, but you may have to try different ones.

Minor feature request: auto reseting sorting context menu; from what I can tell, reseting only resets the context menu and the values of $sorted(field), and it's inconvenient to have to check too see if the field that I want to sort by now has already been used.


sorry, I don't quite understand....
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-12-07 20:49:10

Small feature request: Could you perhaps make a checkbox or something to use system default background color (depending on msstyle) instead of custom. That would be awesome.


Code: [Select]
$drawrect(0,0,%_width%,%_height%,pencolor-null brushcolor-SYSCOL-15)


I think 15 is correct, but you may have to try different ones.

Thanks. Code is just as good.
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-07 21:26:58

Minor feature request: auto reseting sorting context menu; from what I can tell, reseting only resets the context menu and the values of $sorted(field), and it's inconvenient to have to check too see if the field that I want to sort by now has already been used.


sorry, I don't quite understand....


When you click on the button and the sorting context menu comes up, one choice in the context menu is "Reset", which resets the $sorted(field) values and brings back all of the original choices of fields to sort by (when you sort by artist, it goes away after).  Why couldn't you have all of the choices (eg Artist, Album,etc) remain in the context menu after sorting by them, and adjust the values of $sorted(field) with each sorting selection?

Also, the following would be nice:
1-Inline buttons
2-Right click, double click, and Click-and-drag (for seekbar among other things) for button commands
3-Minimum pannel width option
4-Command to switch between Now playing/Follow cursor mode that can be used as a button command
5-Function to calculate the of number of lines of text resulting from word wrapping of given text (helpful for adjusting display to match different sized fields)
6-Ability to use the standard functions in SORT (would like to sort by path, but %path% contains ':' which has a special meaning in SORT command, and causes it not to work
7-Ability to place pannels anywhere in info box, so they can be seemlessly and attractively incorporated into the info pannel
8-Ability to do both SORT and FILTER in the same button
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-12-07 21:51:00
Is there a way to add support for dynamical button position?

I want to make my progress clickable where the "already played area" acts as a seek back button and the other part, as a seek ahead button.

Right now, seek back button works, but not the other one. It seems to me the button width and height support dynamic values, but coordinates does not.

Here is my code:
Code: [Select]
$puts(pbarLength,996)
$puts(percentage,$muldiv(%_time_elapsed_seconds%,$get(pbarLength),%_time_total_seconds%))
$puts(pbarProgress,$muldiv($get(percent),1000,1000))

$button(15,3,0,0,$get(pbarProgress),3,,,'Seek back by 10 seconds',)
$button($get(pbarProgress),3,0,0,$sub($get(pbarLength),$get(pbarProgress)),3,,,'Seek ahead by 10 seconds',)
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-07 22:41:25
Is there a way to add support for dynamical button position?

I want to make my progress clickable where the "already played area" acts as a seek back button and the other part, as a seek ahead button.

Right now, seek back button works, but not the other one. It seems to me the button width and height support dynamic values, but coordinates does not.

Here is my code:
Code: [Select]
$puts(pbarLength,996)
$puts(percentage,$muldiv(%_time_elapsed_seconds%,$get(pbarLength),%_time_total_seconds%))
$puts(pbarProgress,$muldiv($get(percent),1000,1000))

$button(15,3,0,0,$get(pbarProgress),3,,,'Seek back by 10 seconds',)
$button($get(pbarProgress),3,0,0,$sub($get(pbarLength),$get(pbarProgress)),3,,,'Seek ahead by 10 seconds',)


In the meantime, you could put the seek ahead button underneath the seek back button, have the seek ahead button span the entire bar.
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-12-07 23:54:41
^
Haven't thought about that, thanks bro.

Edit: Although I'd still like to know if my request is feasible.
Title: Track Info Panel with ability to change font
Post by: spex04 on 2006-12-08 00:49:41

probably because of the '#'
Trackinfo mod has weird issues with #


yep. anything with # won't work in buttons.


Ah yea, I didn't realise about the #. Any chance of this being fixed in a future version, or not do-able?
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-12-08 08:45:38
Button bug: I have a large 300x300 button overlaying some artwork. The bug seems to be that when I open up the preferences foobar box if this box is over the button I can't click anything within it and the button essentially acts through it.
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-08 11:51:44
Button bug: I have a large 300x300 button overlaying some artwork. The bug seems to be that when I open up the preferences foobar box if this box is over the button I can't click anything within it and the button essentially acts through it.

Same here.  That could get REALY annoying if one had a lot of button area.
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2006-12-08 14:19:36
Feature Request  - TAG:APPEND

To add values to multi-value fields.
Title: Track Info Panel with ability to change font
Post by: rossbates on 2006-12-08 16:22:55
I'm testing a simple button\rating configuration using the following code:

Code: [Select]
//Global
$puts(rating,$if(%rating%,%rating%,0))

//PerTrack
$button(3,300,0,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating1.png,r1,)
$button(3,300,13,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating2.png,r2,)
$button(3,300,26,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating3.png,r3,)
$button(3,300,39,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating4.png,r4,)
$button(3,300,52,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating5.png,r5,)


The problem is that the code never gets loaded when I open foobar and start playing a track. The only
way to get it to work is to go into my trackinfo settings and click "ok". From there on out everything
works fine.

Is there something I'm missing to get trackinfo to load my script when foobar fires up?

Thanks for any tips!
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-12-08 16:35:29
When you click on the button and the sorting context menu comes up, one choice in the context menu is "Reset", which resets the $sorted(field) values and brings back all of the original choices of fields to sort by (when you sort by artist, it goes away after).  Why couldn't you have all of the choices (eg Artist, Album,etc) remain in the context menu after sorting by them, and adjust the values of $sorted(field) with each sorting selection?


why would you need the choices after you've used it? eg you can's sort by "artist" twice. There's another way you can sort which may be what you're after.

Code: [Select]
$button2(2,8,0,0,18,24,'$font(Wingdings 3,12,,0-0-0)u','$font(Wingdings 3,12,,255-0-0)u','FILTER:source|!source!',)

$if($filtered(genre),
$alignabs(20,2,40,16,left,top)$font(calibri,9,underline,0-0-0)genre
$alignabs(20,16,40,16,left,top)$font(,,,)$filtered(genre)
,
$button2(20,2,0,0,40,16,'$font(calibri,9,,0-0-0)genre','$font(calibri,9,,255-0-0)genre','FILTER:genre|%genre%',)
)

$if($sorted(album),
$button2(62,4,0,0,20,16,'$font(Wingdings 3,9,,255-0-0)q$font(calibri,9,,255-0-0)$sorted(album)','$font(Wingdings 3,9,,0-0-0)q$font(calibri,9,,255-0-0)$sorted(album)','SORT:album|%album%',)
,
$button2(62,4,0,0,20,16,'$font(Wingdings 3,9,,0-0-0)q','$font(Wingdings 3,9,,255-0-0)q','SORT:album|%album%',)
)


$if($filtered(decade),
$alignabs(86,2,40,16,left,top)$font(calibri,9,underline,0-0-0)decade
$alignabs(86,16,40,16,left,top)$font(,,,)$filtered(decade)
,
$button2(86,2,0,0,40,16,'$font(calibri,9,,0-0-0)decade','$font(calibri,9,,255-0-0)decade','FILTER:decade|$mul($div(%date%,10),10)',)
)

$if($sorted(date),
$button2(128,4,0,0,20,16,'$font(Wingdings 3,9,,255-0-0)q$font(calibri,9,,255-0-0)$sorted(date)','$font(Wingdings 3,9,,0-0-0)q$font(calibri,9,,255-0-0)$sorted(date)','SORT:date|%date%',)
,
$button2(128,4,0,0,20,16,'$font(Wingdings 3,9,,0-0-0)q','$font(Wingdings 3,9,,255-0-0)q','SORT:date|%date%',)
)


$if($filtered(composer),
$alignabs(152,2,50,16,left,top)$font(calibri,9,underline,0-0-0)composer
$alignabs(152,16,50,16,left,top)$font(,,,)$filtered(composer)
,
$button2(152,2,0,0,50,16,'$font(calibri,9,,0-0-0)composer','$font(calibri,9,,255-0-0)composer','FILTER:composer|%composer%',)
)

$if($sorted(composer),
$button2(204,4,0,0,20,16,'$font(Wingdings 3,9,,255-0-0)q$font(calibri,9,,255-0-0)$sorted(composer)','$font(Wingdings 3,9,,0-0-0)q$font(calibri,9,,255-0-0)$sorted(composer)','SORT:composer|%composer%',)
,
$button2(204,4,0,0,20,16,'$font(Wingdings 3,9,,0-0-0)q','$font(Wingdings 3,9,,255-0-0)q','SORT:composer|%composer%',)
)


Quote
5-Function to calculate the of number of lines of text resulting from word wrapping of given text (helpful for adjusting display to match different sized fields)


you can use $calcheight then divide by the font size.

Is there a way to add support for dynamical button position?

I want to make my progress clickable where the "already played area" acts as a seek back button and the other part, as a seek ahead button.

Right now, seek back button works, but not the other one. It seems to me the button width and height support dynamic values, but coordinates does not.

Here is my code:
Code: [Select]
$puts(pbarLength,996)
$puts(percentage,$muldiv(%_time_elapsed_seconds%,$get(pbarLength),%_time_total_seconds%))
$puts(pbarProgress,$muldiv($get(percent),1000,1000))

$button(15,3,0,0,$get(pbarProgress),3,,,'Seek back by 10 seconds',)
$button($get(pbarProgress),3,0,0,$sub($get(pbarLength),$get(pbarProgress)),3,,,'Seek ahead by 10 seconds',)


buttons have to be // PerTrack so you can't have buttons depend of // PerSecond variables. I will try to add button support to the // PerSecond section for the next version.

Ah yea, I didn't realise about the #. Any chance of this being fixed in a future version, or not do-able?


yes, eventually.

Button bug: I have a large 300x300 button overlaying some artwork. The bug seems to be that when I open up the preferences foobar box if this box is over the button I can't click anything within it and the button essentially acts through it.


the preferences buttons don't work or the trackinfo buttons?

I'm testing a simple button\rating configuration using the following code:

Code: [Select]
//Global
$puts(rating,$if(%rating%,%rating%,0))

//PerTrack
$button(3,300,0,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating1.png,r1,)
$button(3,300,13,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating2.png,r2,)
$button(3,300,26,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating3.png,r3,)
$button(3,300,39,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating4.png,r4,)
$button(3,300,52,0,13,13,images\trackinfo\rating$get(rating).png,images\trackinfo\rating5.png,r5,)


The problem is that the code never gets loaded when I open foobar and start playing a track. The only
way to get it to work is to go into my trackinfo settings and click "ok". From there on out everything
works fine.

Is there something I'm missing to get trackinfo to load my script when foobar fires up?

Thanks for any tips!


for relative paths start with a "/" character... eg "/images\trackinfo\rating$get(rating).png", etc.
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-08 17:22:27
Quote
you can use $calcheight then divide by the font size.

That's the first thing I tried, but $calcheight only calculates the height before word wrapping; wrapped text still returns only the height of the individual letters.

Quote
the preferences buttons don't work or the trackinfo buttons?

The bug is that buttons are overlayed over the preferences window, so that you can accidentally activate the info pannel button when clicking on the preferences window.
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-12-08 17:27:59
This also renders that area on the preferences dialogue unusable.
Title: Track Info Panel with ability to change font
Post by: CepiPerez on 2006-12-08 18:16:20
The problem is that the code never gets loaded when I open foobar and start playing a track. The only
way to get it to work is to go into my trackinfo settings and click "ok". From there on out everything
works fine.

Is there something I'm missing to get trackinfo to load my script when foobar fires up?

Thanks for any tips!


I've experienced the same problem before, when I changed from foobar 0.9.3 to 0.9.4.1.
Try to remove your foobar shortcuts and create new ones. It works for me.
Title: Track Info Panel with ability to change font
Post by: rossbates on 2006-12-08 19:47:46

The problem is that the code never gets loaded when I open foobar and start playing a track. The only
way to get it to work is to go into my trackinfo settings and click "ok". From there on out everything
works fine.

Is there something I'm missing to get trackinfo to load my script when foobar fires up?

Thanks for any tips!


I've experienced the same problem before, when I changed from foobar 0.9.3 to 0.9.4.1.
Try to remove your foobar shortcuts and create new ones. It works for me.



Thanks for the responses. Turns out it was the relative paths in the button image parameters as terrestrial suggested. Works great now.

Thanks again!
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-09 21:03:00
It seems that there are a variety of issues regarding the refresing of the display.  In that light, it would be handy to have a command to refresh the display that can be executed through either a button or a keyboad shortcut.

This is a great plugin that completely revolutionizes what a Foobar setup can be and opens up the door to almost limitless customization.  I can't wait till I have the time to really get into it and put together a nice setup! 
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-12-10 18:10:50
I haven't been following the button/button2 functions too close. My question... Is it possible to have a toggle display? For example if I want to toggle %playback_time% and  %playback_time_remaining% in the same place with a left mouseclick, is that possible? I hope it's understandable what I mean.
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-10 20:17:12
I haven't been following the button/button2 functions too close. My question... Is it possible to have a toggle display? For example if I want to toggle %playback_time% and  %playback_time_remaining% in the same place with a left mouseclick, is that possible? I hope it's understandable what I mean.

You could certainly have the regular text and mousover text be different, but as far as I know, only SORT, FILTER, and Main and Context menu commands are possible with left clicking on buttons.  I actually tried for you using a function that changes the value of a variable, which would in turn effect the text displayed, but to no avail.

So no, I'm pretty sure there is currently no way to do that.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2006-12-10 21:21:34

I haven't been following the button/button2 functions too close. My question... Is it possible to have a toggle display? For example if I want to toggle %playback_time% and  %playback_time_remaining% in the same place with a left mouseclick, is that possible? I hope it's understandable what I mean.

You could certainly have the regular text and mousover text be different, but as far as I know, only SORT, FILTER, and Main and Context menu commands are possible with left clicking on buttons.  I actually tried for you using a function that changes the value of a variable, which would in turn effect the text displayed, but to no avail.

So no, I'm pretty sure there is currently no way to do that.

EDIT: Never mind. Doesn't work with // PerSecond anyway.
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-12-11 02:48:03
I am trying to get the rotate flip working...
$imageabs2(100,100,,,,,0,200,C:\Documents and Settings\xxxx\Application Data\foobar2000\data\misc images\nocover.png,NOKEEPASPECT,rotateflip-2)

but it just makes the image dissapear - any idea what i am doing wrong?
Title: Track Info Panel with ability to change font
Post by: CepiPerez on 2006-12-11 02:50:33
I am trying to get the rotate flip working...
$imageabs2(100,100,,,,,0,200,C:\Documents and Settings\xxxx\Application Data\foobar2000\data\misc images\nocover.png,NOKEEPASPECT,rotateflip-2)

but it just makes the image dissapear - any idea what i am doing wrong?


The problem is the "," character in the image options.
Try this:

$imageabs2(100,100,,,,,0,200,C:\Documents and Settings\xxxx\Application Data\foobar2000\data\misc images\nocover.png,NOKEEPASPECT rotateflip-2)
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-12-11 02:55:53
thats awesome thanks - now my only other question is how do i make it so I flip the image horizontally and rotate it 180 degrees..

basically I am trying to make a mirror image below so that I can then add a fade out overlay like in itunes v7.0 should be a cool effect... also any idea when this feature will be added into single columns... I dont really use track info as scl caters for all of my needs...

ok so I worked out that rotateflip-6 is what I want... now to make an image overlay that fadetransparently to alpha 0 + but also makes the lower album cover go transparent..

any one have any ideas..

or better yet can I add an alpha channel overlay to an image?
Title: Track Info Panel with ability to change font
Post by: CepiPerez on 2006-12-11 03:01:25
4nt1:
You can make a transparent gradient PNG file like some people do. And put this image over the cover.
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-12-11 03:23:00
thats fine but it doesn't blend into my original bg - ie my alpha chanel is transparent to white - blended - but my bg isnt white its textured...

anyway to blend any image based on an overlay alpha chanel image...

see below

(http://www.chriscombe.com/pics/overlay.png)
Title: Track Info Panel with ability to change font
Post by: Purple Monkey on 2006-12-11 12:30:19
Use the texture that the image is over instead of white, so it looks transparent even thought its not.
Title: Track Info Panel with ability to change font
Post by: Betse on 2006-12-11 13:46:41
I'm trying to get some buttons in my trackinfo mod. But i have a hard time using the $font statement. It fucks the $button2 tag.
For example i used the example from the wiki and a simple play button:
Code: [Select]
$button2(0,0,0,0,30,13,$font(tahoma,8,,0-0-0)Forward,$font(tahoma,8,underline,0-0-0)Forward,'Seek ahead by 10 seconds',)

$button2(20,50,0,0,50,50,Play,Play,Play,)

It generates:
(http://betse.no-ip.org/list/track_font.jpg)
The play button works, the seek ahead doesn't

What am i doing wrong?
Title: Track Info Panel with ability to change font
Post by: Betse on 2006-12-11 15:11:14
Is there a way to add support for dynamical button position?

I want to make my progress clickable where the "already played area" acts as a seek back button and the other part, as a seek ahead button.

Right now, seek back button works, but not the other one. It seems to me the button width and height support dynamic values, but coordinates does not.

Here is my code:
Code: [Select]
$puts(pbarLength,996)
$puts(percentage,$muldiv(%_time_elapsed_seconds%,$get(pbarLength),%_time_total_seconds%))
$puts(pbarProgress,$muldiv($get(percent),1000,1000))

$button(15,3,0,0,$get(pbarProgress),3,,,'Seek back by 10 seconds',)
$button($get(pbarProgress),3,0,0,$sub($get(pbarLength),$get(pbarProgress)),3,,,'Seek ahead by 10 seconds',)
i got the seek ahead button to work. But i don't seem to get the dynamic seek back button to work.
I have problems getting buttons to work under // PerSecond, which is needed with the dynamic button. Did you find a solution?
Title: Track Info Panel with ability to change font
Post by: eisteh on 2006-12-11 15:17:00
I'm trying to get some buttons in my trackinfo mod. But i have a hard time using the $font statement. It fucks the $button2 tag.
For example i used the example from the wiki and a simple play button:
Code: [Select]
$button2(0,0,0,0,30,13,$font(tahoma,8,,0-0-0)Forward,$font(tahoma,8,underline,0-0-0)Forward,'Seek ahead by 10 seconds',)

$button2(20,50,0,0,50,50,Play,Play,Play,)

It generates:
(http://betse.no-ip.org/list/track_font.jpg)
The play button works, the seek ahead doesn't

What am i doing wrong?


Try $button2(0,0,0,0,30,13,'$font(tahoma,8,,0-0-0)Forward','$font(tahoma,8,underline,0-0-0)Forward',Seek ahead by 10 seconds,) instead missed the 's


EDIT: Lol, i didn't see your last post..
Buttons won't work in // PerSecond for now.
Terrestrial might enable PerSecond buttons in the next version
Title: Track Info Panel with ability to change font
Post by: Betse on 2006-12-11 16:43:16
Thanks for that

It seems that trying to show a tab with a track info mod button: Album list or ProjectM sometimes open up a new instance of Album list or ProjectM.
The names are right, and they worked like they should.

Anyone else has had this problem?
Title: Track Info Panel with ability to change font
Post by: powernemo on 2006-12-11 19:23:40
Hi folks, sorry for posting here too but after using // PerTRack and // PerSecond to refresh my progress bar my panel got messed up as you can see here:

   
Title: Track Info Panel with ability to change font
Post by: eisteh on 2006-12-11 22:12:20
You have only used normal align like top,left,middle..

To avoid this overwriting, try alignabs. Alignrel might work, too, I don't know.

Quote
//---------------------------// <---------(THIS PART SHIFTS ON TOP)
$alignrel(left,middle)


Jap, added it, works 

(http://img523.imageshack.us/img523/150/ssszh1.png) (http://imageshack.us)
Title: Track Info Panel with ability to change font
Post by: powernemo on 2006-12-12 17:15:10
Thanks for your reply, i know it's a wasting of resources but this is the only way i was able to make it work. I tried adding alignrel as you told but this does'nt work properly for me, cause when i shrink the Info Panel i got overlapping ... so i removed all the align and placed on top a // PerSecond

Code: [Select]
$if(%isplaying%,
// PerSecond
$rgb(0,0,128)Artist: $rgb()$rgb(0,255,255)%album artist%$char(10)$rgb()
$rgb(0,0,128)Album: $rgb()$rgb(0,255,255)%album%$char(10)$rgb()
$rgb(0,0,128)Title: $rgb()$rgb(0,255,255)%title%$char(10)$rgb()
$char(10)
//---------------------------// <---------(THIS PART SHIFTS ON TOP)
$rgb(0,0,128)Duration: $rgb(200,255,255)[%_time_elapsed%]$rgb() $rgb(0,0,128)/ $rgb()$rgb(0,255,255)%_length%$rgb()
//ADDITIONAL CODE FOR PROGRESS BAR//
$puts(progchar,|)
$puts(progfore,ffff00)
$puts(progback,ddffff)
$puts(proglength,85)
$char(10)
$get(head)$get(file)
$progress2(%_time_elapsed_seconds%,%_time_total_seconds%,$get(proglength),$get(progfore)$get(progchar),$get(progback)$get(progchar))$get(bright) $muldiv(%_time_elapsed_seconds%,100,%_time_total_seconds%)'%'
//END OF CODE
$char(10)
$char(10)
$rgb(0,0,128)Codec: $rgb()$rgb(0,255,255)%codec%$rgb()$char(10)
$rgb(0,0,128)Bitrate: $rgb()$rgb(200,255,255)%bitrate%$rgb()$rgb(0,255,255 ) kbps $rgb()$rgb(200,255,255)%codec_profile%  $char(10)$rgb()
$rgb(0,0,128)Filesize: $rgb()$rgb(200,255,255)$div(%_filesize%,1048576).$num($div($mul($mod(%_filesize%,1048576),100),1048576),2)$rgb()$rgb(0,255,255 ) MB $char(10) $rgb()
$rgb(0,0,128)Samplerate: $rgb()$rgb(200,255,255)%samplerate%$rgb()$rgb(0,255,255) Hz %channels% $char(10)$rgb()
$char(10)
$rgb(0,0,128)Played: $rgb()$rgb(200,255,255)%play_count%$rgb()$rgb(0,255,255) times $char(10)$rgb()

)
Title: Track Info Panel with ability to change font
Post by: eisteh on 2006-12-12 18:03:19
In your case it wont be such a big waste of ressources, as theres only a little bit of text uselessly rendered every second.

But if you want it make more resource friendly, check out alignabs at the Trackinfo Mod Wiki (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29#To_align_text_absolutely_.28with_no_checking_for_overwriting_text.29).
If you can't make it (or simply don't want to), perhaps I will try it.
Title: Track Info Panel with ability to change font
Post by: Der_Iltis on 2006-12-12 18:28:58
I Would like to use the Track Info Panel with the Spektrum Analyzer in the back of the shown track info instead of an picture file. Is this possible somehow?

Edit: How can I switch formatting to get something like this?

          Album
            Title
            ... (centered)


Bitrate (left)        (right) Sampling Rate
Codec (left)          (right) Size
Title: Track Info Panel with ability to change font
Post by: powernemo on 2006-12-12 18:54:05
In your case it wont be such a big waste of ressources, as theres only a little bit of text uselessly rendered every second.

But if you want it make more resource friendly, check out alignabs at the Trackinfo Mod Wiki (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29#To_align_text_absolutely_.28with_no_checking_for_overwriting_text.29).
If you can't make it (or simply don't want to), perhaps I will try it.



I've tried with alignabs... but i can't figure it, the main problem is that when i put // PerTrack in the title-artist-album section and then i add // PerSecond in the progressbar section the first section disappear, the way i did last time works fine but refreshing things every second a bit annoys me.

There's some correct order to put // PerSecond and //PerTrack? They are causing so much trouble to me
Title: Track Info Panel with ability to change font
Post by: eisteh on 2006-12-12 19:54:37
@powernemo: There isnt any special rule how they have to be sorted. You even can define every passage twice,trice, and so on.

p.ex:
// PerSecond
Some code
// PerTrack
...
// PerSecond
albumart
...

The code thats written last will be written on top, at least if you use alignabs.

EDIT:
If you want, post your faulty code in a codebox, I might take a look at it.
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-12 20:02:59
I Would like to use the Track Info Panel with the Spektrum Analyzer in the back of the shown track info instead of an picture file. Is this possible somehow?

Edit: How can I switch formatting to get something like this?

          Album
            Title
            ... (centered)


Bitrate (left)        (right) Sampling Rate
Codec (left)          (right) Size

I think the best way to do this is to put in the same text box everything that you want aligned to the left, and similarly with everything you want aligned in the center and to the right. 
If you want to allow for things to word wrap to multiple lines, you can do something like this:

Code: [Select]
$rgb(text color)Album:$char(10)
$rgb(background color)%album%$char(10)
$rgb(text color)Title:$char(10)
$rgb(background color)%title%

And then of course go back and add %album% and %title% center aligned.

Also, as far as I know, there is currently no way to place a pannel in the track info mod pannel, though I have requested that feature, so we'll see...
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-13 16:38:20
Can somebody tell me how to make those transparent png images that make the manel look 3D and shinny?
Title: Track Info Panel with ability to change font
Post by: powernemo on 2006-12-13 19:00:02
@eisteh: this is my code

Code: [Select]
$if(%isplaying%,
// PerTrack
$rgb(0,0,128)Artist: $rgb()$rgb(0,255,255)%album artist%$char(10)$rgb()
$rgb(0,0,128)Album: $rgb()$rgb(0,255,255)%album%$char(10)$rgb()
$rgb(0,0,128)Title: $rgb()$rgb(0,255,255)%title%$char(10)$rgb()
$char(10)
// PerSecond
//---------------------------// <---------(THIS PART SHIFTS ON TOP)
$rgb(0,0,128)Duration: $rgb(200,255,255)[%_time_elapsed%]$rgb() $rgb(0,0,128)/ $rgb()$rgb(0,255,255)%_length%$rgb()
//ADDITIONAL CODE FOR PROGRESS BAR//
$puts(progchar,|)
$puts(progfore,ffff00)
$puts(progback,ddffff)
$puts(proglength,85)
$char(10)
$get(head)$get(file)
$progress2(%_time_elapsed_seconds%,%_time_total_seconds%,$get(proglength),$get(progfore)$get(progchar),$get(progback)$get(progchar))$get(bright) $muldiv(%_time_elapsed_seconds%,100,%_time_total_seconds%)'%'
//END OF CODE
$char(10)
$char(10)
$rgb(0,0,128)Codec: $rgb()$rgb(0,255,255)%codec%$rgb()$char(10)
$rgb(0,0,128)Bitrate: $rgb()$rgb(200,255,255)%bitrate%$rgb()$rgb(0,255,255 ) kbps $rgb()$rgb(200,255,255)%codec_profile%  $char(10)$rgb()
$rgb(0,0,128)Filesize: $rgb()$rgb(200,255,255)$div(%_filesize%,1048576).$num($div($mul($mod(%_filesize%,1048576),100),1048576),2)$rgb()$rgb(0,255,255 ) MB $char(10) $rgb()
$rgb(0,0,128)Samplerate: $rgb()$rgb(200,255,255)%samplerate%$rgb()$rgb(0,255,255) Hz %channels% $char(10)$rgb()
$char(10)
$rgb(0,0,128)Played: $rgb()$rgb(200,255,255)%play_count%$rgb()$rgb(0,255,255) times $char(10)$rgb()

)


- moving //PerSecond on the bottom in the current position prevent the upper lines from being displayed
- adding // PerTrack does'nt solve this problem, i've tried with several alignabs but i can't figure how to make it works
- the if(x,y) statement it's now ignored, when there's no track selected or i'm not in playback the various TAGs are displayed as ' ? '
- i cannot figure a way to select a bunch of tracks (also during the playback) and to display in the Info Panel the properties as the total lengt, the total filesize or the average bitrate (this feature appeared by default on Foobar0.8 in the statusbar)

thanks for your precious help



@eboomer: Open Photoshop:

- Create a new image
- In the Layer Palette be sure that the Layer is named everything but Background else you must double click it and it will turn into Layer 1 (this will prevent you to have a background layer)
- Press G to activate the Gradient tool (if the buckett tool instead is active as is by default press Shift+ G)
- On the top toolbox choose a gradient from white (or every color you like) to transparent from the dropdown list, there's already one made by default (it should be the second one)
- You can edit the gradients clicking directly on the swatch that appears on the toolbox
- Draw your gradient in the canvas
- Save as PNG enabling transparency

hope this is what you asked 
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-13 22:48:23
@eboomer: Open Photoshop:

Thanks for the tip.  Unfortunately I don't already have Photoshop, and it seems that it costs about $100 - not worth it to me just for this.  Does anybody know of free (or pretty cheap) software that  can acheive the same thing (creating the transparent png gradients)?
Title: Track Info Panel with ability to change font
Post by: Spirit_of_the_ocean on 2006-12-13 23:21:58
Use Paint.net 
I think it will do his job, although I haven't tried what you want.


Transparency is quite easy to use:
open an picture an than go to the layers window go  to properties and then put the opacity where you want it.

For 3D try to use some tools and maybe you can find out on hp of paint.net how it works
Title: Track Info Panel with ability to change font
Post by: Hakubo on 2006-12-14 00:22:48
www.gimp.org
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-12-14 02:14:30
Please, terrestrial or anybody else, I'm looking for some clarification... I'm a bit confused right now. 

Code: [Select]
$imageabs(,,images\art.png,)

It will seek for art.png in X:\%foobar_profile_directory%\images\art.png.

Code: [Select]
$imageabs2(,,,,,,,,images\art.png,)

It will seek for art.png in X:\%foobar_install_directory%\images\art.png.

Code: [Select]
$imageabs2(,,,,,,,,/images\art.png,)

It will also seek for art.png in X:\%foobar_install_directory%\images\art.png.
Why the slash if it has the same behavior without it?

Code: [Select]
$imageabs2(,,,,,,,,X:\some_dir\art.png,)

It will seek for art.png in X:\some_dir\art.png.
but
Code: [Select]
$puts(dir,'X:\some_dir\)
$imageabs2(,,,,,,,,$get(dir)art.png',)

won't work, with or without the quotemarks. Is this a bug ? Because it works fine with button() or in SCP.

I had this idea.. Maybe you could had an option in the config window to specify the default image folder? All fonctions would point in this directory unless something different is specified. That would eliminate the ambiguities mentionned above. Just a suggestion

Thanks

EDIT: Nevermind about the slash. It fixes a problem I reported a couple of weeks ago.
Title: Track Info Panel with ability to change font
Post by: CepiPerez on 2006-12-14 02:48:53
Quote
Code: [Select]
$puts(dir,'X:\some_dir\)
$imageabs2(,,,,,,,,$get(dir)art.png',)

won't work, with or without the quotemarks. Is this a bug ? Because it works fine with button() or in SCP.

I've tryed this:
Code: [Select]
$puts(dir,X:\some_dir\)
$imageabs2(,,,,,,,,$get(dir)art.png,)

And it works fine for me.
I'm using a code like this for my backgrounds.

By the way, if you don't use the "/" character in $imageabs2, it will seek in the install folder.
And if you use the "/" it will seek in the profile folder.
It was changed in the new version.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-12-14 02:56:54
- moving //PerSecond on the bottom in the current position prevent the upper lines from being displayed
- adding // PerTrack does'nt solve this problem, i've tried with several alignabs but i can't figure how to make it works
- the if(x,y) statement it's now ignored, when there's no track selected or i'm not in playback the various TAGs are displayed as ' ? '


the code in // PerSecond or // PerTrack section has to work independently. So you can't do this:

Code: [Select]
// PerTrack

$if(%isplaying%,
// PerSecond
    %playback_time%,
// PerTrack
    Not Playing
)


because it becomes

Code: [Select]
// PerTrack

$if(%isplaying%,
    Not Playing
)

// PerSecond
    %playback_time%


so you need to do something like:

Code: [Select]
// PerSecond
$if(%isplaying%,
// draw progress bar using $alignabs
)

// PerTrack
$if(%isplaying%,
...
)


although since you're just using text, it shouldn't really make a big difference if you just make everything persecond.

Code: [Select]
$imageabs(,,images\art.png,)

It will seek for art.png in X:\%foobar_profile_directory%\images\art.png.


yep.

Quote
Code: [Select]
$imageabs2(,,,,,,,,images\art.png,)

It will seek for art.png in X:\%foobar_install_directory%\images\art.png.


not quite... the path (images\art.png) is unaltered, and how it is interpreted is determined by windows (which uses the "working directory" as the base). The working directory is the foobar install directory if you run foobar from a shortcut, or launch it directly, but if foobar starts from you clicking an associate file (eg .mp3), then the working directory is the directory where the mp3 resides. I wouldn't recommend using this.

Quote
Code: [Select]
$imageabs2(,,,,,,,,/images\art.png,)

It will also seek for art.png in X:\%foobar_install_directory%\images\art.png.


yep. the path (/images\art.png) will be altered to %foobar_install_directory%\images\art.png.

Quote
Code: [Select]
$imageabs2(,,,,,,,,X:\some_dir\art.png,)

It will seek for art.png in X:\some_dir\art.png.
but
Code: [Select]
$puts(dir,'X:\some_dir\)
$imageabs2(,,,,,,,,$get(dir)art.png',)

won't work, with or without the quotemarks. Is this a bug ? Because it works fine with button() or in SCP.


looks like you're missing a couple of quotes
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-12-14 03:27:58
Thanks for fast responses guys. I found the problem... I forgot about the // Global section thing... 
Title: Track Info Panel with ability to change font
Post by: powernemo on 2006-12-14 10:27:26
Thanx terrestrial, i'll recode it! 
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-12-14 14:16:09
I've noticed a weird behaviour with buttons. I have one large album art image which I use as a big button to pause or play music. In the top left of this album art I place a picture of the artist, when this image is not available I display a no artist image and make the region a button to download the latest image.

If I place this button code below the album art button code it does not work, clicking the artist area pauses the track as the larger button seems to be overlaying the smaller one. However, if I place the button code for the image artist download BEFORE the large button code then it works just fine. Surely, by placing code beneath the album art section it should render later and should thus be on top and not visa versa?

I hope this is clear: basically:

button code 1
button code 2

If these overlap button code 1 executes instead of 2.
Title: Track Info Panel with ability to change font
Post by: FofR on 2006-12-14 15:34:38
Here's a long shot: any chance of getting animated gifs working? They'd be very sexy for button overlays and other features.
Title: Track Info Panel with ability to change font
Post by: loft on 2006-12-14 22:24:39
One question: can it load fonts from foobar's difectory, fonts not installed in Windows?
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-12-14 23:17:37
highly doubt it
Title: Track Info Panel with ability to change font
Post by: blankfaze on 2006-12-15 01:35:42
forgive my insolence and all but I am just starting out tinkering with this.  I like.

when trying to align anything though, $alignrel or $alignabs both seem to render TOP and CENTER as the same thing... TOP.  BOTTOM puts stuff to the bottom... but CENTER just goes to TOP.  Anyone else seen this or am I a crazy person?
Title: Track Info Panel with ability to change font
Post by: CepiPerez on 2006-12-15 02:52:14
forgive my insolence and all but I am just starting out tinkering with this.  I like.

when trying to align anything though, $alignrel or $alignabs both seem to render TOP and CENTER as the same thing... TOP.  BOTTOM puts stuff to the bottom... but CENTER just goes to TOP.  Anyone else seen this or am I a crazy person?


CENTER is for horizontal. MIDDLE is for vertical. Check it.
Title: Track Info Panel with ability to change font
Post by: blankfaze on 2006-12-15 05:57:07
CENTER is for horizontal. MIDDLE is for vertical. Check it.


Oh my god.  I'm retarded.


Ok... now I'm sure I'm just insolent... but say I position something with $align or $alignrel ... and I would like it to be just a few pixels lower than where it shows up... is there anything at all to accomplish that easy?  I wish i could use CSS here lol... margin-top
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-12-15 06:21:26
You could use $alignabs(X,Y,width,height,H,V) and play with the ordinate value to specify the exact position where you want your text to be. Where H can be left,center or right and V, top, middle or bottom.

I don't know if you noticed, but you have answers to those questions you asked in the wiki for this component. Just a thought.
Title: Track Info Panel with ability to change font
Post by: blankfaze on 2006-12-15 06:32:04
You could use $alignabs(X,Y,width,height,H,V) and play with the ordinate value to specify the exact position where you want your text to be. Where H can be left,center or right and V, top, middle or bottom.

I don't know if you noticed, but you have answers to those questions you asked in the wiki for this component. Just a thought.


Yeah, I've read the wiki.  Not getting through to me, apparently... I've tried using alignabs, every combination I do just makes the content disappear...
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-12-15 07:29:38
One question: can it load fonts from foobar's difectory, fonts not installed in Windows?
The fonts can reside in any folder, but have to be installed.
Title: Track Info Panel with ability to change font
Post by: loft on 2006-12-15 08:10:16
So it cannot work with uninstalled fonts...
I guess that's more about Windows' API than foobar2000.
Title: Track Info Panel with ability to change font
Post by: Sam Stoat on 2006-12-15 19:48:09
I've got a slight problem when displaying jpegs resized with $imageabs2.  Some pictures are perfect, and others are slightly blurred, enough to make small writing unreadable or edges undefined.

I think the blurred pictures are jpegs saved using the 'progressive' option.  Would that be a fault in foo_uie_trackinfo, or does it use an external .dll which I might have a problem with?

Also, is there an option to resize small pictures to larger sizes?
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-12-15 22:26:49
is there a button command i can use to minimize foobar?
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-12-15 23:02:53
"Hide"
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-12-15 23:33:25
oh duh, thanks
Title: Track Info Panel with ability to change font
Post by: umrk on 2006-12-16 07:08:32
I've got a slight problem when displaying jpegs resized with $imageabs2.  Some pictures are perfect, and others are slightly blurred, enough to make small writing unreadable or edges undefined.

I think the blurred pictures are jpegs saved using the 'progressive' option. Would that be a fault in foo_uie_trackinfo, or does it use an external .dll which I might have a problem with?

I noticed the same problem, too.
However, it seems that the cause is not progressive jpeg format but an embedded thumbnail image.
Title: Track Info Panel with ability to change font
Post by: ANT on 2006-12-16 11:19:14
About fonts not installed : for the developper there is (was?) an easy way to use not installed fonts : it is an API called AddFontResource() I think. And you can load any font file.
If that can help...
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-12-16 14:46:13
When pressing "apply" in the trackinfo configuration editor window, the cursor always jumps the the first line. please fix this, this especially sucks when having lots of work and long code.

Another problem:

Code: [Select]
\\ Global
$puts(a, 5)

\\ PerTrack
Blah...

\\ PerSecond
$get(a)


a is undefined in the persecond section. Why? What does "global" mean then?
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-12-16 18:17:52
A massive cpu usage problem

I migrated a columns ui layout with 4 track info panels (2 track info, 2 track info mod) to another layout with only one track info mod panel.

The cpu consumption of fb2k increased from 5 to 70% (on playback), but for whatever reason, only on my notebook. On my other PC, which is slower than the notebook, it's still at 5%. In how far can my layout be machine dependent???

It's a lot of code and work in progress, but maybe someone has an idea...

Code: [Select]
deleted, as the code was not the cause of problems...


EDIT: Is this behaviour a bug? I found out, if I delete the complete "PerSeconds" section, cpu usage is still high. If I delete the "// PerSecond" statement then, CPU usage decreases from 70 down to 5%.

EDIT2: It's terrible. No additional code, just the single line "// PerSecond" causes my fb2k to use 70% cpu.

EDIT3: I installed a second fb2k instance on the same. No cpu wasting there. Hmm.
Title: Track Info Panel with ability to change font
Post by: parameter on 2006-12-17 06:03:25
Can someone tell me why images won't work? I have the proper PNG libraries, but I can't get ANY images to display. I have an image in C:\program files\foobar2000\icons named "asdf.png".

Quote
$imageabs(20,20,icons\asdf.png,)


That should display an image, correct? Because I'm not getting anything at all. Even if I restart foobar, there still nothing being displayed.
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-17 06:22:19
Can someone tell me why images won't work? I have the proper PNG libraries, but I can't get ANY images to display. I have an image in C:\program files\foobar2000\icons named "asdf.png".

Quote
$imageabs(20,20,icons\asdf.png,)


That should display an image, correct? Because I'm not getting anything at all. Even if I restart foobar, there still nothing being displayed.


The directory name of the $imageabs function is with respect to the Profile directory, located at C:\Documents and Settings\USERNAME\Application Data\foobar2000\, as expained on the wiki, http://wiki.hydrogenaudio.org/index.php?ti..._trackinfo_mod) (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Track_Info_Panel_Mod_(foo_uie_trackinfo_mod)), which is linked on the first page of this topic.  Although it's a little more complicated, you could use the $imageabs2 function.
Title: Track Info Panel with ability to change font
Post by: eisteh on 2006-12-17 09:06:21
If you have one profile for all user accounts, then you code should work. Otherwise, eboomer has explained it very well

Drop the images in the profile folder if you don't want to touch the more complicated $imgabs2().
Title: Track Info Panel with ability to change font
Post by: Sam Stoat on 2006-12-17 13:14:09
I'd be surprised if this hasn't been suggested before, but I'd like to see some script control commands, along the lines of Sinclair BASIC to keep it nice and simple, but handy to speed up code execution and make it easier to code.  We already have IF..THEN..ELSE, so I'd like to see:

GOTO - Used to jump to another piece of code. $goto(ARTIST INFO) could be used to jump forwards to a comment line containing '// ARTIST INFO'.

GO SUB..RETURN - Used to execute a sub routine, returning after finished.  $gosub(ARTIST INFO) would jump to the same comment line as above, but at the end of that piece of code would be $return() to jump back to the $gosub command and continue from there.

END - Used to terminate code execution and tell foobar to go do something else (can't remember if this was in Sinclair BASIC).  $end() could be used for this.  Useful to store your subroutines after this so they don't get executed when they shouldn't.

FOR..NEXT - Creates a loop where a variable is incremented on each loop between two set values.  $for(count,1,10) could create a loop that would be executed 10 times, each time the value of 'count' increasing by one.  $get(count) would be used as normal to get the value.  $next(count) would be at the end of the code, telling foobar to repeat the loop.  A fourth parameter could be used to set the increment, so $for(count,2,10,2) would increment by 2, giving 5 loops where count would equal 2, 4, 6, 8 and 10.

Just an idea.  I'm sure it would make code execution a little faster, skipping large amounts of code or making massive $if commands a thing of the past.  The for next loop would be great for stepping through $meta variables one by one, without having to repeat the code for every instance.
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-12-17 13:56:25
I'm getting confused with all the alignment stuff cause I'm pretty new to all the fancy trackinfo mod functions. Whats the best way (least code!) to prevent wrapping?

I have a panel, the center part of it is reserved for three lines (Ensemble/Conductor, Title, Album/Work). The bounding rectangle is done with alignabs(). Problem: If the title line is too long, Album/Work will not show up, because the title wraps.

How would you resolve this if the horizontal alignment is "center"? Split the bounding rectangle to 3 rectangles with alignabs() and checking for the text width? Or is there a better possibility?

TIA
Title: Track Info Panel with ability to change font
Post by: mazy on 2006-12-17 16:25:54
Squeller, you simply have to make the bounding box big enough (it can have negative x-pos or width exceeding the panel's width). you could then use semitransparent png with gradient to visually 'fade out' the parts of the string which could get into the rest of your design.

edit: i uploaded screenshot of my old trackinfo panel for sort of 'from the sofa visible track info panel' which i have as collapsed docking panel on side of my foobar. you can notice that the first line is longer that the available space and that i fade it out (using transparent png). in your case of centrally aligned text you of course have to make it overlap both sides by the same length.

(http://mazy.johanka.cz/my_pics/temp/foobar/foobar-mazy-infopanel_1.png)
Title: Track Info Panel with ability to change font
Post by: SD14 on 2006-12-17 17:28:59
i need some help here, ok i installed the newest version of trackinfo mod and my progress bar and time didnt  work right here is my code for them:

time elapsed
%code%
$padding(0,11)
$align(left,bottom)
$font(Calibri,9,glow- glowexpand-0 glowalpha-125,180-184-194)
[%_time_elapsed%]
%/code%


progressbar
<%ode%
$padding(0,8)
$align(center,bottom)
$drawrect($muldiv(%_width%,8,100),4,$muldiv(%_width%,81,100),9,brushcolor-null pencolor-180-184-194)
$drawrect($add($muldiv(%_width%,8,100),2),6,$ifgreater($muldiv($sub($muldiv(%_width%,81,100),4),%playback_time_seconds%,%length_seconds%),0,$muldiv($sub($muldiv(%_width%,78,100),4),%playback_time_seconds%,%length_seconds%),1),5,brushcolor-240-240-240 pencolor-null)
%/code%

can anyone help me
Title: Track Info Panel with ability to change font
Post by: fabiospark on 2006-12-17 17:41:17
I'm getting confused with all the alignment stuff cause I'm pretty new to all the fancy trackinfo mod functions. Whats the best way (least code!) to prevent wrapping?

I have a panel, the center part of it is reserved for three lines (Ensemble/Conductor, Title, Album/Work). The bounding rectangle is done with alignabs(). Problem: If the title line is too long, Album/Work will not show up, because the title wraps.

How would you resolve this if the horizontal alignment is "center"? Split the bounding rectangle to 3 rectangles with alignabs() and checking for the text width? Or is there a better possibility?

TIA


I don't know if you can disable the auto wrapping... if this is what you want and if you can stand the cutting.

I'm not a trackinfomod expert but I had to solve a similar problem.
My solution was:

Title:

as titles, usually are not endless, I used the auto font reduction code I found somewhere.
The max font size reduction I set is from 36 points down to 24


Performer:

with jazz, this field can become almost endless (think of a Basie or Goodman band) and, as I'm showing it in big letters,
it can take even more than ten lines if you don't want to reduce the font down to 10/12 points, so I set up a scrolling code that let me keep using a big font.

http://www.hydrogenaudio.org/forums/index....st&p=449186 (http://www.hydrogenaudio.org/forums/index.php?act=ST&f=33&t=47044&hl=&view=findpost&p=449186)

I had to use a trick so I don't know if it can work everywhere.
If you feel like giving it a try I'll be glad to post the code with some explanation.
Title: Track Info Panel with ability to change font
Post by: Spirit_of_the_ocean on 2006-12-17 18:07:59
The first question is where you put your code. Look at the wiki of track info mod. In the new version there were some changes. You must put time in the per second section.
Title: Track Info Panel with ability to change font
Post by: SD14 on 2006-12-17 19:44:38
ya i am still having troubles the %playback_time% doesnt update it every second it updates it like every 5 seconds, anyone know whats wrong?
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-12-17 21:29:41
ya i am still having troubles the %playback_time% doesnt update it every second it updates it like every 5 seconds, anyone know whats wrong?


Read the changelog and/or wiki for the redraw types
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2006-12-17 22:00:54
Is it possible to make the rating system like iTunes where there are blank stars for unrated tracks then you can click and rate within the info panel?
Title: Track Info Panel with ability to change font
Post by: $char(9836) on 2006-12-18 10:06:17
Is it possible to make the rating system like iTunes where there are blank stars for unrated tracks then you can click and rate within the info panel?

I'm pretty new to trackinfo mod and I know that there are many way better ways of doing this but if you put two imagefiles in your Images directory named greystar.png and yellowstar.png and then insert this code you should have something simular

Code: [Select]
$select(%rating%,
$puts(status1,yellow),
$puts(status1,yellow)$puts(status2,yellow),
$puts(status1,yellow)$puts(status2,yellow)$puts(status3,yellow),
$puts(status1,yellow)$puts(status2,yellow)$puts(status3,yellow)$puts(status4,yellow),
$puts(status1,yellow)$puts(status2,yellow)$puts(status3,yellow)$puts(status4,yellow)$puts(status5,yellow))

$button(5,HORISONTAL Position,0,0,0,0,Images\$if3($get(status1),grey)star.png,Images\yellowstar.png,TAG:SET:rating:1,)
$button(23,HORISONTAL Position,0,0,0,0,Images\$if3($get(status2),grey)star.png,Images\yellowstar.png,TAG:SET:rating:2,)
$button(41,HORISONTAL Position,0,0,0,0,Images\$if3($get(status3),grey)star.png,Images\yellowstar.png,TAG:SET:rating:3,)
$button(59,HORISONTAL Position,0,0,0,0,Images\$if3($get(status4),grey)star.png,Images\yellowstar.png,TAG:SET:rating:4,)
$button(77,HORISONTAL Position,0,0,0,0,Images\$if3($get(status5),grey)star.png,Images\yellowstar.png,TAG:SET:rating:5,)

and of course change the HORISONTAL Position to what suites you
Title: Track Info Panel with ability to change font
Post by: Yann on 2006-12-18 12:38:55
Why not show good some album art in this mod? Some covers show "pixelated" but the jpg is a big resolution... 

Example:

(http://img398.imageshack.us/img398/2807/image8rz4.th.jpg) (http://img398.imageshack.us/my.php?image=image8rz4.jpg)
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-12-18 13:41:18
in your case of centrally aligned text you of course have to make it overlap both sides by the same length.

Thx mazy. The "problem" is, if the line length exceeds the %_width%, I want to have it left aligned. OK, I think I'll have to handle the 2 cases with ifgreater...
Title: Track Info Panel with ability to change font
Post by: CepiPerez on 2006-12-19 01:51:18
Why not show good some album art in this mod? Some covers show "pixelated" but the jpg is a big resolution... 

Example:

(http://img398.imageshack.us/img398/2807/image8rz4.th.jpg) (http://img398.imageshack.us/my.php?image=image8rz4.jpg)


I have the same problem here.
That's something about the progresive option in JPEG formats (you can see it in Photoshop).
Title: Track Info Panel with ability to change font
Post by: rouge on 2006-12-19 09:52:28
Has anyone else noted a problem with the edit box in the settings window scroll all the way to the top when you click "apply?"  I'm fairly certain that it didn't behave this way before and it makes editing strings much more difficult.

This could be a incidental problem with Vista, but I don't immediately blame Microsoft for all of my problems.
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-12-19 10:15:06
Has anyone else noted a problem with the edit box in the settings window scroll all the way to the top when you click "apply?"
Yes. (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=47044&view=findpost&p=457671)
Title: Track Info Panel with ability to change font
Post by: rouge on 2006-12-19 10:43:22
Has anyone else noted a problem with the edit box in the settings window scroll all the way to the top when you click "apply?"
Yes. (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=47044&view=findpost&p=457671)


Oh, I guess I'm just a bit behind the times then. Spent the last two days trying to get AIW 9600 to work with Vista, which is only as hard as getting it to work with XP (very hard).

*pets the kitty*

edit: typo
Title: Track Info Panel with ability to change font
Post by: wrstarr on 2006-12-19 18:10:49
is there any way to make a button out of drawn rectangles?

specifically making a progress bar within foo_trackinfo_mod that is functional for scrolling through a song
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-12-20 00:57:21
is there any way to make a button out of drawn rectangles?

specifically making a progress bar within foo_trackinfo_mod that is functional for scrolling through a song


make the button image a transparent png and overlay it in the area
Title: Track Info Panel with ability to change font
Post by: eejadx on 2006-12-20 01:15:53
is there any way to make a button out of drawn rectangles?

specifically making a progress bar within foo_trackinfo_mod that is functional for scrolling through a song

This is what I use:
Code: [Select]
$puts(pbar_length,$sub(%_width%,31))
$puts(percent,$muldiv(%_time_elapsed_seconds%,$get(pbar_length),%_time_total_seconds%))
$puts(pbar_progress,$muldiv($get(percent),1000,1000))

$button(15,2,0,0,$get(pbar_progress),5,,,'Seek back by 10 seconds',)
$button(15,2,0,0,$get(pbar_length),5,,,'Seek ahead by 10 seconds',)

Buttons coordinates lead to where my progress bar is. The first button covers the already played area on the progress bar and the second one, the area left to play.

It does not work flawlessly though... Terrestrial said he might add "update PerSecond" support for buttons soon.
Title: Track Info Panel with ability to change font
Post by: 2Pacalypse on 2006-12-20 17:25:43
is there a way to display timestamped lyrics in a track info mod? I want to have lyrics over a background.

my lyrics are associated, but they are named the same as the mp3 filename with a lrc extention.
Title: Track Info Panel with ability to change font
Post by: $char(9836) on 2006-12-21 14:58:01
Hey is it "normal" that foobar completely stops up for about 20 seconds with some scripts in trackinfo_mod? I only get this problem when having a trackinfo_mod panel in my layout. I'm running on a 850 MHz AMD athlon with 256 MB ram
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-12-22 13:50:00
Noone having a CPU problem?

With a fullscreen panel and the only codeline: "// PerSecond" I'm having 75% CPU usage (most of the time) on my P3/800 Thinkbad notebook. With the same code, I have 5% on my P3/500 workstation. I can definitely say it's the Perseconds statement. Sometimes fb2k works fluently with Perseconds turned on, but most of the time it eats cpu. Could it be a graphics driver issue?
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-12-22 14:01:11
I want to underline Text with a progress bar made with drawrect(). The Problem: The texts position can vertically vary. So can I align rectangles relative to a peice of text? Thanks.

To describe what I mean. Basically I have:

Code: [Select]
$align(center,middle)
%artist%$char(10)
%title%$char(10)
...


Now I want to underline the %artist%. But it's vertical position varies depending on the line breaks.
Title: Track Info Panel with ability to change font
Post by: DeepDose on 2006-12-22 14:38:02
Squeller I can also confirm extremely high CPU usage with the //persecond line, everyone remember how in the old track info you had to keep the scroll steps to like 1 I think. Maybe it's something like that. I really don't know, maybe in the next update.
Title: Track Info Panel with ability to change font
Post by: Iodine_Galaxy on 2006-12-23 05:33:46
Dunno if it's Track Info Panel problem, but it doesn't show me bitrate dynamically. Instead it just shows first bitrate number. Strangely enough, bitrate number starts to change whenever i resize the area of track info panel.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-12-23 05:49:01
Iodine_Galaxy: Did you place your bitrate code beneath a // PerSecond header?
Title: Track Info Panel with ability to change font
Post by: Iodine_Galaxy on 2006-12-23 06:03:27
Iodine_Galaxy: Did you place your bitrate code beneath a // PerSecond header?
Code: [Select]
Mode: %_trackinfo_mode%$char(10)$char(10)$if(%_trackinfo_notrack%,No track,Artist: %artist%$char(10)Title: %title%$char(10)Album: %album%)$char(10)Bitrate: %bitrate% kbps)
Just added %bitrate% tag. Imma beginner in a foobar customization.
Damn, i feel stupid. Added // PerSecond header. Works like charm. Thanks. 
Title: Track Info Panel with ability to change font
Post by: eboomer on 2006-12-23 06:10:04
Is it possible to make the rating system like iTunes where there are blank stars for unrated tracks then you can click and rate within the info panel?

While there may be a more simple and straigt-forward way to do it, I managed to find a way for the ratings to work like Windows Media Player, where the hypothetical rating is displayed on mousover, and the actual rating is displayed without mousover.  It gets complicated the way I did it because the ordering of button command layers is the opposite of that for display (with button commands, the button at the top of the code is on top of all others; with button display, the button at the bottom of the code is displayed above all others, soo that what you see is not quite in synch with what you would expect to get).

This method basically splits into two parts: getting the pretty dynamic display, and getting the tagging functionality.

(http://img440.imageshack.us/img440/9415/starillustrationfz9.png)

First you make text buttons ($button2) with no text, only rating commands that cover the stars, so that clicking on any star will make the appropriate change in the %rating% field.

Then you make one button that covers all of  the stars plus a bit of area around it that has no command, but displays the actual rating on mousover and 'mousoff', as it were.  If this button is not large enough, then moving the mouse to fast off of the stars might cause strange rating displays for a little while.

Then you make buttons that stack on on top of the other to display the hypothetical mousover rating.  You want to stack them so that the fifth star is on top (last line of code), fourth star is beneath the fifth (code above that of the fifth), and so on.  You want the button of the first star to start on the first star and go to the last star.  The button for the second star then starts on the second star and spans the distance to the last star.  The third similarly starts on the third and ends on the last.  Each button should display a dark star when moused over, and else a dark star if the rating is greater than or equal to the number of the star, and a light star otherwise.
Title: Track Info Panel with ability to change font
Post by: alphaex32 on 2006-12-23 20:44:10
Here's the rating code that I've been using for a while. It works like WMP stars and is based on a scale of 1-10 so you can have half stars. I also made it so that you could change the size and position of the stars easily using variables:

Code: [Select]
//Start Variables
$puts(ratewidth,90)
$puts(xpos,15)
$puts(ypos,2)
$puts(imagedir,C:\Program Files\foobar2000\images\Ratings\)
//End Variables

$drawrect(,,,,brushcolor-SYSCOL-15 pencolor-null)
$puts(rating,$ifgreater(%RATING%,10,$puts(rate,$div($add(%RATING%,5),10)),$puts(rate,%RATING%)))
$imageabs2($get(ratewidth),$div($get(ratewidth),5),,,,,$get(xpos),$get(ypos),$get(imagedir)$if2(%rating%,0).png,alpha-95)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),9),0,$get(ratewidth),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'10.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'10.png,alpha-115)',TAG:SET:Rating:10,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),8),0,$mul($div($get(ratewidth),10),9),20,'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'9.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'9.png,alpha-115)',TAG:SET:Rating:9,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),7),0,$mul($div($get(ratewidth),10),8),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'8.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'8.png,alpha-115)',TAG:SET:Rating:8,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),6),0,$mul($div($get(ratewidth),10),7),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'7.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'7.png,alpha-115)',TAG:SET:Rating:7,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),5),0,$mul($div($get(ratewidth),10),6),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'6.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'6.png,alpha-115)',TAG:SET:Rating:6,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),4),0,$mul($div($get(ratewidth),10),5),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'5.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'5.png,alpha-115)',TAG:SET:Rating:5,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),3),0,$mul($div($get(ratewidth),10),4),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'4.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'4.png,alpha-115)',TAG:SET:Rating:4,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),2),0,$mul($div($get(ratewidth),10),3),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'3.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'3.png,alpha-115)',TAG:SET:Rating:3,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),1),0,$mul($div($get(ratewidth),10),2),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'2.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'2.png,alpha-115)',TAG:SET:Rating:2,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),0),0,$mul($div($get(ratewidth),10),1),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'1.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'1.png,alpha-115)',TAG:SET:Rating:1,)
$button2(0,0,0,0,$get(xpos),$div($get(ratewidth),5),,,TAG:SET:Rating:0,)

And use the images I uploaded here (make sure to set imagedir to wherever you extract them):
http://www.mytempdir.com/1131194 (http://www.mytempdir.com/1131194)

Now if only I could figure out how to get that tagging progressbar not to show up
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-12-25 06:27:22
I noticed the same problem, too.
However, it seems that the cause is not progressive jpeg format but an embedded thumbnail image.


It's nice when people find the problem, and then diagnose the cause also

I'd be surprised if this hasn't been suggested before, but I'd like to see some script control commands, along the lines of Sinclair BASIC to keep it nice and simple, but handy to speed up code execution and make it easier to code.  We already have IF..THEN..ELSE, so I'd like to see:


this would all need to be implemented by the general titleformat processor in the foobar core.

Noone having a CPU problem?

With a fullscreen panel and the only codeline: "// PerSecond" I'm having 75% CPU usage (most of the time) on my P3/800 Thinkbad notebook. With the same code, I have 5% on my P3/500 workstation. I can definitely say it's the Perseconds statement. Sometimes fb2k works fluently with Perseconds turned on, but most of the time it eats cpu. Could it be a graphics driver issue?


the only code you have is "// PerSecond" and nothing else and you get 75% cpu usage? It could be a driver issue, although I think you would notice a general sluggishness (especially when scrolling) in every other program as well. See what results you get when running this http://www.stereopsis.com/blttest/ (http://www.stereopsis.com/blttest/) benchmark.
Title: Track Info Panel with ability to change font
Post by: Squeller on 2006-12-26 12:23:47
the only code you have is "// PerSecond" and nothing else and you get 75% cpu usage? It could be a driver issue, although I think you would notice a general sluggishness (especially when scrolling) in every other program as well.
It definitily only happens with your plugin and "// PerSecond (PS)". I have no such problems since I turned of PS. Unfortunately it's kind of strange. If I add the PS to my configuration, fb2k may run fine at first, even with the PS layout loaded. But after using fb2k (may be because of changing layouts?) a couple of times, the cpu load increases and can only be decreased by removing the PS or change to another layout without PS.
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-12-27 02:08:30
Code: [Select]
$button2(0,20,0,0,25,25,$imageabs2(25,25,0,0,25,25,0,0,/images\gant\prev.png,),$imageabs2(25,25,0,0,25,25,0,0,/images\gant\prev.png,),previous,)


That won't work. It shows the image fine, but no matter what numbers I put in for the first two spots, the button is always placed at (0,0). Also, the button doesn't work when clicked on. Yes it is under PerTrack.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-12-27 02:51:23
Is there a reason you need the $imageabs2() functions? Have you tried without them? $button2() should handle .png without a problem.
Title: Track Info Panel with ability to change font
Post by: Nickoladze on 2006-12-27 03:02:32
Is there a reason you need the $imageabs2() functions? Have you tried without them? $button2() should handle .png without a problem.


yes, but then it wont resize the image

edit: oh well doesnt matter, i just resized them myself


but another question:

Right now I have some buttons to rate the currently playing song, is there a way to get the panel to reload when i rate a song so the new rating buttons will show up?

I think that's easy to understand
Title: Track Info Panel with ability to change font
Post by: ayana on 2006-12-27 09:10:06
terrestrial:
I think that you're coding to load images from file path with Gdiplus::Bitmap(pchar) now, but is there a plan to use Gdiplus::Bitmap(IStream) constructor? Then if so we get possible to use interface of archive or etc via filesystem::g_open().
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2006-12-28 16:02:12
I read earlier in this thread that a command exists to set line spacing, but it hasn't been published yet.  Well, could you tell me what it is?  I'd like to set a global linespacing so I don't have to use the #LINEHEIGHT# command after every line to space things out a bit.  This would be for all text under my $alignabs() setting for the bounding box.

Also, can someone be more clear how the $pad(X,Y) command works?  I can't get it to do anything useful.  Is this a per line setting?  Per section (like after an $alignabs() box)? Global value?
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-12-29 04:46:47
ok guys I have a problem - I want to display artist image in my track info.

I can do this if I hard code it.

The problem is - I want to pull the path of the cd/album and then go 1 oe 2 folders down back to the artist folder and display the artist image.

Dont know if that makes sense - basically I just want to have one copy of the artist image in the actual artist folder

eg
F:\music\_electro\Sneaky Sound System\Sneaky Sound System

my artist image is stored in

F:\music\_electro\Sneaky Sound System\Artist.jpg

I am currently using this to find/replace for my album art with great success.

$imageabs2(150,150,,,,,$sub(%_width%,150),0,$replace(%path%,%filename_ext%,Artist.*),NOKEEPASPECT)

This only displays the artists image if it is in the album folder itself.

Is there any way I can code it so that it checks the folder below the album folder & also if the folder below is CDX format then it goes one more folder down and then displays the artist.jpg if its present..

I hope all that makes sense

Appreciate your help
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-12-29 06:34:29
4nt1: try something like this:
Code: [Select]
$imageabs2(150,150,,,,,$sub(%_width%,150),0,
$replace(%path%,%directoryname%$char(92)%filename_ext%,Artist.*)
,NOKEEPASPECT)
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-12-29 07:33:31
thanks will try that - was thinking about that on the way to work in my car.

I did not know %directoryname% was a valid tag.
I have had some more ideas which I will try when I get home.
Thanks for the assitance, will let you know how I go.
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2006-12-29 13:19:20
Look here for tag reference -

http://wiki.hydrogenaudio.org/index.php?ti...ormat_Reference (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Titleformat_Reference)

You could also use -

$directory(x,n)
Extracts directory name from the file path x; goes up by n levels.

to go up multiple levels.
Title: Track Info Panel with ability to change font
Post by: 2Pacalypse on 2006-12-29 13:31:03
on the subject of artist images, my images are in 1 folder and are named %artist%.png

is there any way to retrieve them if the artist name includes a '.' eg 'Dr. Dre'
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2006-12-29 13:50:05
Also, can someone be more clear how the $pad(X,Y) command works?  I can't get it to do anything useful.  Is this a per line setting?  Per section (like after an $alignabs() box)? Global value?

Posts seem to get lost quick in this thread.  Anyone got an idea on this?

I figured out the LINEHEIGHT thing. If I set it once after my $alignabs() tag, it works for all my lines.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2006-12-29 14:03:44
Code: [Select]
$button2(0,20,0,0,25,25,$imageabs2(25,25,0,0,25,25,0,0,/images\gant\prev.png,),$imageabs2(25,25,0,0,25,25,0,0,/images\gant\prev.png,),previous,)


you're missing single quotes around the button text (eg. '$imageabs2(....')

Right now I have some buttons to rate the currently playing song, is there a way to get the panel to reload when i rate a song so the new rating buttons will show up?


how are you rating the songs? If it's through tags then it should it should update automatically. If its by some other means, then maybe not...

terrestrial:
I think that you're coding to load images from file path with Gdiplus::Bitmap(pchar) now, but is there a plan to use Gdiplus::Bitmap(IStream) constructor? Then if so we get possible to use interface of archive or etc via filesystem::g_open().


I'll look into it, but I don't think so with the way things are currently structured.

I read earlier in this thread that a command exists to set line spacing, but it hasn't been published yet.  Well, could you tell me what it is?  I'd like to set a global linespacing so I don't have to use the #LINEHEIGHT# command after every line to space things out a bit.  This would be for all text under my $alignabs() setting for the bounding box.

Also, can someone be more clear how the $pad(X,Y) command works?  I can't get it to do anything useful.  Is this a per line setting?  Per section (like after an $alignabs() box)? Global value?


Code: [Select]
$alignabs(0,0,100,200,top,left)#LINEHEIGHT,43#test$char(10)test$char(10)test


you don't have to use it after every line, but after every $alignabs(2) etc.
Title: Track Info Panel with ability to change font
Post by: 4nt1 on 2006-12-29 18:01:45
ok so this is what I am currently using

$imageabs2(150,150,,,,,$sub(%_width%,150),0,$replace(%path%,%directoryname%$char(92)%filename_ext%,Artist.*),NOKEEPASPECT)

I have artist.jpg in 1 folder down from the album folder - this works.

My next problem however is what happens when I have multiple cd's in each album - this would then make album the folder that should infact be the band folder. Appreciate any ideas.

eg
F:\music\genre\band\album

F:\music\genre\band\album\CD1

the artist image is in the band folder
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2006-12-30 01:20:06
If you have a predictable directory structure this isn't that hard to accomplish. Using your above example you can do something like this:
Code: [Select]
$imageabs2(150,150,,,,,$sub(%_width%,150),0,
$replace(%path%,
$if($strcmp($lower($left(%directoryname%,2)),cd),$directory(%path%,2)$char(92),)
%directoryname%$char(92)
%filename_ext%,Artist.*)
,NOKEEPASPECT)


* Read the file titleformat_help.html in your foobar directory for more information about basic functions.
Title: Track Info Panel with ability to change font
Post by: RadioactiveMan on 2006-12-30 17:40:27
Hello,

i want to make buttons that change their design according to the values of %cwb_volume%. As written in the wiki, i put the button into the //PerTrack section. On the first sight it looks ok, but when I change the volume with the volume slider, the design of the button doesn't change as long as the played track doesn't change. Now I thought I could move the button code to the //PerSecond section. But then the whole button isn't drawn at all.

Is there a way to have buttons that are updated every second? It is not only useful for volume but for many other things like the playback order for example.

Thanks in advance,
Radioactive Man
Title: Track Info Panel with ability to change font
Post by: drake on 2007-01-01 21:46:00
i was just wondering how you would code the trackinfo panel to scale the font size based on the amount of characters being displayed
Title: Track Info Panel with ability to change font
Post by: odyssey on 2007-01-03 03:16:42
If fb2k lays behind a window, and you try to activate fb2k window by clicking randomly in a trackinfo panel, fb2k becomes active, but are not sent to front.

Will this ever be fixed?
Title: Track Info Panel with ability to change font
Post by: TedFromAccounting on 2007-01-03 08:54:02
Quote
i was just wondering how you would code the trackinfo panel to scale the font size based on the amount of characters being displayed


I'd like to know how to do this too.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-01-03 10:01:36
This can probably be done by using a calculation for the size parameter of the font statement.

$font(<fontname>,$unknownformula(),<color>,<options>)

I tried playing around a bit applying $len() and %_width% but only had moderate success. Does anyone know how to convert pixel size to font point size? I searched and found some vague answers but nothing specific.
Title: Track Info Panel with ability to change font
Post by: fabiospark on 2007-01-03 12:13:41
Code: [Select]
 
// Sets the offsets for the screensaver mode
// It will change the position of the info block with every new track

$puts(wide,1000)
$puts(xgap,$sub(%_width%,1000))$char(10)
$puts(ygap,$sub(%_height%,680))$char(10)
$puts(offsetx,$mod($add(%_length_seconds%,$len(%title%),$len(%artist%),$len(%artist%),$len(%performer%),%date%),$get(xgap)))
$char(10)
$puts(offsety,$mod($add(%_length_seconds%,$len(%title%),$len(%artist%),$len(%artist%),$len(%performer%)),$get(ygap)))


//Auto resizing text for title tag

$font(,36,,)
$alignabs($add(0,$get(offsetx)),$add(0,$get(offsety)),1000,160,center,middle)
$puts(txt2,$ifgreater($calcwidth(%title%),$mul(2,$get(wide)),
$ifgreater($calcwidth(%title%),$mul(3,$get(wide)),
$ifgreater($calcwidth(%title%),$mul(4,$get(wide)),
24,26),28),36))
$font(,$get(txt2),,)$if(%_isplaying%,$rgb(255,255,0)[%title%],[%title%])



I set up a big info display with many boxes for the various tags.
To mimic a screensaver, at the start of a new track I recalculate the origin point of all the display so to make the boxes move to a different point than before. You can get rid of that replacing the "offsetx" and "offsety" with static x and y points in the first line after the font 36 one.
The title info box can hold 2 lines of text.

Feel free to ask for other explanation.


If anybody is interested, I also have set up an auto-vertical-scrolling for another info box.

Is it known that the window of this plugin steals the focus from others windows over it?
(Not sure if the term "steals the focus" is correct but if I open the properties over it and then try to click on it to drag it nothing happens unless I can click it in an area that is not over the trackinfomod panel.)

Thanks.
Title: Track Info Panel with ability to change font
Post by: Generalverdacht on 2007-01-03 14:33:51
Here's the rating code that I've been using for a while. It works like WMP stars and is based on a scale of 1-10 so you can have half stars. I also made it so that you could change the size and position of the stars easily using variables:

Code: [Select]
//Start Variables
$puts(ratewidth,90)
$puts(xpos,15)
$puts(ypos,2)
$puts(imagedir,C:\Program Files\foobar2000\images\Ratings\)
//End Variables

$drawrect(,,,,brushcolor-SYSCOL-15 pencolor-null)
$puts(rating,$ifgreater(%RATING%,10,$puts(rate,$div($add(%RATING%,5),10)),$puts(rate,%RATING%)))
$imageabs2($get(ratewidth),$div($get(ratewidth),5),,,,,$get(xpos),$get(ypos),$get(imagedir)$if2(%rating%,0).png,alpha-95)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),9),0,$get(ratewidth),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'10.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'10.png,alpha-115)',TAG:SET:Rating:10,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),8),0,$mul($div($get(ratewidth),10),9),20,'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'9.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'9.png,alpha-115)',TAG:SET:Rating:9,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),7),0,$mul($div($get(ratewidth),10),8),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'8.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'8.png,alpha-115)',TAG:SET:Rating:8,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),6),0,$mul($div($get(ratewidth),10),7),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'7.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'7.png,alpha-115)',TAG:SET:Rating:7,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),5),0,$mul($div($get(ratewidth),10),6),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'6.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'6.png,alpha-115)',TAG:SET:Rating:6,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),4),0,$mul($div($get(ratewidth),10),5),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'5.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'5.png,alpha-115)',TAG:SET:Rating:5,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),3),0,$mul($div($get(ratewidth),10),4),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'4.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'4.png,alpha-115)',TAG:SET:Rating:4,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),2),0,$mul($div($get(ratewidth),10),3),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'3.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'3.png,alpha-115)',TAG:SET:Rating:3,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),1),0,$mul($div($get(ratewidth),10),2),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'2.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'2.png,alpha-115)',TAG:SET:Rating:2,)
$button2($get(xpos),$get(ypos),$mul($div($get(ratewidth),10),0),0,$mul($div($get(ratewidth),10),1),$div($get(ratewidth),5),'$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'1.png,alpha-25)','$imageabs2('$get(ratewidth)','$div($get(ratewidth),5)',,,,,,,'$get(imagedir)'1.png,alpha-115)',TAG:SET:Rating:1,)
$button2(0,0,0,0,$get(xpos),$div($get(ratewidth),5),,,TAG:SET:Rating:0,)

And use the images I uploaded here (make sure to set imagedir to wherever you extract them):
http://www.mytempdir.com/1131194 (http://www.mytempdir.com/1131194)

Now if only I could figure out how to get that tagging progressbar not to show up


Damn id like to use that system, i changed the image dir to my specs but the images dont show up.... the rating system works
Title: Track Info Panel with ability to change font
Post by: charlie_su1986 on 2007-01-03 20:05:59
Hi all

Is there some kind of syntax that will allow the $button function to run two commands at a time?

something like this:
$button(DstX,DstY,X,Y,W,H,IMAGE1,IMAGE2,CMD1;CMD2,OPTIONS)

Thanks
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2007-01-05 19:48:24
updated with a couple of little things + tag operations use the new async tag functions, so no more updating tag dialog.
Title: Track Info Panel with ability to change font
Post by: alphaex32 on 2007-01-05 20:19:35
Damn id like to use that system, i changed the image dir to my specs but the images dont show up.... the rating system works
Make sure you have a "\" at the end of the path.

Also, the newest version of the panel seems to have messed up the button and image alignment in my rating code. Ill have to play with it and figure out what's going on. Terrestrial, do you have a copy of the previous version (before the version released today) uploaded somewhere?

I would also like to request a couple of features. First, would it be possible to make persistent variables global to all trackinfo panels and SCPL? Second, could you maybe make some kind of support for multiple selections? Maybe you could have an alternate code box which would be shown when multiple tracks are selected, or just a code section like "//Multiple Items" I made a style tagging panel, but its not really useful right now because I can only tag one track at a time.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2007-01-07 05:41:45
nope, I don't keep older binaries. If you have more details on your problem I can try and fix it for the next version, though

Both the feature requests are already on the todo list
Title: Track Info Panel with ability to change font
Post by: fabiospark on 2007-01-07 08:41:44
... I place a picture of the artist...

Where did you find them?

Thanks.
Title: Track Info Panel with ability to change font
Post by: stampgevaar on 2007-01-07 18:47:05
I couldn't get my text buttons to work and then I took this piece of code of the wiki and found out it also doesn't work

$button2(0,0,0,0,30,13,$font(tahoma,8,,0-0-0)Forward,$font(tahoma,8,underline,0-0-0)Forward,'Seek ahead by 10 seconds',)

so what's wrong with it or what do I have to do to get it to work? I have also noticed that alphaex32 rating code doesn't work correctly anymore. The text is just displayed wrong just try it out...

please fix this and great plugin by the way
Title: Track Info Panel with ability to change font
Post by: ojdo on 2007-01-07 21:43:56
I noticed the same problem, too.
However, it seems that the cause is not progressive jpeg format but an embedded thumbnail image.

It's nice when people find the problem, and then diagnose the cause also

Do you plan to make a "fix" for this issue?
Title: Track Info Panel with ability to change font
Post by: nate on 2007-01-08 00:37:33
Question: is it possible for $button to access context menu commands from foo_utils? When I had a "regular" button toolbar (before I started trying to convert my buttons into trackinfo_mod buttons), I had a button called "Insert into Playlist Bla" that triggered the command "Edit Other/Insert Into Specified Playlist/Bla". But now that I'm trying to make a button to do the same thing in trackinfo_mod, I can't get it to work. I assume this is because that command comes from foo_utils? Or am I missing something?

Thanks,

-Nate
Title: Track Info Panel with ability to change font
Post by: alphaex32 on 2007-01-08 02:18:32
nope, I don't keep older binaries. If you have more details on your problem I can try and fix it for the next version, though

Both the feature requests are already on the todo list
I'm not sure exactly what the problem is, but the code that I was using before for my rating buttons just doesnt work the way it did before I upgraded. The button image and actual clickable area doesnt seem to be aligning correctly. Here's the code I'm using if you want to try it yourself, because I've tried cleaning it up rechecking everything, and I can't figure out what's wrong:

Code: [Select]
//Start Variables
$puts(ratewidth,90)
$puts(xpos,8)
$puts(ypos,2)
$puts(imagedir,C:\Program Files\foobar2000\images\Ratings\)
//End Variables

$drawrect(,,,,brushcolor-SYSCOL-15 pencolor-null)
$puts(rateheight,$div($get(ratewidth),5))
$puts(halfstar,$div($get(ratewidth),10))

$puts(rating,$ifgreater(%RATING%,10,$puts(rate,$div($add(%RATING%,5),10)),$puts(rate,%RATING%)))
$imageabs2($get(ratewidth),$get(rateheight),,,,,$get(xpos),$get(ypos),$get(imagedir)$if2(%rating%,0).png,alpha-95)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),9),0,$mul($get(halfstar),10),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'10.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'10.png,alpha-115)',TAG:SET:Rating:10,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),8),0,$mul($get(halfstar),9),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'9.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'9.png,alpha-115)',TAG:SET:Rating:9,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),7),0,$mul($get(halfstar),8),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'8.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'8.png,alpha-115)',TAG:SET:Rating:8,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),6),0,$mul($get(halfstar),7),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'7.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'7.png,alpha-115)',TAG:SET:Rating:7,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),5),0,$mul($get(halfstar),6),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'6.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'6.png,alpha-115)',TAG:SET:Rating:6,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),4),0,$mul($get(halfstar),5),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'5.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'5.png,alpha-115)',TAG:SET:Rating:5,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),3),0,$mul($get(halfstar),4),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'4.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'4.png,alpha-115)',TAG:SET:Rating:4,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),2),0,$mul($get(halfstar),3),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'3.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'3.png,alpha-115)',TAG:SET:Rating:3,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),1),0,$mul($get(halfstar),2),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'2.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'2.png,alpha-115)',TAG:SET:Rating:2,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),0),0,$mul($get(halfstar),1),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'1.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'1.png,alpha-115)',TAG:SET:Rating:1,)
$button2(0,0,0,0,$get(xpos),$get(rateheight),,,TAG:SET:RATING:,)
And here are the images again: http://www.mytempdir.com/1131194 (http://www.mytempdir.com/1131194)

If anyone has a copy of the previous version so I can confirm this, please let me know.
Title: Track Info Panel with ability to change font
Post by: FofR on 2007-01-08 23:39:04
... I place a picture of the artist...
Where did you find them?


I wrote a batch-script to download them from last.fm. I did this in C and used the URL2File command line app to do the downloading. Im working on making a service that other people can use yet does not give any undue and "impolite" strain on last.fm, this is also based on another's code and I need to receive their permission also.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2007-01-09 00:22:20
I couldn't get my text buttons to work and then I took this piece of code of the wiki and found out it also doesn't work

$button2(0,0,0,0,30,13,$font(tahoma,8,,0-0-0)Forward,$font(tahoma,8,underline,0-0-0)Forward,'Seek ahead by 10 seconds',)

you need single quotes around the code in the button:

Code: [Select]
$button2(0,0,0,0,30,13,'$font(tahoma,8,,0-0-0)Forward','$font(tahoma,8,underline,0-0-0)Forward','Seek ahead by 10 seconds',)

I noticed the same problem, too.
However, it seems that the cause is not progressive jpeg format but an embedded thumbnail image.
It's nice when people find the problem, and then diagnose the cause also
Do you plan to make a "fix" for this issue?

It should be fixed. (ie not use embedded thumbnails anymore).

Question: is it possible for $button to access context menu commands from foo_utils? When I had a "regular" button toolbar (before I started trying to convert my buttons into trackinfo_mod buttons), I had a button called "Insert into Playlist Bla" that triggered the command "Edit Other/Insert Into Specified Playlist/Bla". But now that I'm trying to make a button to do the same thing in trackinfo_mod, I can't get it to work. I assume this is because that command comes from foo_utils? Or am I missing something?

Thanks,

-Nate

should be no problem. the command has to match exactly though.

I'm not sure exactly what the problem is, but the code that I was using before for my rating buttons just doesnt work the way it did before I upgraded. The button image and actual clickable area doesnt seem to be aligning correctly. Here's the code I'm using if you want to try it yourself, because I've tried cleaning it up rechecking everything, and I can't figure out what's wrong:

I see the problem. Try this code:

Code: [Select]
//Start Variables
$puts(ratewidth,90)
$puts(xpos,8)
$puts(ypos,2)
$puts(imagedir,C:\Program Files\foobar2000\images\Ratings\)
//End Variables

$drawrect(,,,,brushcolor-SYSCOL-15 pencolor-null)
$puts(rateheight,$div($get(ratewidth),5))
$puts(halfstar,$div($get(ratewidth),10))

$puts(rating,$ifgreater(%RATING%,10,$puts(rate,$div($add(%RATING%,5),10)),$puts(rate,%RATING%)))
$imageabs2($get(ratewidth),$get(rateheight),,,,,$get(xpos),$get(ypos),$get(imagedir)$if2(%rating%,0).png,alpha-95)
$button2(0,0,0,0,$get(xpos),$get(rateheight),,,TAG:SET:RATING:,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),0),0,$mul($get(halfstar),1),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'1.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'1.png,alpha-115)',TAG:SET:Rating:1,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),1),0,$mul($get(halfstar),2),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'2.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'2.png,alpha-115)',TAG:SET:Rating:2,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),2),0,$mul($get(halfstar),3),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'3.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'3.png,alpha-115)',TAG:SET:Rating:3,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),3),0,$mul($get(halfstar),4),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'4.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'4.png,alpha-115)',TAG:SET:Rating:4,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),4),0,$mul($get(halfstar),5),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'5.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'5.png,alpha-115)',TAG:SET:Rating:5,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),5),0,$mul($get(halfstar),6),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'6.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'6.png,alpha-115)',TAG:SET:Rating:6,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),6),0,$mul($get(halfstar),7),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'7.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'7.png,alpha-115)',TAG:SET:Rating:7,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),7),0,$mul($get(halfstar),8),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'8.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'8.png,alpha-115)',TAG:SET:Rating:8,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),8),0,$mul($get(halfstar),9),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'9.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'9.png,alpha-115)',TAG:SET:Rating:9,)
$button2($get(xpos),$get(ypos),$mul($get(halfstar),9),0,$mul($get(halfstar),10),$get(rateheight),'$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'10.png,alpha-25)','$imageabs2('$get(ratewidth)','$get(rateheight)',,,,,,,'$get(imagedir)'10.png,alpha-115)',TAG:SET:Rating:10,)

The button order is just reversed. In previous versions, with overlapping buttons the last one would get executed, while the newer one executes the first one.
Title: Track Info Panel with ability to change font
Post by: alphaex32 on 2007-01-09 01:27:47
The button order is just reversed. In previous versions, with overlapping buttons the last one would get executed, while the newer one executes the first one.
Thank you so much, I was afraid that something had gone horribly wrong after the update. It works great!
Title: Track Info Panel with ability to change font
Post by: Squeller on 2007-01-09 08:10:06
Report on the cpu problem again. I found out fb2k consumes much (75%) cpu with an empty PerSeconds section when the panel is in full screen, 1024x768 on my notebook. When the panel is e.g. lke 50x100, fb2k only uses 5% cpu.

So this seems like a redraw inefficiency. If redrawing is that consuming on my notebook I wish the plugin would do it more efficiently?!
Title: Track Info Panel with ability to change font
Post by: ojdo on 2007-01-09 17:04:16
Do you plan to make a "fix" for this issue?

It should be fixed. (ie not use embedded thumbnails anymore).

Thank you very much!
Now I only need to download high res artist pictures for all of my artists (hrrr):

(http://www.galsch.de/files/open/screenshots/2007-01-09-fb2k-htpc-1-thumb.png) (http://www.galsch.de/files/open/screenshots/2007-01-09-fb2k-htpc-1.png)
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-09 20:41:57

Is it possible to make the rating system like iTunes where there are blank stars for unrated tracks then you can click and rate within the info panel?

I'm pretty new to trackinfo mod and I know that there are many way better ways of doing this but if you put two imagefiles in your Images directory named greystar.png and yellowstar.png and then insert this code you should have something simular

Code: [Select]
$select(%rating%,
$puts(status1,yellow),
$puts(status1,yellow)$puts(status2,yellow),
$puts(status1,yellow)$puts(status2,yellow)$puts(status3,yellow),
$puts(status1,yellow)$puts(status2,yellow)$puts(status3,yellow)$puts(status4,yellow),
$puts(status1,yellow)$puts(status2,yellow)$puts(status3,yellow)$puts(status4,yellow)$puts(status5,yellow))

$button(5,HORISONTAL Position,0,0,0,0,Images\$if3($get(status1),grey)star.png,Images\yellowstar.png,TAG:SET:rating:1,)
$button(23,HORISONTAL Position,0,0,0,0,Images\$if3($get(status2),grey)star.png,Images\yellowstar.png,TAG:SET:rating:2,)
$button(41,HORISONTAL Position,0,0,0,0,Images\$if3($get(status3),grey)star.png,Images\yellowstar.png,TAG:SET:rating:3,)
$button(59,HORISONTAL Position,0,0,0,0,Images\$if3($get(status4),grey)star.png,Images\yellowstar.png,TAG:SET:rating:4,)
$button(77,HORISONTAL Position,0,0,0,0,Images\$if3($get(status5),grey)star.png,Images\yellowstar.png,TAG:SET:rating:5,)

and of course change the HORISONTAL Position to what suites you ;)


I tried your code but I am unsure where the images should go and also how to align the rating star buttons to the bottom. Thank you for your time.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2007-01-09 21:37:51
Report on the cpu problem again. I found out fb2k consumes much (75%) cpu with an empty PerSeconds section when the panel is in full screen, 1024x768 on my notebook. When the panel is e.g. lke 50x100, fb2k only uses 5% cpu.

So this seems like a redraw inefficiency. If redrawing is that consuming on my notebook I wish the plugin would do it more efficiently?!


did you do the bitblt benchmark?
Title: Track Info Panel with ability to change font
Post by: fnord23 on 2007-01-10 23:03:40
found it...
Title: Track Info Panel with ability to change font
Post by: Russell777 on 2007-01-10 23:53:00
Hi terrestrial,I want to hank you again for this wonderful pugin,it's hard to find a config thisdays that doesn't use your components,but i have a little request:I have an albumart dispalyed in the trackinfo mod,it works fine,except for one minor issue:every time a track chages it keeps allocating additional RAM,I mean it doesn' t
frees up the memory allocated for the previous track pic when moving to the next one.So my question is:is it possible to free up the memory allocated for the image when a track changes or is it impossible during to SDK
limitations?Would like to se it implemented (if possible),thanks for your time.
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-11 09:02:19
Code: [Select]
$if(%rating%,
$select(%rating%,
$puts(status1,yellow)$puts(status2,grey)$puts(status3,grey)$puts(status4,grey)$puts(status5,grey),
$puts(status1,yellow)$puts(status2,yellow)$puts(status3,grey)$puts(status4,grey)$puts(status5,grey),
$puts(status1,yellow)$puts(status2,yellow)$puts(status3,yellow)$puts(status4,grey)$puts(status5,grey),
$puts(status1,yellow)$puts(status2,yellow)$puts(status3,yellow)$puts(status4,yellow)$puts(status5,grey),
$puts(status1,yellow)$puts(status2,yellow)$puts(status3,yellow)$puts(status4,yellow)$puts(status5,yellow)),
$puts(status1,grey)$puts(status2,grey)$puts(status3,grey)$puts(status4,grey)$puts(status5,grey)
)

$button(1,184,0,0,0,0,Images\$if3($get(status1),grey)star.png,Images\yellowstar.png,TAG:SET:rating:1,)
$button(18,184,0,0,0,0,Images\$if3($get(status2),grey)star.png,Images\yellowstar.png,TAG:SET:rating:2,)
$button(35,184,0,0,0,0,Images\$if3($get(status3),grey)star.png,Images\yellowstar.png,TAG:SET:rating:3,)
$button(52,184,0,0,0,0,Images\$if3($get(status4),grey)star.png,Images\yellowstar.png,TAG:SET:rating:4,)
$button(69,184,0,0,0,0,Images\$if3($get(status5),grey)star.png,Images\yellowstar.png,TAG:SET:rating:5,)

$if(%mood%,
$select(%mood%,
$puts(status1,red)$puts(status2,grey)$puts(status3,grey),
$puts(status1,red)$puts(status2,red)$puts(status3,grey),
$puts(status1,red)$puts(status2,red)$puts(status3,red)),
$puts(status1,grey)$puts(status2,grey)$puts(status3,grey)
)

$button(150,184,0,0,0,0,Images\$if3($get(status1),grey)heart.png,Images\redheart.png,TAG:SET:mood:1,)
$button(167,184,0,0,0,0,Images\$if3($get(status2),grey)heart.png,Images\redheart.png,TAG:SET:mood:2,)
$button(183,184,0,0,0,0,Images\$if3($get(status3),grey)heart.png,Images\redheart.png,TAG:SET:mood:3,)

(%isplaying%,
// PerSecond
$rgb(245,245,245)Artist: $rgb()$rgb(255,135,0)%album artist%$char(10)$rgb()
$rgb(245,245,245)Album: $rgb()$rgb(255,135,0)%album%$char(10)$rgb()
$rgb(245,245,245)Title: $rgb()$rgb(255,135,0)%title%$char(10)$rgb()
$char(10)
//---------------------------// <---------(THIS PART SHIFTS ON TOP)
$rgb(245,245,245)Duration: $rgb(255,255,200)[%_time_elapsed%]$rgb() $rgb(245,245,245)/ $rgb()$rgb(255,135,0)%_length%$rgb()
//ADDITIONAL CODE FOR PROGRESS BAR//
$puts(progchar,|)
$puts(progfore,0000ff)
$puts(progback,999999)
$puts(proglength,85)
$char(10)
$get(head)$get(file)
$progress2(%_time_elapsed_seconds%,%_time_total_seconds%,$get(proglength),$get(progfore)$get(progchar),$get(progback)$get(progchar))$get(bright) $rgb(255,255,0)$muldiv(%_time_elapsed_seconds%,100,%_time_total_seconds%)'%'
//END OF CODE
$char(10)
$char(10)
$rgb(245,245,245)Codec: $rgb()$rgb(255,135,0)%codec%$rgb()$char(10)
$rgb(245,245,245)Bitrate: $rgb()$rgb(255,255,200)%bitrate%$rgb()$rgb(255,255,0) kbps $rgb()$rgb(255,255,200)%codec_profile%  $char(10)$rgb()
$rgb(245,245,245)Filesize: $rgb()$rgb(255,255,200)$div(%_filesize%,1048576).$num($div($mul($mod(%_filesize%,1048576),100),1048576),2)$rgb()$rgb(255,255,0) MB $char(10) $rgb()
$rgb(245,245,245)Samplerate: $rgb()$rgb(255,255,200)%samplerate%$rgb()$rgb(255,135,0) Hz %channels% $char(10)$rgb()
$char(10)
$rgb(245,245,245)Played: $rgb()$rgb(255,255,200)%play_counter%$rgb()$rgb(255,135,0) times $char(10)$rgb()


This my code for my display and I also and going to add a screenshot plus the icons for the hearts and stars.
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-11 10:02:08
Screenshot (http://www.geocities.com/redmoon_rise/screenshot2.jpg)

The stars and hearts in the track info window are actually clickable and will edit the tracking rating or mood and can also be easily changed with any image too. I just figured I would share everything with you.

Grey Heart (http://www.geocities.com/redmoon_rise/greyheart.png)
Grey Star (http://www.geocities.com/redmoon_rise/greystar.png)
Red Heart (http://www.geocities.com/redmoon_rise/redheart.png)
Yellow Star (http://www.geocities.com/redmoon_rise/yellowstar.png)
Title: Track Info Panel with ability to change font
Post by: RadioactiveMan on 2007-01-11 10:34:12
Screenshot (http://www.geocities.com/redmoon_rise/screenshot2.jpg)


could you add an imageshack version, too?
Title: Track Info Panel with ability to change font
Post by: FofR on 2007-01-11 11:41:06
Any chance of letting trackinfo panel to read from external files or databases?
I'd like to show last.fm wiki and tag information with my tracks.
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-11 14:18:04
Here's the trackinfo I just finished last night.  First to give credit where credit is due, the original coding is not mine.  You can see the credits at the top of the code.  However, this was for the original version of trackinfo I think, so I've recoded it for the newest trackinfo_mod.  It's also been tweaked to display what I want, and I removed the playcount code cause I don't use it.

The main reason I'm posting it is it's my first shot at buttons and images in trackinfo.  I thought it would be useful since the placement of all elements and the sizing of the albumart+overlay is dynamic based on the size of your trackinfo panel.  The images will grow and shrink with the panel (contrary to the trackinfo_mod wiki, you can stretch an image to greater than it's original size with the $imageabs2() function if you enable nokeepaspect).

Some tweaking may be necessary to the initial placement of elements depending on your screen resolution, but after that it should take care of itself.  I'll try to make it clear in the comments.  You'll also need a default.jpg image in case of no albumart.

A link to the images used for the cd case overlay and the buttons, and a screenshot are at the bottom.  The overlay pic is from a thread in the uploads forums about album art overlay images.  I'm using the newest version of uie_trackinfo_mod v0.8.0 beta dated Jan. 5th.  Thanks to everyone from whom I borrowed stuff!

Questions and comments encouraged!

Code: [Select]
// Original code by necropimp, then modified by AstreaEdge, and again by KockRoach
// Habla likes things his way, and modified it more.
// Best viewed with vert pad 10, hor pad 8, line space 3, Calibri 8pt bold font, black background
// lots of info needs lots of space 8)

// !!!!BEGIN USER CONFIGURATION!!!!

// Global

// Show Artist? (1 = show, 0 = don't show)
$puts(arts,1)

// Show Album?
$puts(albs,1)

// Show Title?
$puts(tils,1)

// Info Heading Color e.g. "Title:"
$puts(head,$rgb(201,201,201))

// Info Color, e.g. "Black Dog"
$puts(info,$rgb(255,255,255))

// Info Annotation Color (e.g . "kbps" is the annotation)
$puts(anno,$rgb(255,255,255))

// Separator
$puts(text2,$rgb(255,255,255))
$puts(glow,$font(Calibri,8,bold glow-255-0-0 glowalpha-120,))
$puts(orig,$font(Calibri,8,bold,))
$puts(text1,$rgb(255,0,0))
$puts(fadeend,$rgb(0,0,0))
$puts(seplen,32)
$puts(sepchar,'-')

// Define center of panel
$puts(cenPx,$div(%_width%,2))

// Define starting height of info, button, and progress bar elements
$puts(infoY,$sub(%_height%,270))
$puts(butY,$sub(%_height%,63))
$puts(progY,$add($get(butY),38))

// Define case and art dynamic values
// Case width and height (pic has case and overlay as one)
$puts(caseW,$sub(%_width%,30))
$puts(caseH,$muldiv(400,$get(caseW),445))

// Old code with separate gloss overlay
//$puts(glossW,$muldiv(303,$get(caseW),360))
//$puts(glossX,$add($muldiv(45,$get(caseW),360),0))
//$puts(glossY,$add($muldiv(12,$get(caseH),330),4))

// Art width and height
$puts(artW,$muldiv(400,$get(caseW),445))
$puts(artX,$add($muldiv(45,$get(caseW),445),15))

// Border around case+art
$puts(border,15)


// Background

// Code for optional bg image
//$imageabs2(%_width%,%_height%,0,0,%_width%,%_height%,0,0,/components\default.jpg,alpha-40 nokeepaspect)


////////////////////////////////////////////////
////!!!END USER CONFIGURATION!!////
//////////////////////////////////////////////

// PerTrack

// Art is bottom layer, if no art then use a default image
$imageabs2($get(artW),$get(artW),0,0,$get(artW),$get(artW),$get(artX),$get(border),
$if($fileexists($replace(%path%,%filename_ext%,'folder.jpg')),
$replace(%path%,%filename_ext%,'folder.jpg')
,
'/components\default.jpg'
),valign-t nokeepaspect)

// CD case overlay
$imageabs2($get(caseW),$get(caseH),0,0,$get(caseW),$get(caseH),$get(border),$get(border),'/images\case\case2.png',valign-t nokeepaspect)

// Button code
$button($sub($get(cenPx),90),$get(butY),12,8,20,20,'/images\red\stop.png','/images\red\stopR_h.png','Stop',)
$button($sub($get(cenPx),54),$get(butY),0,8,36,20,'/images\red\prev.png','/images\red\prevR_h.png','Previous',)
$button($sub($get(cenPx),18),$get(butY),0,0,36,36,'/images\red\playR.png','/images\red\playR_h2.png','Play or pause',)
$button($add($get(cenPx),18),$get(butY),0,8,36,20,'/images\red\next.png','/images\red\nextR_h.png','Next',)
$button($add($get(cenPx),54),$get(butY),8,8,20,20,'/images\red\mute.png','/images\red\muteR_h.png','Volume mute',)

// PerSecond

// SONG INFO SEPARATOR

$alignabs(0,$get(infoY),%_width%,%_height%,center,top)
'#LINEHEIGHT,16#'

$transition($repeat($get(sepchar),$get(seplen)),$get(fadeend),$get(text1))$get(text1)'[' $get(glow)$get(text2)S o n g I n f o $get(orig)$get(text1)']'$transition($repeat($get(sepchar),$get(seplen)),$get(text1),$get(fadeend))$char(10)

$if($strcmp(1,$get(arts)),$get(head)Artist: $get(info)[%artist%]$char(10),)
$if($strcmp(1,$get(albs)),$if(%album%,$get(head)Album: $get(info)$cut(%album%,37)
$ifgreater($len(%album%),37,'...',)$char(10),),)
$if($strcmp(1,$get(tils)),$get(head)Title: $if(%title%,$get(info)$cut(%title%,39)
$ifgreater($len(%title%),39,'...',))$char(10),$get(info)[%_filename%]$char(10))
$if(%tracknumber%,$get(head)Track #: $get(info)%tracknumber%$char(10),)
$if(%date%,$get(head)Date: $get(info)%date%$char(10),)
$if(%genre%,$get(head)Genre: $get(info)%genre%$char(10),)

// TECH INFO SEPARATOR
$char(10)
$transition($repeat($get(sepchar),$get(seplen)),$get(fadeend),$get(text1))$get(text1)'[' $get(glow)$get(text2)T e c h I n f o $get(orig)$get(text1)']'$transition($repeat($get(sepchar),$get(seplen)),$get(text1),$get(fadeend))$char(10)

$get(head)Length: $if(%_length%,$get(info)$if(%isplaying%,%_time_elapsed%$get(anno)$if(%_length%, / %_length%,)$if(%_time_elapsed%, / $muldiv(%_time_elapsed_seconds%,100,%_length_seconds%)'%')$if(%_length%, / -%_time_remaining%),%_length%),$if(%isplaying%,$get(info)Streaming  [%_time_elapsed%],))$char(10)
$get(head)Quality: $if(%__codec%, $get(info)%__codec% $get(info)
$if2(%__bitrate_dynamic%,[%__bitrate%]) $get(anno)Kb/s $if($stricmp(%__codec%,mp3),[%__codec_profile%]),)
$char(10)
$if(%__lame_version%,$get(head)Encoder: $get(info)$left(%__lame_version%,4) $right(%__lame_version%,4) [$upper(%__lame_profile%)]$char(10),)
$if(%__flac_vendor%,$get(head)Encoder: $get(info)$if($stricmp(%__flac_vendor%,reference libFLAC 1.1.2 20050205),FLAC 1.1.2 -8)$char(10),)
$if(%__mpc_profile%,$get(head)MPC Profile: $get(info)%__mpc_profile%$char(10),)
// $get(head)Compression: $get(info)$div(1411,%__bitrate%).$substr($muldiv(1411,100,%__bitrate%),2,3):1 '('$get(info)$muldiv(%__bitrate%,100,1411)$get(anno)'% of original quality)'$char(10)
$get(head)Channel Mode: $get(info)$if($stricmp($codec(),MP3),$get(space2)$caps(%__mp3_stereo_mode%),
$if(%__channels%,$ifgreater(%__channels%,1,Stereo,Mono),))$char(10)
$if(%__bitspersample%,$get(head)Bitdepth: $get(info)%__bitspersample% bits/sample$char(10),)
$get(head)Samplerate: $get(info)$if(%__samplerate%,$div(%__samplerate%,1000).$substr(%__samplerate%,3,3) KHz $char(10),$char(10))
$if(%_filesize%,$get(head)Filesize: $get(info)
$div(%_filesize%,1048576).$left($num($muldiv($mod(%_filesize%,1048576),100,1048576),2),2) $get(anno)'MB'$char(10),)

$get(head)Focus: $get(info)$if(%_trackinfo_nowplaying%,'Current Song'$if(%ispaused%,$get(text1)'  [Paused]'),'Follow Cursor'$if(%ispaused%,$get(text1)'  [Paused]'))$char(10)

$alignabs(0,$get(progY),%_width%,20,center,top)
$if(%isplaying%,$if(%_length%,$get(head)o$progress(%_time_elapsed_seconds%, %_time_total_seconds%,$div(%_width%,4),$font(Times New Roman,8,,)$get(info)$char(9835)$get(orig),$get(text1)'-')$get(head)o))


images (http://rapidshare.com/files/11210741/images.7z.html)

(http://img241.imageshack.us/img241/5121/trackinforj4.th.png) (http://img241.imageshack.us/my.php?image=trackinforj4.png)
Title: Track Info Panel with ability to change font
Post by: nate on 2007-01-11 21:02:18

Question: is it possible for $button to access context menu commands from foo_utils? When I had a "regular" button toolbar (before I started trying to convert my buttons into trackinfo_mod buttons), I had a button called "Insert into Playlist Bla" that triggered the command "Edit Other/Insert Into Specified Playlist/Bla". But now that I'm trying to make a button to do the same thing in trackinfo_mod, I can't get it to work. I assume this is because that command comes from foo_utils? Or am I missing something?

Thanks,

-Nate

should be no problem. the command has to match exactly though.

Hi terrestrial-

Thanks for the reply. Ok, then, I guess I must be misunderstanding something here.

I assumed that the code would be:

$button(120,120,0,0,40,40,IMAGES\button9.png,IMAGES\button9.png,Insert into Specified Playlist\Bla,)

but that's not working. I tried a couple of obvious tinkers with that code, but couldn't get anything to work. I assume it's something to do with the slash separating the command from the playlist name, but I can't figure out how else to specify the targeted playlist. What am I missing here?

Thanks,

-Nate
Title: Track Info Panel with ability to change font
Post by: saberrider on 2007-01-11 23:06:46
I have a question about imageabs2. Why isn't it possible to increase the size of images? I'd love to display covers with trackinfo instead of albumart but I don't have high res covers for all my albums. I never found any answers for that in this thread.
Title: Track Info Panel with ability to change font
Post by: FofR on 2007-01-11 23:24:32

... I place a picture of the artist...

Where did you find them?

Thanks.


The artist image download service I mentioned is now up and running, check this thread for details:
http://www.hydrogenaudio.org/forums/index....showtopic=51736 (http://www.hydrogenaudio.org/forums/index.php?showtopic=51736)
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-11 23:55:39
I have a question about imageabs2. Why isn't it possible to increase the size of images? I'd love to display covers with trackinfo instead of albumart but I don't have high res covers for all my albums. I never found any answers for that in this thread.


I'm not sure why the wiki says that.  I use $imageabs2() currently in trackinfo_mod to display albumart and the image will stretch larger if you use NOKEEPASPECT.  See my post about 5 back.
Title: Track Info Panel with ability to change font
Post by: Keikonium on 2007-01-12 09:32:03
I just had an idea... and I highly doubt its possible (or easy as a matter of fact lol), but I was thinking about a feature that would be cool for this plugin. We already have the ability to assign images/text to commands and buttons. Why not have an option to assign OTHER plugins to areas inside track info mod?

For example:

Code: [Select]
$newpanel(areaWidth,areaHeight,areaLeft,areaTop,panelOptions)


With something like this, we could include the lyrics panel to scroll lyrics inside the track info mod like this:

Code: [Select]
$newpanel(500,700,50,200,foo_uie_lyrics_panel)


Then of course that panel would be configurable from its own code, and no longer related to track info mod other than the fact that track info mod would be displaying it.

I think this would be cool... if it were possible.
Title: Track Info Panel with ability to change font
Post by: CepiPerez on 2007-01-12 13:53:55
If terrestrial could do this, then we will enter in a new foobar appearance age.
Title: Track Info Panel with ability to change font
Post by: fnord23 on 2007-01-12 14:04:37
There isn't a possibility to write text vertically, is there?
Title: Track Info Panel with ability to change font
Post by: JGray on 2007-01-12 16:59:55
I have a problem on Windows Vista. I can't seem to get things to update properly. My time elapsed and my progress bar no longer work. They update if I press Pause, Minimize or Maximize the screen, and switch between Follow Cursor & Now Playing Modes. Also, if the song I am listening to is VBR it doesn't update either. Here is the code I am using:

Time Elapsed
Code: [Select]
Length: $get(default)%_time_elapsed% / %_length%


Progress Bar
Code: [Select]
$puts(progress_char,'׀')
$puts(progress_length,90)
$puts(progressbar,$if(%length_seconds%,$puts(progress,$muldiv(%playback_time_seconds%,$get(progress_length),%length_seconds%))
$transition($repeat($get(progress_char),$get(progress)),$get(progress1),$get(progress1))
$transition($repeat($get(progress_char),$sub($get(progress_length),$get(progress))),$get(progress2),$get(progress2))$char(10)
$get(default)$pad_right($muldiv(%_time_elapsed_seconds%,100,%_length_seconds%),3)'%'
,))
$get(progressbar))


Bitrate
Code: [Select]
Bitrate: $get(default)$if(%__bitrate_dynamic%,%__bitrate_dynamic%,%__bitrate%)kbps $if($stricmp(%__codec%,mp3),$if($stricmp(%__extrainfo%,VBR),VBR,CBR)) $char(10)


This config worked perfectly under XP, but know is not working at all. Any suggestions?
Title: Track Info Panel with ability to change font
Post by: eliazu on 2007-01-12 17:11:44
i have the same problem here in with vista... worked fine on XP too..
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-01-12 21:43:02
JGray: Do you have a line anywhere in your code that looks like this?:
Code: [Select]
// PerSecond


If not, add it to the top of your code and see if that solves your problem.
Title: Track Info Panel with ability to change font
Post by: Valdoran on 2007-01-12 22:06:30
Is it possible to have hyperlinks in the trackinfo panel?
Title: Track Info Panel with ability to change font
Post by: JGray on 2007-01-12 23:38:26
JGray: Do you have a line anywhere in your code that looks like this?:
Code: [Select]
// PerSecond


If not, add it to the top of your code and see if that solves your problem.


Nope, I don't think that I do. I will check it on Monday morning. It is on my work PC. 

Thanks for the suggestion!
Title: Track Info Panel with ability to change font
Post by: eliazu on 2007-01-12 23:50:55
worked for me... but the buttons stopped working..

edit:

emm,
// PerTrack
fixed it, but i should adjust it to the code.

thank you.
Title: Track Info Panel with ability to change font
Post by: Erich w/ an h on 2007-01-14 06:49:28
I cant get the panel to display images at all. Am I doing something wrong? Ive tried:

// Background

$imageabs(0,0,D:\Erich\Music\Album\iPod\%artist%\%album%\test.jpg,flow alpha-150)

// Background

$imageabs(0,0,D:\Erich\Music\Album\iPod\Matt Pond PA\(2004-05-18) Emblems\test.jpg,flow alpha-150)

and relative paths as well. But the images never show up. I hope im doing something wrong here.
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-01-14 06:58:37
I cant get the panel to display images at all. Am I doing something wrong? Ive tried:

// Background

$imageabs(0,0,D:\Erich\Music\Album\iPod\%artist%\%album%\test.jpg,flow alpha-150)

// Background

$imageabs(0,0,D:\Erich\Music\Album\iPod\Matt Pond PA\(2004-05-18) Emblems\test.jpg,flow alpha-150)

and relative paths as well. But the images never show up. I hope im doing something wrong here.

relative paths to what?
$imageabs(0,0,erichPics\test.jpg,flow alpha-150)
would reference (no profile support):
C:\Program Files\Foobar 2000\erichPics\test.jpg
or (with profile support)
C:\Documents and Settings\USERNAME\Application Data\foobar2000\erichPics\test.jpg

to use absolute paths you need to use $imageabs2()
Title: Track Info Panel with ability to change font
Post by: Erich w/ an h on 2007-01-14 17:13:46
got it,. thanks.
Title: Track Info Panel with ability to change font
Post by: Snowsfall on 2007-01-14 19:58:01
quick request, the ability to rotate text the same way you can rotate images.
Title: Track Info Panel with ability to change font
Post by: sankukaai on 2007-01-14 23:52:37
is it possible to have buttons or clickable areas in the track info panel?
I'd like to click on those stars to rate my music kinda like in wmplayer. thanks
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-01-15 00:01:22
there are many examples of that in this thread.
Title: Track Info Panel with ability to change font
Post by: JGray on 2007-01-15 19:29:21
JGray: Do you have a line anywhere in your code that looks like this?:
Code: [Select]
// PerSecond


If not, add it to the top of your code and see if that solves your problem.


That took care of it! Thanks for the help!
Title: Track Info Panel with ability to change font
Post by: sankukaai on 2007-01-15 22:55:19
there are many examples of that in this thread.

thanks and sorry i didn't look at it before.
Does somebody has a config with the 5 "layers" of stars when multiple stars get lighten on mouse over, somebody talked about that earlier.
Title: Track Info Panel with ability to change font
Post by: CepiPerez on 2007-01-15 23:17:08
Does somebody has a config with the 5 "layers" of stars when multiple stars get lighten on mouse over, somebody talked about that earlier.
I use this:
Code: [Select]
$alignabs($sub(%_width%,100),$sub(%_height%,118),80,20,right,)
$font(wingdings,8,shadow,150-150-150)$repeat(?,5)
$alignabs($sub(%_width%,100),$sub(%_height%,118),80,20,right,)
$font(wingdings,8,shadow,255-255-255)$repeat(?,%rating%)

$button2($sub(%_width%,30),$sub(%_height%,118),0,0,10,10,'$font(wingdings,8,glow-75-80-120 glowalpha-10,220-220-255) ','$font(wingdings,8,glow-75-80-120 glowalpha-10,220-220-255)?',TAG:SET:rating:1,)
$button2($sub(%_width%,40),$sub(%_height%,118),0,0,10,10,'$font(wingdings,8,glow-75-80-120 glowalpha-10,220-220-255) ','$font(wingdings,8,glow-75-80-120 glowalpha-10,220-220-255)?',TAG:SET:rating:2,)
$button2($sub(%_width%,50),$sub(%_height%,118),0,0,10,10,'$font(wingdings,8,glow-75-80-120 glowalpha-10,220-220-255) ','$font(wingdings,8,glow-75-80-120 glowalpha-10,220-220-255)?',TAG:SET:rating:3,)
$button2($sub(%_width%,60),$sub(%_height%,118),0,0,10,10,'$font(wingdings,8,glow-75-80-120 glowalpha-10,220-220-255) ','$font(wingdings,8,glow-75-80-120 glowalpha-10,220-220-255)?',TAG:SET:rating:4,)
$button2($sub(%_width%,70),$sub(%_height%,118),0,0,10,10,'$font(wingdings,8,glow-75-80-120 glowalpha-10,220-220-255) ','$font(wingdings,8,glow-75-80-120 glowalpha-10,220-220-255)?',TAG:SET:rating:5,)

Try this.
Title: Track Info Panel with ability to change font
Post by: drake on 2007-01-16 02:57:14
how do i align something to the right? $char(9) doesnt work in this one...

how do i create a vertical or horizontal buffer? so it doesnt stay in the extreme topleft of the box.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-01-16 03:09:33
$alignabs(10,10,100,100,right,)

Where the first two parameters (10,10) specify the starting position of the text window and the second two parameters (100,100) specify the width and height of the text window. The fifth parameter (right) determines how to justify the text within that window.
Title: Track Info Panel with ability to change font
Post by: drake on 2007-01-16 03:32:06
you, by the way, win the contest for most helpful poster.


sorry, everyone else.
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-16 05:38:35
I am trying to figure out how to get the album art to load like in the album art panel where it find the picture by checking various locations and all I have been able to do is load some background images and such.

Can anyone point me in the right directions to finding the album art?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-01-16 07:14:33
GreenSmurf: Post the source strings you use in albumart, and an $imageabs2() function from your current layout so we can see how you want to position the image. It shouldnt be hard to put the two together. Basically you'll want to use a layering approach for each image source:

$imageabs2(100,100,,,,,10,10,/images\nocover.*)
$imageabs2(100,100,,,,,10,10,$replace(%path%,%filename_ext%,folder.jpg)
$imageabs2(100,100,,,,,10,10,$replace(%path%,%filename_ext%,[%album artist% - ]%album%.*)
Title: Track Info Panel with ability to change font
Post by: MrEnergizer on 2007-01-16 11:34:55
you, by the way, win the contest for most helpful poster.


sorry, everyone else.


I second that 
Title: Track Info Panel with ability to change font
Post by: ladiko on 2007-01-16 15:19:38
i had this in my old trackinfo -->

Code: [Select]
$tab()
$select($add(1,$mod(%_time_elapsed_seconds%,10))
, o $tab()$char(10)$tab()<!>$tab()$char(10)$tab()< >
, o/$tab()$char(10)$tab()<! $tab()$char(10)$tab() <>
, o>$tab()$char(10)$tab()<! $tab()$char(10)$tab() <>
,<o>$tab()$char(10)$tab() ! $tab()$char(10)$tab()< >
,<o/$tab()$char(10)$tab() ! $tab()$char(10)$tab()/ >
, o $tab()$char(10)$tab()'/!,'$tab()$char(10)$tab()/ >
, o $tab()$char(10)$tab()',!>'$tab()$char(10)$tab()>>
, o $tab()$char(10)$tab()'<!,'$tab()$char(10)$tab()<<
, o/$tab()$char(10)$tab()/! $tab()$char(10)$tab()>>
, o> $tab()$char(10)$tab()/!  $tab()$char(10)$tab()/ >
)$tab()


that creates a dancing ascii-man like this -->
[a href="http://imageshack.us" target="_blank"]

edit:
i got it -->
Code: [Select]
// PerSecond
$alignabs($div(%_width%,2),$div(%_height%,2),50,50,center,top)
$rgb(58,79,108)$select($add(1,$mod(%_time_elapsed_seconds%,10))
, o $char(10)<!>$char(10)< >
, o/$char(10)<! $char(10) <>
, o>$char(10)<! $char(10) <>
,<o>$char(10) ! $char(10)< >
,<o/$char(10) ! $char(10)/ >
, o $char(10)'/!,'$char(10)/ >
, o $char(10)',!>'$char(10)>>
, o $char(10)'<!,'$char(10)<<
, o/$char(10)/! $char(10)>>
, o> $char(10)/!  $char(10)/ >
)
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2007-01-16 17:31:58
Hi terrestrial,I want to hank you again for this wonderful pugin,it's hard to find a config thisdays that doesn't use your components,but i have a little request:I have an albumart dispalyed in the trackinfo mod,it works fine,except for one minor issue:every time a track chages it keeps allocating additional RAM,I mean it doesn' t
frees up the memory allocated for the previous track pic when moving to the next one.So my question is:is it possible to free up the memory allocated for the image when a track changes or is it impossible during to SDK
limitations?Would like to se it implemented (if possible),thanks for your time.


I didn't originally write the image functions with album art in mind, so images, once used, are stored in memory for faster display later on. This, obviously, is ideal for buttons and icons, but not the best for album art. I've mean meaning to add an option to have images be cached "per track", but haven't had the chance to yet.


Thanks for the reply. Ok, then, I guess I must be misunderstanding something here.

I assumed that the code would be:

$button(120,120,0,0,40,40,IMAGES\button9.png,IMAGES\button9.png,Insert into Specified Playlist\Bla,)

but that's not working. I tried a couple of obvious tinkers with that code, but couldn't get anything to work. I assume it's something to do with the slash separating the command from the playlist name, but I can't figure out how else to specify the targeted playlist. What am I missing here?

Thanks,

-Nate


You just need "Bla" as the name of the button action.

I just had an idea... and I highly doubt its possible (or easy as a matter of fact lol), but I was thinking about a feature that would be cool for this plugin. We already have the ability to assign images/text to commands and buttons. Why not have an option to assign OTHER plugins to areas inside track info mod?

For example:

Code: [Select]
$newpanel(areaWidth,areaHeight,areaLeft,areaTop,panelOptions)


With something like this, we could include the lyrics panel to scroll lyrics inside the track info mod like this:

Code: [Select]
$newpanel(500,700,50,200,foo_uie_lyrics_panel)


Then of course that panel would be configurable from its own code, and no longer related to track info mod other than the fact that track info mod would be displaying it.

I think this would be cool... if it were possible.


there really wouldn't be any advantages to this. ColumnsUI's layout/positioning system is already very flexible (and easy to set up and use), and any plugins loaded "inside" trackinfo_mod wouldn't inherit its background, so the net result would be the same as what you can do now.
Title: Track Info Panel with ability to change font
Post by: nate on 2007-01-16 18:08:03

Thanks for the reply. Ok, then, I guess I must be misunderstanding something here.

I assumed that the code would be:

$button(120,120,0,0,40,40,IMAGES\button9.png,IMAGES\button9.png,Insert into Specified Playlist\Bla,)

but that's not working. I tried a couple of obvious tinkers with that code, but couldn't get anything to work. I assume it's something to do with the slash separating the command from the playlist name, but I can't figure out how else to specify the targeted playlist. What am I missing here?

Thanks,

-Nate


You just need "Bla" as the name of the button action.


Thanks terrestrial. I tried that, but that just deletes everything from the "Bla" playlist. I assume that this is because there are several commands that could be accessed with just the name "Bla" - i.e. the button action "Bla" could be interpreted as "Edit other/Add to specified playlist and play/Bla" or "Edit other/Remove from specified playlist and play/Bla" or "Edit other/Send to specified playlist and play/Bla". So if the button action "Bla" is all that is needed, how do I specify which of these "parent" commands to use?

-Nate
Title: Track Info Panel with ability to change font
Post by: mil3s on 2007-01-16 19:11:17
How do I stretch an image? I want the height to be static @ 3px and the width to be 100% of the trackinfo_mod area, and it should be placed at the bottom.
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-01-16 19:32:38
http://wiki.hydrogenaudio.org/index.php?ti...29#.24imageabs2 (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9/Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29#.24imageabs2)
Title: Track Info Panel with ability to change font
Post by: Anas on 2007-01-16 19:32:49
This should do, what you want:
Code: [Select]
$imageabs2(%_width%,3,0,0,100,100,0,$sub(%_height%,3),PATH_TO_IMAGE,nokeepaspect)
Title: Track Info Panel with ability to change font
Post by: mil3s on 2007-01-16 19:58:50
This should do, what you want:
Code: [Select]
$imageabs2(%_width%,3,0,0,100,100,0,$sub(%_height%,3),PATH_TO_IMAGE,nokeepaspect)

You almost got it. I replaced both 100 with 0 and now it works. Thanks.
Title: Track Info Panel with ability to change font
Post by: ladiko on 2007-01-16 22:00:25
i have modified this script from wraithdu --> http://www.hydrogenaudio.org/forums/index....st&p=463439 (http://www.hydrogenaudio.org/forums/index.php?showtopic=47044&view=findpost&p=463439) to match my needs

the needed images are here --> http://rapidshare.com/files/12037958/images.rar.html (http://rapidshare.com/files/12037958/images.rar.html)

the config-script is here --> http://phpfi.com/194343 (http://phpfi.com/194343)

(http://img101.imageshack.us/img101/2923/zwischenablage04ov6.th.jpg) (http://img101.imageshack.us/my.php?image=zwischenablage04ov6.jpg)
Title: Track Info Panel with ability to change font
Post by: Decuman on 2007-01-17 01:18:54
Thanks for such a great component!!!

Apparently it's been asked already but i didn't find it via the search:
Any chance to have a function for getting image X Y resolutoin?

Also, has anyone figured out the way to cycle a bunch of images during a single track playback... the same way foo_uie_albumart component does it?

Thanks in advance!
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-01-17 01:26:16
Also, has anyone figured out the way to cycle a bunch of images during a single track playback... the same way foo_uie_albumart component does it?

find and count the images with $fileexist()
then
$mod(%playback_time_seconds%,$mul($gets(counter),15))
then
use $switch()


or something to that effect. Play with it, it'd be very doable.
Title: Track Info Panel with ability to change font
Post by: Decuman on 2007-01-17 01:43:51
oh yeah! Thanks! Looks like it should work! Theoretically I see the way to create a transition between them as well.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2007-01-17 10:38:08
Does anyone know how to cut down a text to a specific width and adding ... at the end if it's too long? I've searched but I've been unable to find an answer. 

Here is the width I want.
Code: [Select]
$sub($div(%_width%,2),38)


EDIT: Never mind. Found a solution here: http://www.hydrogenaudio.org/forums/index....;p=446174&# (http://www.hydrogenaudio.org/forums/index.php?showtopic=49783&st=0&p=446174&#)
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-17 17:40:53
oh yeah! Thanks! Looks like it should work! Theoretically I see the way to create a transition between them as well.

Please post back what you come up with.  I'd be interested to see it, especially the transition between art.
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-18 01:41:25
GreenSmurf: Post the source strings you use in albumart, and an $imageabs2() function from your current layout so we can see how you want to position the image. It shouldnt be hard to put the two together. Basically you'll want to use a layering approach for each image source:

$imageabs2(100,100,,,,,10,10,/images\nocover.*)
$imageabs2(100,100,,,,,10,10,$replace(%path%,%filename_ext%,folder.jpg)
$imageabs2(100,100,,,,,10,10,$replace(%path%,%filename_ext%,[%album artist% - ]%album%.*)



Source Strings for Album Art

$replace(%path%,%filename_ext%,)*
-$replace(%path%,%filename_ext%,)..\*
-components\default.*
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-01-18 03:03:17
$imageabs2(100,100,,,,,10,10,/components\default.*))
$imageabs2(100,100,,,,,10,10,$replace(%path%,%directory%\%filename_ext%,*))
$imageabs2(100,100,,,,,10,10,$replace(%path%,%filename_ext%,*))

EDIT: Sorry I forgot to close my functions properly.
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-18 03:14:50
$imageabs2(100,100,,,,,10,10,/components\default.*)
$imageabs2(100,100,,,,,10,10,$replace(%path%,%directory%\%filename_ext%,*)
$imageabs2(100,100,,,,,10,10,$replace(%path%,%filename_ext%,*)


I keep getting the error unknown funtion. Was there another release of info panel after 0.8beta?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-01-18 03:18:29
Does anyone know how to cut down a text to a specific width and adding ... at the end if it's too long? I've searched but I've been unable to find an answer. 

Here is the width I want.
Code: [Select]
$sub($div(%_width%,2),38)


EDIT: Never mind. Found a solution here: http://www.hydrogenaudio.org/forums/index....;p=446174&# (http://www.hydrogenaudio.org/forums/index.php?showtopic=49783&st=0&p=446174&#)


That link doesn't appear to be very specific and I'd like to offer a solution to the problem because I've seen this asked many times.  This can be handled like so:

Code: [Select]
$puts(text,This is a string of text to test with)
$puts(width,$sub($div(%_width%,2),38))

$alignabs(4,4,$get(width),$calcheight(X),,)$get(text)
$ifgreater($calcwidth($get(text)),$get(width),
$alignabs($add(4,$get(width)),4,%_width%,$calcheight(X),,)...
,)


The only drawback to this approach is that there sometimes appears a gap between the last character of the text and the ellipse. If anyone has a better solution please post.

Is there any way to disable wordwrapping?
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-18 05:49:58
Code: [Select]
$if($fileexists($replace(%path%,%filename_ext%,*.jpg)),
$imageabs2($get(size),$get(size),,,,,$get(artX),$get(artY),$replace(%path%,%filename_ext%,*.jpg),),
$imageabs2($get(size),$get(size),,,,,$get(artX),$get(artY),$replace(%path%,%filename_ext%,../*.jpg),))
$if($fileexists($replace(%path%,%filename_ext%,*.png)),
$imageabs2($get(size),$get(size),,,,,$get(artX),$get(artY),$replace(%path%,%filename_ext%,*.png),),
$imageabs2($get(size),$get(size),,,,,$get(artX),$get(artY),$replace(%path%,%filename_ext%,../*.png),))


This is the code I have so far for the album art display.
I am trying to firgure out a way to keep the functionality the way it is but also to display when there is no album art.

Has anyone figured out how to make the progress bar clickable yet?
Title: Track Info Panel with ability to change font
Post by: kabuki on 2007-01-19 11:30:48

i have foo_uie_tabs is there a way to have a button which is not directly linked to one tab but works by:

if displaying tab 1 on click go to tab 2 & if displaying tab 2 on click go to tab 1?


I wanted this too, and there is a main menu command for it (Panel #0 Cycle Forward, 0 may be different), but it doesn't seem to work with trackinfo_mod..?



probably because of the '#'
Trackinfo mod has weird issues with #


Sorry to bump a "more than 1 month agged" question in this topic but there is some kind of solution with the #.
Follow the link to my post in foo_run thread. (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=45223&view=findpost&p=465490)
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-01-19 11:49:46
EDIT: Avoid posting when you are drunk :P
Title: Track Info Panel with ability to change font
Post by: rouge on 2007-01-19 21:15:12
Please fix the bug where the format string edit box in the configuration window scrolls to the when you hit apply.  It makes editing string almost impossible to debug and write scripts at the same time.  Thank you.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2007-01-19 22:20:14
Does anyone know if there is a more accurate way to trim long text. The problem is currently that the more text that is trimmed the more inaccurate it gets. Cuts more than necessary. This is basically what I currently use.

Code: [Select]
$left($get(tracktitle),$sub($sub($len($get(tracktitle)),
$div($sub($calcwidth($get(tracktitle)),$get(areaWidth)),$get(charWidth))),3))'...'
Title: Track Info Panel with ability to change font
Post by: rouge on 2007-01-19 22:24:08
Does anyone know if there is a more accurate way to trim long text. The problem is currently that the more text that is trimmed the more inaccurate it gets. Cuts more than necessary. This is basically what I currently use.

Code: [Select]
$left($get(tracktitle),$sub($sub($len($get(tracktitle)),
$div($sub($calcwidth($get(tracktitle)),$get(areaWidth)),$get(charWidth))),3))'...'


If you're not using a fixed-width font, the string will vary in length.  There's no way to get the length of a string of text in pixels to use for trimming purposes.  Too bad that most fixed-width fonts are ugly.
Title: Track Info Panel with ability to change font
Post by: VeaaC on 2007-01-20 00:19:30

Does anyone know if there is a more accurate way to trim long text. The problem is currently that the more text that is trimmed the more inaccurate it gets. Cuts more than necessary. This is basically what I currently use.

Code: [Select]
$left($get(tracktitle),$sub($sub($len($get(tracktitle)),
$div($sub($calcwidth($get(tracktitle)),$get(areaWidth)),$get(charWidth))),3))'...'


If you're not using a fixed-width font, the string will vary in length.  There's no way to get the length of a string of text in pixels to use for trimming purposes.  Too bad that most fixed-width fonts are ugly.

... and still there is a way 
$calcwidth(text)
Title: Track Info Panel with ability to change font
Post by: rouge on 2007-01-20 03:00:06
Seems counter-intuitive because of differing font sizes. Oh well.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2007-01-20 11:32:08
^Since charWidth is $div($calcwidth(text),$len(text)) you can't make it more accurate without loops I think.
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-21 07:44:14
That link doesn't appear to be very specific and I'd like to offer a solution to the problem because I've seen this asked many times.  This can be handled like so:

Code: [Select]
$puts(text,This is a string of text to test with)
$puts(width,$sub($div(%_width%,2),38))

$alignabs(4,4,$get(width),$calcheight(X),,)$get(text)
$ifgreater($calcwidth($get(text)),$get(width),
$alignabs($add(4,$get(width)),4,%_width%,$calcheight(X),,)...
,)


The only drawback to this approach is that there sometimes appears a gap between the last character of the text and the ellipse. If anyone has a better solution please post.

Is there any way to disable wordwrapping?

It would take some doing to accomplish, but-
1.  create a text box long enough to avoid wordwrapping
2.  if the text is beyond your width limit, overlay the end of it with a PNG that fades from transparent to your background color, and the rest of the text box with a $drawrect the color of you background
3.  optionally add the ellipsis at a point that is visually pleasing.

That should block out the text you don't want to see and add a nice fade effect to the end of your title, etc.
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-21 08:25:47
Or using mil3s's idea, this should get reasonably close -

Code: [Select]
$puts(text,'Text to calculate, ie %title%')
$puts(charWidth,$div($calcwidth($get(text)),$len($get(text))))
$puts(width,$sub($div(%_width%,2),38))

$ifgreater($calcwidth($get(text)),$get(width),
$cut($get(text),$sub($div($get(width),$get(charWidth)),3))'...'
,$get(text))


That should work, right?  Uses average charWidth to determine approximate number of characters to cut the text length.
Title: Track Info Panel with ability to change font
Post by: joule on 2007-01-21 09:26:44
Why is my trackinfo empty when i start foobar, and I have to go into settings and click "apply" to make my buttons reappear?
Title: Track Info Panel with ability to change font
Post by: textured on 2007-01-21 14:34:30
im sure its been remarked before, but woah trackinfo is now so much more than.. a trackinfo panel. what code would i use to make the whole panel respond to mouse clicks? would i have to make the entire thing act like a giant button?
Title: Track Info Panel with ability to change font
Post by: eboomer on 2007-01-21 18:24:05
I'm not sure why the wiki says that.  I use $imageabs2() currently in trackinfo_mod to display albumart and the image will stretch larger if you use NOKEEPASPECT.  See my post about 5 back.

Sorry, I didn't discover that quirk with NOKEEPASPECT.  All fixed in the wiki now. ;-)
Title: Track Info Panel with ability to change font
Post by: ojdo on 2007-01-21 22:49:07
Why is my trackinfo empty when i start foobar, and I have to go into settings and click "apply" to make my buttons reappear?

Try adding a leading '/' to your relative image paths. That did the trick for me.

@Terrestrial: Could you add an option (e.g. "NOCACHE") to the imageabs-functions that enables me to prevent specific images from being cached? At the moment my [a href='index.php?act=findpost&pid=464466']fullscreen config[/a] eats RAM like nothing.
Title: Track Info Panel with ability to change font
Post by: drake on 2007-01-22 02:25:52
i like my solution... its basically wraithdu/mil3s' idea, but lets you define the length of each item

Code: [Select]
$align(center,middle)
$puts(text,[%artist%])
$puts(charWidth,$div($calcwidth($get(text)),$len($get(text))))
$puts(width,$add($div(%_width%,.1),100))

$ifgreater($calcwidth($get(text)),$get(width),
$cut($get(text),$sub($div($get(width),$get(charWidth)),3))'...'
,$get(text))


$puts(text2,[ - %title%])
$puts(charWidth,$div($calcwidth($get(text2)),$len($get(text2))))
$puts(width,$add($div(%_width%,.1),100))

$ifgreater($calcwidth($get(text2)),$get(width),
$cut($get(text2),$sub($div($get(width),$get(charWidth)),3))'...'
,$get(text2))


$puts(text3,[ - %album%])
$puts(charWidth,$div($calcwidth($get(text3)),$len($get(text3))))
$puts(width,$add($div(%_width%,.1),100))

$ifgreater($calcwidth($get(text3)),$get(width),
$cut($get(text3),$sub($div($get(width),$get(charWidth)),3))'...'
,$get(text3))


i'd like to make it so that it judges how to shorten each item based on the total length of the text [%artist%][ - %title%][ - %album%]


and i still think that the easiest way would be to make the font size dependent upon the character length.
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-01-22 03:47:55
I've updated the handling of long song titles in my current config.
Here's the relevant parts:
Code: [Select]
//Display Art?
$if($and($greater(%_width%,400),$fileexists($replace(%path%,%filename_ext%,folder.*))),$puts(position,142),$puts(position,8))

////Main block of text////
$alignabs($get(position),18,$sub(%_width%,$get(position)),$sub(%_height%,54),left,middle)
$font(,16,bold glow-107-132-153,234-232-227)
'#LINEHEIGHT,21#'
%artist%
//cut bracketed info from title if needed
$ifgreater($calcwidth(%title%),$sub(%_width%,$get(position)),$puts(title,$cut(%title%,$sub($strchr(%title%,'['),2))),$puts(title,%title%))
//If the title is still too long, use smaller font
$ifgreater($calcwidth($get(title)),$mul(2,$sub(%_width%,$get(position))),'#LINEHEIGHT,22#'$char(10)'#LINEHEIGHT,14#'$font(,10,bold glow-107-132-153,234-232-227)$get(title),'#LINEHEIGHT,19#'$char(10)$get(title)'#LINEHEIGHT,22#')
$char(10)
'#LINEHEIGHT,14#'
$font(,10,bold glow-107-132-153,234-232-227)%album%

I put any version or mix info found in the track listing in square brackets in the title tag.
I doubt this is exactly to standard, but it really cuts down on a lot of formatting issues, especially with all the bonus content found on reissued CDs.
So, the first step is to trim that bracketed content if it's causing length issues.

If the title is still to long, I then switch to the smaller font.
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-01-22 04:37:52
terrestrial.

Why doesn't track_info_mod update when playback is paused or stopped?
I'd like to be able to use %cwb_systemdatetime% when stopped.
Title: Track Info Panel with ability to change font
Post by: terrestrial on 2007-01-22 06:05:29
Thanks terrestrial. I tried that, but that just deletes everything from the "Bla" playlist. I assume that this is because there are several commands that could be accessed with just the name "Bla" - i.e. the button action "Bla" could be interpreted as "Edit other/Add to specified playlist and play/Bla" or "Edit other/Remove from specified playlist and play/Bla" or "Edit other/Send to specified playlist and play/Bla". So if the button action "Bla" is all that is needed, how do I specify which of these "parent" commands to use?
-Nate


you can't  I've been meaning to rewrite the button to handle paths but haven't had the chance to yet.

Apparently it's been asked already but i didn't find it via the search:
Any chance to have a function for getting image X Y resolutoin?


on the todo list.

@Terrestrial: Could you add an option (e.g. "NOCACHE") to the imageabs-functions that enables me to prevent specific images from being cached? At the moment my [a href='index.php?act=findpost&pid=464466']fullscreen config[/a] eats RAM like nothing.


already on the todo list.

Why doesn't track_info_mod update when playback is paused or stopped?
I'd like to be able to use %cwb_systemdatetime% when stopped.


the "per second" is a bit of a misnomer. it should be "on playback time" which is the notification foobar sends when the track is playing. when paused/stopped no such notifications are sent.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2007-01-22 10:28:55
Feature request. I was wondering if you might consider adding a function to calculate the number of characters in %text to check% that would fit in a specified width. To do this requires the use of a loop which is not possible in scripts.

Code: [Select]
$put(text2,text)
:loop:
$ifgreater or equal($calcwidth(text),$get(areawidth),$put(text2,$left($get(text2),$sub($len($get(text2)),1))) goto :loop:,:endloop:)
:endloop:
$get(text2)


This way it's possible to have much more accurate truncations (...) on long text.
Title: Track Info Panel with ability to change font
Post by: Insolent on 2007-01-22 10:52:16
Feature request. I was wondering if you might consider adding a function to calculate the number of characters in %text to check% that would fit in a specified width. To do this requires the use of a loop which is not possible in scripts.

Code: [Select]
$put(text2,text)
:loop:
$ifgreater or equal($calcwidth(text),$get(areawidth),$put(text2,$left($get(text2),$sub($len($get(text2)),1))) goto :loop:,:endloop:)
:endloop:
$get(text2)


This way it's possible to have much more accurate truncations (...) on long text.

What about non-fixed-width fonts? Obviously, an 'i' takes up less space than say 'B'. I could fit two 'i's in one 'B', if that makes sense.

I think it'd be a lot easier if the component automatically trimmed text when it exceeds the text bounding box, automatically appending '...'. At the moment it just cuts off the last word/s until it fits. [/feature request]
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-01-22 12:14:52
Or how about the ability to disable wordwrapping so that text will be chopped exactly at the end of an $alignabs() window? like maybe $alignabs(4,4,100,10,,nowrap)
Title: Track Info Panel with ability to change font
Post by: nate on 2007-01-22 17:02:01

Thanks terrestrial. I tried that, but that just deletes everything from the "Bla" playlist. I assume that this is because there are several commands that could be accessed with just the name "Bla" - i.e. the button action "Bla" could be interpreted as "Edit other/Add to specified playlist and play/Bla" or "Edit other/Remove from specified playlist and play/Bla" or "Edit other/Send to specified playlist and play/Bla". So if the button action "Bla" is all that is needed, how do I specify which of these "parent" commands to use?
-Nate


you can't  I've been meaning to rewrite the button to handle paths but haven't had the chance to yet.



Ok, gotcha. At least I know it's not just me now  . I'll keep an eye out for updates. Thanks!

-Nate
Title: Track Info Panel with ability to change font
Post by: mil3s on 2007-01-22 18:51:38

Feature request. I was wondering if you might consider adding a function to calculate the number of characters in %text to check% that would fit in a specified width. To do this requires the use of a loop which is not possible in scripts.

Code: [Select]
$put(text2,text)
:loop:
$ifgreater or equal($calcwidth(text),$get(areawidth),$put(text2,$left($get(text2),$sub($len($get(text2)),1))) goto :loop:,:endloop:)
:endloop:
$get(text2)


This way it's possible to have much more accurate truncations (...) on long text.

What about non-fixed-width fonts? Obviously, an 'i' takes up less space than say 'B'. I could fit two 'i's in one 'B', if that makes sense.

I think it'd be a lot easier if the component automatically trimmed text when it exceeds the text bounding box, automatically appending '...'. At the moment it just cuts off the last word/s until it fits. [/feature request]

Maybe you should read the post again or look at the code. This feature would allow better accuracy on non-fixed-width fonts.
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-23 01:17:17
Code: [Select]
 // TrackInfo_Mod
// Put Background RGB colors to 99-39-33 in Settings
$puts(centre,$div(%_width%,2))

$puts(addy,40)
$imageabs2(%_width%,340,0,0,%_width%,340,0,-130,'images4\horizon2.png',alpha-100nokeepaspect)

$imageabs2(339,300,0,0,339,300,25,$add(0,$get(addy)),'images4\cdcase.png',alpha-230nokeepaspect)
$imageabs2(339,250,0,0,339,250,25,$add(301,$get(addy)),'images4\cdcase.png',alpha-230nokeepaspectROTATEFLIP-6)
$imageabs2(292,287,0,0,292,287,61,$add(7,$get(addy)),'images4\nocover.png',alpha-255nokeepaspect)
$imageabs2(292,240,0,0,292,240,61,$add(307,$get(addy)),'images4\nocover.png',alpha-255nokeepaspectROTATEFLIP-6)

$if($fileexists($replace(%path%,%filename_ext%,*.jpg)),
$imageabs2(292,287,0,0,292,287,61,$add(7,$get(addy)),$replace(%path%,%filename_ext%,*.jpg),nokeepaspect)
$imageabs2(292,240,0,0,292,240,61,$add(307,$get(addy)),$replace(%path%,%filename_ext%,*.jpg),nokeepaspectROTATEFLIP-6),
$imageabs2(292,287,0,0,292,287,61,$add(7,$get(addy)),$replace(%path%,%filename_ext%,../*.jpg),nokeepaspect)
$imageabs2(292,240,0,0,292,240,61,$add(307,$get(addy)),$replace(%path%,%filename_ext%,../*.jpg),nokeepaspectROTATEFLIP-6)
)

$imageabs2(350,302,0,0,350,302,20,$add(300,$get(addy)),'images4\reverse_overlay7.png',nokeepaspect)
$imageabs2(300,300,0,0,300,300,59,$add(5,$get(addy)),'images4\reflet300.png',alpha-125)

// Track infos libelles
$alignabs(0,$add(395,$get(addy)),390,38,center,top)
$font(Calibri,9,boldshadow glow-040-040-040 glowalpha-250,180-180-180 glowexpand-2 glowblur-3)'--- playing ---'
$alignabs(0,$add(455,$get(addy)),390,38,center,top)
$font(Calibri,9,boldshadow glow-040-040-040 glowalpha-250,180-180-180glowexpand-2 glowblur-3)'--- from ---'

// Track Infos variables
$alignabs(25,$add(340,$get(addy)),340,48,center,top)
$font(Swis721 Cn BT D-Type,16,boldshadow glow-255-255-255 glowalpha-50,10-10-10)[%artist%]
$alignabs(25,$add(410,$get(addy)),340,38,center,top)
$font(Swis721 Cn BT D-Type,12,boldshadow glow-040-040-040 glowalpha-250,180-180-180)[%title%]
$alignabs(25,$add(469,$get(addy)),340,38,center,top)
$font(Swis721 Cn BT D-Type,12,boldshadow glow-040-040-040 glowalpha-250,180-180-180)
$if(%album%,[%album%],'Unknow Album')
$if(%date%,
$font(Swis721 Cn BT D-Type,12,boldshadow glow-040-040-040 glowalpha-250,180-180-180)' - '[%date%],)

// --- show playback status over the cover ---
$if(%ispaused%,
$imageabs2(0,0,0,0,0,0,320,$add(10,$get(addy)),'.\images4\big_pause.png',),
$imageabs2(0,0,0,0,0,0,320,$add(10,$get(addy)),'.\images4\big_play.png',)
)

// Search cover art and traklists
$button($sub($get(centre),101),8,0,0,64,28,images4\buttons\google0.png,images4\buttons\google1.png,artsearch,)
$button($sub($get(centre),32),8,0,0,64,28,images4\buttons\allmusic0.png,images4\buttons\allmusic1.png,allmusicalbum,)
$button($add($get(centre),37),8,0,0,64,28,images4\buttons\allmusic2.png,images4\buttons\allmusic3.png,allmusicartist,)

// ---- lovely dots buttons ---- //
//
$imageabs2(300,38,0,0,300,38,45,$add(555,$get(addy)),'images4\bg_buttons0.png',)
// PLAY/PAUSE
$button(180,$add(561,$get(addy)),0,0,30,26,
$if($or(%ispaused%,$not(%isplaying%)),images4\buttons\play0.png,images4\buttons\pause0.png),
$if($or(%ispaused%,$not(%isplaying%)),images4\buttons\play1.png,images4\buttons\pause1.png),
$if($or(%ispaused%,$not(%isplaying%)),play,pause)
,)
// RESCAN
$button(52,$add(561,$get(addy)),0,0,30,26,images4\buttons\rescan0.png,images4\buttons\rescan1.png,Rescan Media Library,)
// SEARCH
//$button(69,$add(561,$get(addy)),0,0,30,26,images4\buttons\search0.png,images4\buttons\search1.png,Search,)
$button(84,$add(561,$get(addy)),0,0,30,26,images4\buttons\search0.png,images4\buttons\search1.png,artsearch,)
// PREVIOUS
$button(116,$add(561,$get(addy)),0,0,30,26,images4\buttons\prev0.png,images4\buttons\prev1.png,previous,)
// FAST BACKWARD
$button(148,$add(561,$get(addy)),0,0,30,26,images4\buttons\back0.png,images4\buttons\back1.png,seek back by 10 seconds,)
// FAST FORWARD
$button(212,$add(561,$get(addy)),0,0,30,26,images4\buttons\fwd0.png,images4\buttons\fwd1.png,seek ahead by 10 seconds,)
// NEXT
$button(244,$add(561,$get(addy)),0,0,30,26,images4\buttons\next0.png,images4\buttons\next1.png,next,)
// VIEW PLAYLIST MANAGER
$button(276,$add(561,$get(addy)),0,0,30,26,images4\buttons\libr0.png,images4\buttons\libr1.png,playlist manager,)

// playback order
$if($stricmp(%cwb_playback_order%,'Repeat (track)'),
$button(308,$add(561,$get(addy)),0,0,30,26,images4\buttons\rpt0.png,images4\buttons\seq1.png,'Repeat (playlist)',)
)
$if($stricmp(%cwb_playback_order%,'Repeat (playlist)'),
$button(308,$add(561,$get(addy)),0,0,30,26,images4\buttons\seq0.png,images4\buttons\rand1.png,'Shuffle (tracks)',)
)
$if($stricmp(%cwb_playback_order%,'Shuffle (tracks)'),
$button(308,$add(561,$get(addy)),0,0,30,26,images4\buttons\rand0.png,images4\buttons\rpt1.png,'Repeat (track)',)
)

// overlay (bottom)
$imageabs2(%_width%,340,0,0,%_width%,340,0,460,'images4\horizon2.png',alpha-100nokeepaspectROTATEFLIP-6)

$puts(write_tags,%rating%)
$puts(back,$rgb(105,26,26))
$puts(active,$rgb(250,250,150))

// rating system
$if($get(write_tags),$puts(rating,%rating%),$puts(rating,$cinfo(RATING)))
$if($get(write_tags),$puts(mood,%mood%),$puts(mood,$cinfo(MOOD)))
$alignabs(147,$add(515,$get(addy)),%_width%,%_height%,,)$font(wingdings,16,normal glow-255-125-05 glowexpand-1 glowblur-2,255-255-165)
$get(active)$repeat($char(171),$get(rating))
$font(wingdings,16,,)
$get(back)$repeat($char(171),$sub(5,$get(rating)))

// buttons rating
$button2(147,$add(515,$get(addy)),0,0,13,17,,,$if($get(write_tags),TAG:SET:Rating:1,'Heart 1'),)
$button2(167,$add(515,$get(addy)),0,0,13,17,,,$if($get(write_tags),TAG:SET:Rating:2,'Heart 2'),)
$button2(187,$add(515,$get(addy)),0,0,13,17,,,$if($get(write_tags),TAG:SET:Rating:3,'Heart 3'),)
$button2(207,$add(515,$get(addy)),0,0,13,17,,,$if($get(write_tags),TAG:SET:Rating:4,'Heart 4'),)
$button2(227,$add(515,$get(addy)),0,0,13,17,,,$if($get(write_tags),TAG:SET:Rating:5,'Heart 5'),)

// PerSecond

$puts(addy,39)

$alignabs(45,$add(528,$get(addy)),300,20,left,top)$font(Calibri,8,,140-135-130)[%playback_time%]
$alignabs(67,$add(528,$get(addy)),278,20,right,top)$font(Calibri,8,,140-135-130)[%length%]

$drawrect(45,$add(542,$get(addy)),300,8,brushcolor-null pencolor-120-115-110)

$puts(percent,$muldiv(%_time_elapsed_seconds%,100,
%_time_total_seconds%))
$if($greater($get(percent),0),
$drawrect(47,$add(544,$get(addy)),$muldiv($get(percent),295,100),4,
brushcolor-150-20-20 pencolor-null))


Can anyone tell me why it won't update the playorder button each click? It only changes the image when you change tracks.
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-23 03:19:40
I'm not 100% on this, but you need

// PerTrack

somewhere before your button code.  I always use all the headings -

// Global
// Background
// PerTrack
// PerSecond

even if I don't have anything in that section.  Check the wiki for what goes where (buttons go under PerTrack).
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-23 03:50:20
I found a graphical bug (probably unrelated to the SCP bug mentioned).  When blurring a rectangle, the bottom of the image is not rendered correctly.  See the code and image below.

Code: [Select]
$drawrect(10,10,150,150,brushcolor-255-255-255 pencolor-255-255-255)
$drawrect(170,10,150,150,brushcolor-255-255-255 pencolor-255-255-255 blur-1)


(http://img101.imageshack.us/img101/2745/squares7ft.th.png) (http://img101.imageshack.us/my.php?image=squares7ft.png)
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-23 06:52:07
I'm not 100% on this, but you need

// PerTrack

somewhere before your button code.  I always use all the headings -

// Global
// Background
// PerTrack
// PerSecond

even if I don't have anything in that section.  Check the wiki for what goes where (buttons go under PerTrack).


If I place the buttons behind the // PerSecond the buttons disappear.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-01-23 07:15:02
Buttons can not be in the // Background section. This much I am fairly certain, however they should work in the // PerTrack section as I use that myself.
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-23 08:10:46
Buttons can not be in the // Background section. This much I am fairly certain, however they should work in the // PerTrack section as I use that myself.


I've moved it below the // PerSecond thing and it does nothing but make the button disappear.
Title: Track Info Panel with ability to change font
Post by: odyssey on 2007-01-23 08:29:00
Three "bugs" (annoyances):

1. You can't bring foobar2000 to front if a trackinfo-panel are clicked
2. Often you are unable to click buttons on windows appearing over a trackinfo-panel (mostly the prefs-window)
3. If you drag files from explorer over a trackinfo-panel, they are immedately dropped
Title: Track Info Panel with ability to change font
Post by: Bellfazar on 2007-01-23 09:16:47
I'm trying to figure out two things.  First, I'd like to create a button that toggles a dockable panel but I'm not quite sure how to do it.  I want to be able to test for whether or not the panel is activated and if it is, have it so the button closes the panel.  If the panel isn't activated, I want to be able to open it via the button.

This same sort of thing applies to my other question.  I want to create a button that toggles between shuffling tracks and the default track order.  Again, I want to be able to test the state of the track order so that I can have the correct button display.  It was easy enough to do it for a play/pause button using $ispaused and $not(%isplaying%), but I can't figure out how to do it for track order.

Anyone have any ideas?
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-23 17:38:16
I've moved it below the // PerSecond thing and it does nothing but make the button disappear.

Buttons must go in the // PerTrack section.  If it's under // PerSecond, that's not // PerTrack anymore.

I'm trying to figure out two things.  First, I'd like to create a button that toggles a dockable panel but I'm not quite sure how to do it.  I want to be able to test for whether or not the panel is activated and if it is, have it so the button closes the panel.  If the panel isn't activated, I want to be able to open it via the button.

This same sort of thing applies to my other question.  I want to create a button that toggles between shuffling tracks and the default track order.  Again, I want to be able to test the state of the track order so that I can have the correct button display.  It was easy enough to do it for a play/pause button using $ispaused and $not(%isplaying%), but I can't figure out how to do it for track order.

Anyone have any ideas?


From the wiki -

"The following returns a sort index of the field, ie if the playlist is sorted first by genre, then artist, then by album, $sorted(artist) will return 3. If the playlist is not sorted by 'field' through the SORT command described above, then $sorted(field) will be evaluated as false and produce '[UNKNOWN FUNCTION]' as text output.

$sorted(field)"

Using $sorted() you can test if the playlist uses a certain sort string, ie $if($sorted(Artist),....,.....).  Bear in mind that $sorted() test for the NAME, not the VALUE in name_1|value_1.
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-23 18:08:55
If the button is in per track how do I get it to update immediatly after clicking the button. My playback button doesn't update until track change and I want it to toggle the playback continuously until the esired playback is found.
Title: Track Info Panel with ability to change font
Post by: Bellfazar on 2007-01-23 18:36:44
From the wiki -

"The following returns a sort index of the field, ie if the playlist is sorted first by genre, then artist, then by album, $sorted(artist) will return 3. If the playlist is not sorted by 'field' through the SORT command described above, then $sorted(field) will be evaluated as false and produce '[UNKNOWN FUNCTION]' as text output.

$sorted(field)"

Using $sorted() you can test if the playlist uses a certain sort string, ie $if($sorted(Artist),....,.....).  Bear in mind that $sorted() test for the NAME, not the VALUE in name_1|value_1.


I have absolutely no idea what this means.
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-23 20:06:34
I have absolutely no idea what this means.

My mistake.  I thought you were talking about sorting your playlist.  You meant changing the playback order.

I think what you need is -

Code: [Select]
$button2(DstX,DstY,X,Y,W,H,TEXT,HOVER TEXT,COMMAND,OPTIONS)


where COMMAND is anything from this list - http://wiki.hydrogenaudio.org/index.php?ti...Main_Menu_Items (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Commandline_Guide#Main_Menu_Items)

# Playback/Order/Default
# Playback/Order/Random
# Playback/Order/Repeat
# Playback/Order/Repeat One
# Playback/Order/Shuffle
# Playback/Order/Shuffle album
# Playback/Order/Shuffle album 2
# Playback/Order/Shuffle tag set

For example
Code: [Select]
$button2(DstX,DstY,X,Y,W,H,TEXT,HOVER TEXT,'Shuffle (tracks)',)


You can use %cwb_playback_order% to return what the current playback order is (available with foo_cwb_hooks, and only returns a value while a song is playing).

EDIT - it seems some of the commands in the list are out of date with foobar 0.9.  Basically just look in the menu, and the command should have the same syntax, ie 'Shuffle (tracks)'.
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-23 20:42:25
If the button is in per track how do I get it to update immediatly after clicking the button. My playback button doesn't update until track change and I want it to toggle the playback continuously until the esired playback is found.

This works for me, as long as a song is playing or paused.  If it is stopped, then %cwb_playback_order% has no value.  But when playing, the button updates as it should.
Code: [Select]
// Global
// Background
// PerTrack
$if($strcmp(%cwb_playback_order%,'Default'),
$button2(5,5,0,0,50,20,'shuffle','SHUFFLE','Shuffle (tracks)',)
,
$button2(5,5,0,0,50,20,'default','DEFAULT','Default',)
)

// PerSecond
$alignabs(5,30,500,20,left,middle)
%cwb_playback_order%
Title: Track Info Panel with ability to change font
Post by: Bellfazar on 2007-01-23 22:36:25
You can use %cwb_playback_order% to return what the current playback order is (available with foo_cwb_hooks, and only returns a value while a song is playing).


That's exactly what I was looking for.  Thanks!

Now that I've got that done, I have one last thing I'm trying to figure out, but it may be impossible.  I want to test whether or not an item in the menus is selected.  For example, foo_dockable_panels has a submenu in the View menu that allows you to activate and collapse panels.  I want to be able to toggle it open and closed with a button.  Luckily, it turns out this doesn't require any iterative statements to determine whether the panel is open or not, I just have to figure out how to actually activate this particular menu option.  Does anyone know what I'm talking about? (I had trouble explaining it well)  And if so, any advice?

Edit: I was able to create a keyboard shortcut for this action, I just can't figure out how to tie it to a button.  I feel like this should be easier than I'm making it.
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-23 23:11:31
You can use %cwb_playback_order% to return what the current playback order is (available with foo_cwb_hooks, and only returns a value while a song is playing).


That is exactly what I needed too. Thank you.

Is there a way to make scrolling lyrics in the track panel? I have been experiemnting for some time without actually getting them to scroll with the song similar to the actual lyrics panel. Thanks for any help.
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-24 00:35:56
Code: [Select]
$puts(percent,$muldiv(%_time_elapsed_seconds%,100,
%_time_total_seconds%))
$puts(hgt,$calcheight(%lyrics%))
$if($meta_test(lyrics),
$alignabs(0,$div($sub(%_height%,$muldiv($get(percent),%_height%,50)),3),%_width%,$mul($get(hgt),96),center,top)
$font(Calibri,$sub(24,$get(hgt)),,)
%lyrics%,
$align(center,middle)
%artist% - %title%)


I have scrolling lyrics working for the most part I have only tested it with one album and it paces itself relativly well with the song but its not quite perfect.
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-24 02:44:29
I just realized that in oder to make the lyrics to scroll properly I need a function that can either get the number of lines in a given field or return the total number of pixels a particular text has. Pixels would be preferrable.
something like:

$textPx(text)
$textPy(text)
or
$lines(text)

That way I can Identify the bottom of the lyrics by the number of pixles or lines it has in order to make it move at that particular rate.
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-24 03:40:57
I just realized that in oder to make the lyrics to scroll properly I need a function that can either get the number of lines in a given field or return the total number of pixels a particular text has. Pixels would be preferrable.
something like:

$textPx(text)
$textPy(text)
or
$lines(text)

That way I can Identify the bottom of the lyrics by the number of pixles or lines it has in order to make it move at that particular rate.

$calcwidth(text) and $calcheight(text) do return the width and height in pixels.  $len(text) will return the length of a string in characters.  But I don't think there is a function to return the number of lines a paragraph takes up.
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-24 09:27:05

I just realized that in oder to make the lyrics to scroll properly I need a function that can either get the number of lines in a given field or return the total number of pixels a particular text has. Pixels would be preferrable.
something like:

$textPx(text)
$textPy(text)
or
$lines(text)

That way I can Identify the bottom of the lyrics by the number of pixles or lines it has in order to make it move at that particular rate.

$calcwidth(text) and $calcheight(text) do return the width and height in pixels.  $len(text) will return the length of a string in characters.  But I don't think there is a function to return the number of lines a paragraph takes up.


I noticed that but its not helping the situation. $calcheight() and $calcwidth() both give you the pixles but only for the pt size of the font.
Title: Track Info Panel with ability to change font
Post by: thelightguy on 2007-01-24 09:46:21
Hmmm... The wiki says that you can use "PVAR:SET:variable:value" in a button to set globals, but I can't seem to get it to work.  I'm trying to make an info-panel that can be toggled on and off.

Sample:
Code: [Select]
$if($get(ShowDetails,
$button2(4,4,0,0,100,50,'$font(,24pt,,192-0-0)Details','$font(,24pt,,255-255-255)Details','PVAR:SET:ShowDetails:0',)
Genre: %genre%[and so on...],
$button2(4,4,0,0,100,50,'$font(,24pt,,192-0-0)Details','$font(,24pt,,255-255-255)Details','PVAR:SET:ShowDetails:1',))


Even doing something as simple as setting the button to assign a value to any variable, and then using $get() to read it returns null every time.
Title: Track Info Panel with ability to change font
Post by: Cyex on 2007-01-24 14:21:34
foo_dockable_panels has a submenu in the View menu that allows you to activate and collapse panels. I want to be able to toggle it open and closed with a button

Code: [Select]
$button(4,32,0,0,7,7,/images\switch_01.png,/images\switch_02.png,collapse,)
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-24 16:47:40
Hmmm... The wiki says that you can use "PVAR:SET:variable:value" in a button to set globals, but I can't seem to get it to work.  I'm trying to make an info-panel that can be toggled on and off.

Sample:
Code: [Select]
$if($get(ShowDetails,
$button2(4,4,0,0,100,50,'$font(,24pt,,192-0-0)Details','$font(,24pt,,255-255-255)Details','PVAR:SET:ShowDetails:0',)
Genre: %genre%[and so on...],
$button2(4,4,0,0,100,50,'$font(,24pt,,192-0-0)Details','$font(,24pt,,255-255-255)Details','PVAR:SET:ShowDetails:1',))


Even doing something as simple as setting the button to assign a value to any variable, and then using $get() to read it returns null every time.

I see two things right off.  Your first line $get() function needs a close parenthesis - $get(ShowDetails)

Second, the wiki says -
"Sets a persistent variable - a variable that is recognized throughout the Trackinfo pannel mod and can be changed through buttons."
It seems to me this is a variable just for the Trackinfo panel mod, not a true ColumnsUI global variable.
Title: Track Info Panel with ability to change font
Post by: thelightguy on 2007-01-24 20:12:07
I see two things right off.  Your first line $get() function needs a close parenthesis - $get(ShowDetails)

Second, the wiki says -
"Sets a persistent variable - a variable that is recognized throughout the Trackinfo pannel mod and can be changed through buttons."
It seems to me this is a variable just for the Trackinfo panel mod, not a true ColumnsUI global variable.


Oops... I must have deleted that parenthesis while I was cutting and pasting... it's in my actual config.

And I'm just looking to pick it up in various (1 or 2) spots within trackinfo_mod... I could care less if it shows up in SCP or anywhere else in columnsUI, it's just supposed to toggle a details display within the trackinfo panel, yet I can't read the variable anywhere... unless I'm using the wrong function?
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-24 21:41:46
And I'm just looking to pick it up in various (1 or 2) spots within trackinfo_mod... I could care less if it shows up in SCP or anywhere else in columnsUI, it's just supposed to toggle a details display within the trackinfo panel, yet I can't read the variable anywhere... unless I'm using the wrong function?

Try this -
Code: [Select]
// Global
// Background

// PerTrack


$ifequal($getpvar(ShowDetails),1,
$button2(4,4,0,0,100,50,'$font(,24,,192-0-0)Details','$font(,24,,255-255-255)Details','PVAR:SET:ShowDetails:0',)
$alignabs(4,75,%_width%,%_height%,left,top)$font(calibri,12,bold,255-255-255)'DETAILS TEXT',
$button2(4,4,0,0,100,50,'$font(,24,,192-0-0)Details','$font(,24,,255-255-255)Details','PVAR:SET:ShowDetails:1',))
$align(left,bottom)'ShowDetails = '$getpvar(ShowDetails)

// PerSecond


The functions $get() and $getpvar() are separate and exclusive.  PVAR:SET change the $getpvar() function.  I'll have to edit the wiki when I get a chance, but this is from the release notes in the latest version of trackinfo_mod -
Code: [Select]
+ Persistant variables & button to set values PVAR:SET:name:val : (example)
    $puts(val,$if2($getpvar(val),0))
    $align(left,bottom)$get(val)
    $button2(20,50,0,0,50,10,Add,Add,PVAR:SET:val:$add($get(val),1),)
Title: Track Info Panel with ability to change font
Post by: Gretchen_Ross on 2007-01-24 22:44:45
(moderation: removed unnecessary full quote)



HELLO

Is there a way to add a heading for Composer to song info that would only show when then composer is different than the artist?
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-01-24 23:22:45
yes. It's called an $if() statement.
Title: Track Info Panel with ability to change font
Post by: c0utta on 2007-01-25 00:09:39
Hi guys,

I'm not sure whether this has already been done by someone else, but I wanted to implement horizontal scrolling of text and have come up with a method.  Essentially, it uses the fact that alignabs() can take negative values.

As the time elapses, the "left" value in alignabs() becomes more (or is that less?) negative and gives the appearance of scrolling across.  One of the tricks is to repeat the desired string so it's long enough to allow scrolling for the entire length of the song.

For example, Rock & Rock Aint' Noise Pollution would become:

Rock & Rock Aint' Noise Pollution  Rock & Rock Aint' Noise Pollution  Rock & Rock Aint' Noise Pollution

and would give the appearance of scrolling across, pixel by pixel.

The limitation is that it will scroll across the entire width of the track info - this is what I wanted anyway. 

Apologies to anyone who has already described this, but I couldn't find anything using the search.  I'm sure someone more adept at track info design will be able to extend this.

Cheers,

c0utta

Code: [Select]
// make sure you've set your font beforehand so measurements are correct
// put your text you want to scroll here
$puts(txt,"$meta(title)")
// put the rate of scrolling here
$puts(rate,3)

$ifgreater($calcwidth($get(txt)),%_width%,
$puts(tot,$add(%_width%,$mul(%_time_total_seconds%,$get(rate))))
$puts(txt,$repeat($get(txt)'     ',$add(1,$div($get(tot),$calcwidth($get(txt))))))
$alignabs($sub(0,$mul(%_time_elapsed_seconds%,$get(rate))),6,$add(%_width%,$calcwidth($get(txt))),30,left,)
,$alignabs(0,6,%_width%,30,center,))
[$get(txt)]
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-25 04:19:42
The limitation is that it will scroll across the entire width of the track info - this is what I wanted anyway.

You could get around this by covering whatever portion of the trackinfo panel you don't want to see the scrolling text with a $drawrect() the color of your background.  That way the text scrolls behind the rectangle and disappears.  If you really want to get fancy you could position a PNG graphic that fades from transparent to solid at the edges of the scrolling text so it fades away all cool like.  Nice code.
Title: Track Info Panel with ability to change font
Post by: thelightguy on 2007-01-25 05:23:22
Try this -


The functions $get() and $getpvar() are separate and exclusive.  PVAR:SET change the $getpvar() function.  I'll have to edit the wiki when I get a chance, but this is from the release notes in the latest version of trackinfo_mod -


Ah, thanks! That explains it.
Title: Track Info Panel with ability to change font
Post by: Erich w/ an h on 2007-01-25 22:08:08
Some quick questions. Im working on a layout, and Ive had a few things come up:

1> I have a progress bar that works well. What I want to do with it, though, is put an overlapping text to it. Thats easy, but I want to make the text change color at the same time as the progress bar. The code I have, in theory, should work, but trackinfo_mod seems to clip text that doesnt fit within its defined box. Is there a way to define a containing box for text thats smaller than the text itself, yet still show the partial text? Here's my code:

Code: [Select]
// Global

$puts(color1,105-9-10)
$puts(color2,229-151-149)
$puts(color3,247-247-247)

$puts(proglen,162)
$puts(progcalc,$left($num($div($mul(%_time_elapsed_seconds%,$mul($get(proglen),10)),%length_seconds%),4),3))
$ifgreater(1,$get(progcalc),$puts(progcalc,1),)

$puts(prog1,$drawrect(0,0,$get(proglen),16,pencolor-0-0-0 brushcolor-$get(color3) width-1))
$puts(prog2,$drawrect(0,0,$get(progcalc),16,pencolor-0-0-0 brushcolor-$get(color1) width-1))
$puts(prog3,$alignabs(0,0,$get(proglen),16,$get(proglen),16)$font(verdana,8,,$get(color1))Progress)
$puts(prog4,$alignabs(0,0,$get(progcalc),16,0,0)$font(verdana,8,,$get(color2))Progress)

// PerTrack


// PerSecond

$get(prog1)$get(prog3)
$get(prog2)$get(prog4)

$get(prog3) stays hidden until its the length of the string "Progress", and I want to circumvent that.

PS - I scripted that progress bar myself. Did I use any extraneous code that can be consolidated? Thx

2> $button2 doesnt seem to want to work with my panels. If I use the example code on hydrogen's wiki page for info_mod:

Code: [Select]
// Global

$button2(0,0,0,0,30,13,$font(tahoma,8,,0-0-0)Forward,$font(tahoma,8,underline,0-0-0)Forward,'Seek ahead by 10 seconds',)

I get this:

(http://img452.imageshack.us/img452/9006/button29am.gif)

needless to say, the button doesnt work either. If i remove the font tags, sometimes it works with plain text, other times the text is hidden but the button works if you find it through blind clicking (default text black, white background). Can someone tell me what Im doing wrong? I got the img buttons to work fine, but I want text buttons for certain things and its not exactly working for me.

3> Not all the button commands seem to want to work for me. I must be doing something wrong here. For example, my playback order buttons. Default works, but Repeat doesnt, and either does Repeat one or 'Repeat one'.

works:

$button(13,175,0,0,21,17,D:\Erich\mugglenet\poll1.gif,D:\Erich\mugglenet\poll2.gif,Default,)
$alignabs(35,177,162,16,162,16)$font(verdana,8,,247-247-247)Default

Doesnt work:

$button(13,195,0,0,21,17,D:\Erich\mugglenet\poll1.gif,D:\Erich\mugglenet\poll2.gif,'Repeat playlist',)
$alignabs(35,197,162,16,162,16)$font(verdana,8,,247-247-247)Repeat

The buttons show, and the mouseover works fine, but the command does nothing. Any help?

anyone reading this, thank you kindly for your time.

~E
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-26 05:11:56
2> $button2 doesnt seem to want to work with my panels. If I use the example code on hydrogen's wiki page for info_mod:

Code: [Select]
// Global

$button2(0,0,0,0,30,13,$font(tahoma,8,,0-0-0)Forward,$font(tahoma,8,underline,0-0-0)Forward,'Seek ahead by 10 seconds',)


You need single quotes around the font and text statement -
Code: [Select]
$button2(0,0,0,0,30,13,'$font(tahoma,8,,0-0-0)Forward','$font(tahoma,8,underline,0-0-0)Forward','Seek ahead by 10 seconds',)


3> Not all the button commands seem to want to work for me. I must be doing something wrong here. For example, my playback order buttons. Default works, but Repeat doesnt, and either does Repeat one or 'Repeat one'.


Your commands must match exactly what you see in the foobar context or main menus.  For example -
Code: [Select]
'Repeat (playlist)'
'Repeat (track)'
'Shuffle (tracks)'
'Shuffle (albums)'
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-26 05:45:11
1> I have a progress bar that works well. What I want to do with it, though, is put an overlapping text to it. Thats easy, but I want to make the text change color at the same time as the progress bar. The code I have, in theory, should work, but trackinfo_mod seems to clip text that doesnt fit within its defined box. Is there a way to define a containing box for text thats smaller than the text itself, yet still show the partial text? Here's my code:

$get(prog3) stays hidden until its the length of the string "Progress", and I want to circumvent that.


I've been racking my brain on this one, and I can't figure a solution using text and $drawrect().

But you could use images to accomplish this.  Make your first and last state progress bar images, then use $imageabs2() to crop the top image accordingly to reveal it as the song progresses.  This also gives you the flexibility to use something flashier than text in your progress bar - gradients, background images, etc.  Sorry I don't have a better solution for you.
Title: Track Info Panel with ability to change font
Post by: Erich w/ an h on 2007-01-26 10:54:46
I'll get back to you on everything later today, but for now, thank you kindly
Title: Track Info Panel with ability to change font
Post by: Crusoli on 2007-01-26 12:23:53
I'm using %cwb_systemdatetime% in one of my trackinfo panels. Unfortunately it doesnt update the time if playback is paused. Is that problem related to Trackinfo_mod or cwb_hooks?
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-01-26 14:41:16
Hi.
two pages ago (http://www.hydrogenaudio.org/forums/index.php?showtopic=47044&st=925#)
Please search the topic before asking questions. It makes life easier for everyone.
Title: Track Info Panel with ability to change font
Post by: nate on 2007-01-26 19:15:13
apologies if this has been answered here before, but is it possible to have trackinfo mode (Follow cursor vs. Now Playing) controlled by a button as opposed to the right-click menu? I had gotten used to doing that by doubleclicking the panel, and now that I've updated my dll that behavior is gone

-Nate
Title: Track Info Panel with ability to change font
Post by: metal_termite on 2007-01-26 20:21:51
A serious suggestion to improve the Trakinfo configuration window: The inclusion of a simple drop down list that contains ALL Trackinfo_mod functions
That's it. Hope it is taken into consideration.
Title: Track Info Panel with ability to change font
Post by: mil3s on 2007-01-26 20:59:43
^I think that configuration window looks great. There is still room for more improvement though. The color code stuff and the Edit button could be removed imo.
Title: Track Info Panel with ability to change font
Post by: Crusoli on 2007-01-26 21:32:47
Hi.
two pages ago (http://www.hydrogenaudio.org/forums/index.php?showtopic=47044&st=925#)
Please search the topic before asking questions. It makes life easier for everyone.


Oops, sorry. Thanks for the link.

Any chance of getting a "real" per-second in one of the next versions?
Title: Track Info Panel with ability to change font
Post by: drake on 2007-01-26 23:42:32
hey,firstoff...myspacebar'sbroken.sorryaboutthat.


anyway,.how.would.i.be.able.to.make.backgroundimages.in.
trackinfo.mod.change.when.the.song.changes?
how.do.i.make.it.take.random.images.from.a.specified.folder.without.
specifying.the.name.of.each.image?
Title: Track Info Panel with ability to change font
Post by: Garfield4 on 2007-01-27 01:46:34
My idea is to have blank space at the bottom of the panel which when hovered over shows selected info - here's my code:
Quote
$if(%rating%,
$button2(120,20,0,0,110,50,'$font(tahoma,18,,235-235-235) ','$font(tahoma star,18,,235-235-235)%rating%',,))


what I'd like to do replace the number that appears on mouse over with a star from the tahoma star font i'm using - here is that code:

Code: [Select]
$if(%rating%,
$rgb(235,235,235))
$select(%rating%,
★,
★★,
★★★,
★★★★,
★★★★★)
)
)


But can't figure how to get the two pieces of code to talk to each other- so that it works...

Thanks in advance
Title: Track Info Panel with ability to change font
Post by: Insolent on 2007-01-27 05:43:01
A serious suggestion to improve the Trakinfo configuration window: The inclusion of a simple drop down list that contains ALL Trackinfo_mod functions
  • It would be a simple and efficient way to help users keep up with added features and to familiarize themselves with all the functions and syntax. I know someone will say "thats what the Wiki is for," "just read the changelog." Both of which are quite tedious in comparison when all you need is a reference to a list of functions.
  • How would this drop down list work? Well, the list of functions could be sorted in alphabetical order. On selection and click of an 'Insert' button, the function is added by the cursor position in the formatting string window. The selected function would be added with its parameters defined.  For example, if a user selected $font from the drop-down list, the following would be added to the formatting strong window: $font(NAME,SIZE,OPTIONS,COLOR)
  • Pictures are worth a thousand words so here is what the proposed config would look like...
That's it. Hope it is taken into consideration.

Hmm, good idea. I think, like mil3s said, the Edit button and Colour code stuff can be scrapped. I think another nice addition would be separate tabs for each redraw type.

(http://img254.imageshack.us/img254/9708/trackinfomockupcf4ab0.png)
Title: Track Info Panel with ability to change font
Post by: thelightguy on 2007-01-27 07:53:57
Hmm, good idea. I think, like mil3s said, the Edit button and Colour code stuff can be scrapped. I think another nice addition would be separate tabs for each redraw type.

http://img254.imageshack.us/img254/9708/tr...ockupcf4ab0.png (http://img254.imageshack.us/img254/9708/trackinfomockupcf4ab0.png)


No love for the edit button?    I've been using it to launch textpad so I can use the syntax higlighting to make sure I closed all my functions and what not.  Oh well, I can always just cut and paste, but that's an extra step.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-01-27 10:02:13
anyway,.how.would.i.be.able.to.make.backgroundimages.in.
trackinfo.mod.change.when.the.song.changes?
how.do.i.make.it.take.random.images.from.a.specified.folder.without.
specifying.the.name.of.each.image?


First you would need to move the code for your background images under a // PerTrack header, but to continue to appear in the background they will need to be toward the top of your code. Now, to make the images "random" you will need to come up with a naming scheme for your images that can be referenced with a $rand() command. For example:

Code: [Select]
// PerTrack
$imageabs2(%_width%,%_height%,,,,,0,0,/images\background$rand(9).*,)

With images named background0.jpg, background1.gif, background9.png, etc. placed in your foobar images directory.

No love for the edit button?  :(  I've been using it to launch textpad so I can use the syntax higlighting to make sure I closed all my functions and what not.  Oh well, I can always just cut and paste, but that's an extra step.

I too find the color code box and edit button rather worthless. I tend to use the colors in $font() instead of $rgb(), and the edit button doesn't import the notepad document when you are done so you have to copy/paste anyway.

I do, however, very much like the idea of having separate tabs for // Background, // PerTrack, // PerSecond, etc. but how do you dictate which code is processed in what order? Sometimes I want // PerSecond code to be rendered before // PerTrack code and visa versa. However I think the separate tabs would make things much more intuitive and could easily adapt.  Since we are on the topic of redesigning the configuration window can we pretty please with sugar on top have a resizable window? The window is so tiny on my 2048x1536 display and the ability to stretch the window from the corner like most other windows to reveal more edit space would be lovely.
Title: Track Info Panel with ability to change font
Post by: thelightguy on 2007-01-28 01:42:56
Actually, saving it in notepad updates it in the edit box when you press apply.  But yeah, I'll second the resizeable window... and the colour button is basically useless for me.
Title: Track Info Panel with ability to change font
Post by: Decuman on 2007-01-28 10:26:54
Hey guys!

I have a context menu item Edit Other > Insert into Playlist > Playlist_Name
where Playlist_Name is the name of any existing playlist. When i'm trying to create a button to move currently playing track into a playlist the following code doesn't work at all:

$button($sub(%_width%,35),70,0,0,32,32,c:\Program Files\foobar2000\images\move2pl.png,c:\Program Files\foobar2000\images\move2pl_.png,'Edit Other/Insert into Playlist/Playlist_Name',)

... however I have some other buttons which run the commands from context menu with no problem i.e. some commands form it work OK.


Thanks in advance!


UPDATE: Just found a post regarding it two pages back... so it is not really possible to do
Title: Track Info Panel with ability to change font
Post by: drake on 2007-01-28 18:32:16
why do none of these awesome trackinfo-mod codes work for me?

is 0.8.0 beta the latest version or not?
Title: Track Info Panel with ability to change font
Post by: honza on 2007-01-28 18:55:51
Hi,
I'm new to Foobar, so I have to ask.
I have several panels in Tabbed panel stack mod.
I'd like to create "switching tab button".
I expect something like this, but I'm not sure with syntax and so on.

Code: [Select]
$if (Single viev,
$button(150,1,0,0,22,21,image,hover, Album View,),
$button(150,1,0,0,22,21,image,hover, Single View,)
)


I've tried to serch solution, or some good reference manual but without succes.
Thanks for help....
Title: Track Info Panel with ability to change font
Post by: Garfield4 on 2007-01-28 19:04:45
why do none of these awesome trackinfo-mod codes work for me?

is 0.8.0 beta the latest version or not?


Yes it is the latest version - do you have MS Visual C++ 2005 Runtime Library installed? ( link on 1st post)

Perhaps post the code your working with & we can help you from there...
Title: Track Info Panel with ability to change font
Post by: drake on 2007-01-28 19:45:54
i figured it out
Title: Track Info Panel with ability to change font
Post by: zhdali on 2007-01-28 23:29:28
Hi, i'm new, in these days i'm still configuring my foobar and do some test on trackinfomod panel.

I want emulate the "playback order bar" in trackinfo panel, but i have some problems:

If i use the $button2() function i can't write any name containing parenthesis, for example 'shuffle (tracks)' or

use $get() for some variables on the contrary if i write the code without the button function i not have problems.

Not know how explain exactly my problem (not speak english very well), perhaps i not write the correct syntax

i need help.

I put the two examples:

1) working but i not can use parenthesis
2) Working (not complete, only for test) without $button use

Code: [Select]
///////////1

$button2(5,150,0,0,200,40,
'$font(lcd2 bold,10,,255-167-47)$upper(%cwb_playback_order%)',
$if($strcmp(%cwb_playback_order%,'Default'),
    '$font(lcd2 bold,10,,128-0-255)REPEAT PLAYLIST',
    $if($strcmp(%cwb_playback_order%,'Repeat (playlist)'),
        '$font(lcd2 bold,10,,128-0-255)'REPEAT TRACK'',
        $if($strcmp(%cwb_playback_order%,'Repeat (track)'),
            '$font(lcd2 bold,10,,128-0-255)'SHUFFLE ALBUMS'',
            $if($strcmp(%cwb_playback_order%,'Shuffle (albums)'),
                '$font(lcd2 bold,10,,128-0-255)'SHUFFLE DIRECTORIES'',
                $if($strcmp(%cwb_playback_order%,'Shuffle (directories)'),
                    '$font(lcd2 bold,10,,128-0-255)'SHUFFLE TRACKS'',
                    $if($strcmp(%cwb_playback_order%,'Shuffle (tracks)'),
                        '$font(lcd2 bold,10,,128-0-255)'DEFAULT'',
                    )
                )
            )
        )
    )
),
$if($strcmp(%cwb_playback_order%,'Default'),
    'Repeat (playlist)',
    $if($strcmp(%cwb_playback_order%,'Repeat (playlist)'),
        'Repeat (track)',
            $if($strcmp(%cwb_playback_order%,'Repeat (track)'),
            'Shuffle (albums)',
                $if($strcmp(%cwb_playback_order%,'Shuffle (albums)'),
                'Shuffle (directories)',
                    $if($strcmp(%cwb_playback_order%,'Shuffle (directories)'),
                    'Shuffle (tracks)',
                        $if($strcmp(%cwb_playback_order%,'Shuffle (tracks)'),
                        'Default',
                        )
                    )
                )
            )
    )
)
,
)


///////////2
$puts(Evidenziato,$font(lcd2 bold,10,,128-0-255))

$alignabs(10,250,150,25,,)
$if($strcmp(%cwb_playback_order%,'Default'),
    $get(evidenziato)'REPEAT (PLAYLIST)',
        $if($strcmp(%cwb_playback_order%,'Repeat (playlist)'),
        $get(evidenziato)'REPEAT (TRACK)',
            $if($strcmp(%cwb_playback_order%,'repeat (track)'),
            $get(evidenziato)'SHUFFLE (ALBUMS)',
            )
        )
    )
)
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-29 03:58:32
It seems like these lines -
Code: [Select]
 '$font(lcd2 bold,10,,128-0-255)'REPEAT TRACK'',

have 2 extra ' .  It should be -
Code: [Select]
 '$font(lcd2 bold,10,,128-0-255)REPEAT TRACK',
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-01-29 09:04:16
Hi,
I'm new to Foobar, so I have to ask.
I have several panels in Tabbed panel stack mod.
I'd like to create "switching tab button".
I expect something like this, but I'm not sure with syntax and so on.

Code: [Select]
$if (Single viev,
$button(150,1,0,0,22,21,image,hover, Album View,),
$button(150,1,0,0,22,21,image,hover, Single View,)
)


I've tried to serch solution, or some good reference manual but without succes.
Thanks for help....


This is a tricky one. I know of no programmatic way to test if a given tab is active, or what the currently active tab is named. Theoretically you should be able to do something like this:
$button(150,1,0,0,22,21,image,hover,Panel #0 Cycle Forward,)
however the # is an invalid character and it wont work even if you surround it in single quotes or change it to $char(35). So unless things change I do not think your wish to have a toggle button will work. You can however create two separate buttons next to each other in your layout like this:
$button(150,1,0,0,22,21,image,hover,Album View,)
$button(172,1,0,0,22,21,image,hover,Single View,)
Title: Track Info Panel with ability to change font
Post by: honza on 2007-01-29 10:28:53

Hi,
I'm new to Foobar, so I have to ask.
I have several panels in Tabbed panel stack mod.
I'd like to create "switching tab button".
I expect something like this, but I'm not sure with syntax and so on.

Code: [Select]
$if (Single viev,
$button(150,1,0,0,22,21,image,hover, Album View,),
$button(150,1,0,0,22,21,image,hover, Single View,)
)


I've tried to serch solution, or some good reference manual but without succes.
Thanks for help....


This is a tricky one. I know of no programmatic way to test if a given tab is active, or what the currently active tab is named. Theoretically you should be able to do something like this:
$button(150,1,0,0,22,21,image,hover,Panel #0 Cycle Forward,)
however the # is an invalid character and it wont work even if you surround it in single quotes or change it to $char(35). So unless things change I do not think your wish to have a toggle button will work. You can however create two separate buttons next to each other in your layout like this:
$button(150,1,0,0,22,21,image,hover,Album View,)
$button(172,1,0,0,22,21,image,hover,Single View,)


Thank you for explanation. I think I will use two buttons.
Exist there some reference of possible button commands? I didn't find it anywhere.
Title: Track Info Panel with ability to change font
Post by: stampgevaar on 2007-01-29 12:00:10
$imageabs2(200,200,,,,,155,50,$get(cover1),nokeepaspect)
$imageabs2(200,200,,,,,155,50,$get(cover2),nokeepaspect)

$imageabs2(200,200,,,,,155,253,$get(cover1),nokeepaspectROTATEFLIP-6)
$imageabs2(200,200,,,,,155,253,$get(cover2),nokeepaspectROTATEFLIP-6)

My rotated covers don't resize if there smaller than 200 by 200. It's only the rotated ones...

What's wrong with my code or is this a bug? can please somebody help me
thanks in advance
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-29 13:13:59
$imageabs2(200,200,,,,,155,50,$get(cover1),nokeepaspect)
$imageabs2(200,200,,,,,155,50,$get(cover2),nokeepaspect)

$imageabs2(200,200,,,,,155,253,$get(cover1),nokeepaspectROTATEFLIP-6)
$imageabs2(200,200,,,,,155,253,$get(cover2),nokeepaspectROTATEFLIP-6)

My rotated covers don't resize if there smaller than 200 by 200. It's only the rotated ones...

What's wrong with my code or is this a bug? can please somebody help me
thanks in advance

You need a space between your options -
Code: [Select]
,nokeepaspect ROTATEFLIP-6)
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-29 18:54:02
Has anyone figured out how to make scrolling lyrics in the info panel yet?
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-29 19:02:11
I do, however, very much like the idea of having separate tabs for // Background, // PerTrack, // PerSecond, etc. but how do you dictate which code is processed in what order? Sometimes I want // PerSecond code to be rendered before // PerTrack code and visa versa.

I had always assumed that the trackinfo_mod processed code in a set order - // Global, then // Background, then // PerTrack, then //PerSecond.  Is it actually possible to reorder this processing?  If so, how about having multiple instances of a // PerTrack section for example?
Title: Track Info Panel with ability to change font
Post by: 2Pacalypse on 2007-01-30 18:51:52
Has anyone figured out how to make scrolling lyrics in the info panel yet?


i was just about to ask if any1 had done this. But also how do you have the lyric line of the song highlighted

This was what i propose (please say if its a stupid idea/theres a easier way etc)

use the tag sync_lyric or whatever ppl use to contains all the timestamps and lyrics (copy and pasted from file). Then have in the //per second

when [time stamp] equals current tracks time, change font  - lyric line  - change back font - next line.

Any ideas on how to actually code this? i would somehow need to look up the next occurance of [time stamp]? a while loop somehow? by [timestamp] i mean eg [0:11]

I know that i could just use a lyric panel but i want to have the lyrics over a image and also have the lyrics embedded.
Title: Track Info Panel with ability to change font
Post by: zhdali on 2007-01-30 19:51:01
Hi, at all. For my problems with playback order i try the suggestion found some post later, (wraithdu) but it not work.

The problem is the charter "(" and the charter ")" it is interpreted as part of the expression and not like text.

The solution which i have found is the use of function $char().
Quote
'$font(lcd2 bold,10,,128-0-255)'REPEAT '$char(40)'PLAYLIST'$char(41)'
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-01-30 20:05:58
zhdali: Using single quotes inside of single quotes gets really messy. Try this instead:
'$font(lcd2 bold,10,,128-0-255)Repeat $char(40)playlist$char(41)'

See waithdu's post below, the name of the button command should match exactly the name of the function you wish to execute. Dont put any font commands in with it.
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-01-30 20:27:37
I just need the timing of the scroll to be correct. Right now I have the lyrics scroll up to the top and just cut the rest off but I would like the entire song's lyrics to scroll by.
Title: Track Info Panel with ability to change font
Post by: mister_tee on 2007-01-30 20:49:57
upps, so sorry: wrong post in wrong thread. 
please ignore this one. 
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-01-30 20:57:39
Hi, at all. For my problems with playback order i try the suggestion found some post later, (wraithdu) but it not work.

I believe it didn't work because you wrote the wrong command code.  I just tested this and it works as it should.  Paste into a new trackinfo_mod, play a song (becuase %cwb_playback_order% is only valid while a song is playing) and try it out.
Code: [Select]
%cwb_playback_order%
$button2(5,20,0,0,50,15,'default','DEFAULT','Default',)
$button2(5,35,0,0,50,15,'repeat','REPEAT','Repeat (playlist)',)
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-02-01 18:40:18
Has anyone had luck with the scrolling lyrics yet?
or
Does anyone know how to identify the length of the lyrics tag in total lines rather than characters?
Title: Track Info Panel with ability to change font
Post by: zhdali on 2007-02-02 15:52:25
Mhh, i wont specify which i found my solution and i change little the way i write the button. And no need help for it. However i'm curious to discover the problem.

For wraithdu: Your code write two buttons

button 1 write on screen "default" or "DEFAULT"
button 2 write on screen "repeat" or "REPEAT"

And this is ok, but my difficult is create a button which write this:

button 2 write on screen "repeat (playlist)" or "REPEAT (PLAYLIST)"

If you write a code like this:
Code: [Select]
%cwb_playback_order%
$button2(5,20,0,0,50,15,'default','DEFAULT','Default',)
$button2(5,35,0,0,50,15,'repeat (playlist)','REPEAT (PLAYLIST)','Repeat (playlist)',)


At least at me not work, and from this problem the question: How write a button name which contains parenthesis?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-02-02 19:44:40
zhdali:
Code: [Select]
// PerSecond
Current Mode: %cwb_playback_order%

// PerTrack

$button2(5,20,0,0,150,15,'default','DEFAULT','Default',)
$button2(5,35,0,0,150,15,'repeat $char(40)playlist$char(41)','REPEAT $char(40)PLAYLIST$char(41)','Repeat (playlist)',)
$button2(5,50,0,0,150,15,'repeat $char(40)track$char(41)','REPEAT $char(40)TRACK$char(41)','Repeat (track)',)
$button2(5,65,0,0,150,15,'shuffle $char(40)albums$char(41)','SHUFFLE $char(40)ALBUMS$char(41)','Shuffle (albums)',)
$button2(5,80,0,0,150,15,'shuffle $char(40)directories$char(41)','SHUFFLE $char(40)DIRECTORIES$char(41)','Shuffle (directories)',)
$button2(5,95,0,0,150,15,'shuffle $char(40)tracks$char(41)','SHUFFLE $char(40)TRACKS$char(41)','Shuffle (tracks)',)
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-02-06 09:11:56
Scrolling lyrics, anyone? No?
Title: Track Info Panel with ability to change font
Post by: bimbel on 2007-02-06 15:12:45
I hope this is the right place (don't know if it's a behaviour of track_info_mod or foo_ui_tabs)!

I have the following Setup (generalized)
Code: [Select]
Tabbed Panel Stack mod
--Horizontal splitter
----track_info_mod
----...

--track_info_mod


So I have two 'Main'-tabs: one containing a trackinfo for navigation and all the other stuff and the other has only one fullscreen trackinfo!

I am hiding the tab-bar at the top and change the layouts per
$button(70,0,0,0,0,0,images\buttons\layout-right.png,images\buttons\layout-right.png,fullview,)
and
$button(10,10,0,0,0,0,images\buttons\layout-left.png,images\buttons\layout-left.png,normalview,)

So now both trackinfos have some same space on the top left of each tab:
Normal view:
(http://xelerus.wkjournal.de/ablage/fb2k_infoA.png)

Full view:
(http://xelerus.wkjournal.de/ablage/fb2k_infoB.png)

Now my problem is that when I don't hit the change-layout button exactly in the full view, music suddenly stops! It took me some time to get what's happening.

Both images with some transparency:
(http://xelerus.wkjournal.de/ablage/fb2k_infoC.png)

So it seems that the trackinfo(or the Panel Stack?) is somehow 'transparent' aswell and when I click aside of the layout-change button, I accidentally click the Stop-button which is in the other tab (The other buttons are also working 'through' the Full-view-trackinfo)!

Using:
foobar2000 v0.9.4.1
foo_uie_tabs.dll (2006-10-17 22:54:32)    Tabbed panel modified 0.2.5
foo_uie_trackinfo_mod.dll (2007-01-05 13:36:20)    Track info panel mod 0.8.0 beta [Jan  5 2007 - 13:36:12]
Title: Track Info Panel with ability to change font
Post by: textured on 2007-02-09 14:01:31
ahhh my trackinfo panel is not updating.. i read that i need to go back and install the old version and then check some box and then reinstall? but which old version and where can i get it?
Title: Track Info Panel with ability to change font
Post by: leokennis on 2007-02-09 14:36:37
Love this panel, and fully support the "show all functions in config window" 

One other thing: why does the code jump back to the first line when you press "apply"? Then I have to search back to the line I was editing again
Title: Track Info Panel with ability to change font
Post by: tomthomson on 2007-02-09 17:26:10
never noticed that the bothering tag updating process window doesnt appear when rating my song with a button out of the trackinfo panel instead of using the standard button panel
or was this always the case
Title: Track Info Panel with ability to change font
Post by: honza on 2007-02-10 13:30:33
Hi all,
i've tried to display coverart image with dynamic height and weight like this.

Code: [Select]
$imageabs2($sub(%_width%,20),$sub(%_width%,20),,,,,10,10,$replace(%path%,%filename_ext%,folder.jpg),NOKEEPASPECT)


But then I noticed that with resizing foobar starts to take RAM more and more.
Is it a bug or I've done something wrong?
Title: Track Info Panel with ability to change font
Post by: VeaaC on 2007-02-10 14:35:46
Hi all,
i've tried to display coverart image with dynamic height and weight like this.

Code: [Select]
$imageabs2($sub(%_width%,20),$sub(%_width%,20),,,,,10,10,$replace(%path%,%filename_ext%,folder.jpg),NOKEEPASPECT)


But then I noticed that with resizing foobar starts to take RAM more and more.
Is it a bug or I've done something wrong?


The plugin is caching all resized version of the picture....
Title: Track Info Panel with ability to change font
Post by: Garfield4 on 2007-02-11 08:32:27
I've got a list of moods - which I'd like to display over two columns - can I force this after a certain amount?

Quote
$alignrel(left,top) $char(10) $char(10)
[%Mood%]

Quote
Dramatic
Passionate
Fiery
Visceral
Aggressive
Malevolent
Menacing
Ominous
Provocative
Volatile
Rousing
Intense
Raucous
Eerie
Theatrical
Rebellious
Title: Track Info Panel with ability to change font
Post by: rouge on 2007-02-11 09:36:53
If it hasn't been mentioned before, or, if it has, as a little reminder--could you please fix the bug that scrolls the configuration editbox to the top when you apply changes.  Editing your configuration like this is really difficult.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-02-11 09:50:49
rouge: There is a new version of trackinfomod included with PanelsUI. This version has a new code editbox that has basic syntax highlighting, is resizable, and no longer resets to the top when you apply the code.
Title: Track Info Panel with ability to change font
Post by: Ulquiorra on 2007-02-11 12:19:35
Was wondering what the command was to open the main menu with a $button or $button2...

Does anyone know this?
Title: Track Info Panel with ability to change font
Post by: orchid on 2007-02-12 11:45:20
Hey

Is it possible to rotate images in the same way foo_uie_albumart does? I suppose it could be done with $replace but how would I define cycle time and make it jump back to first image when last has been displayed?

Also this has probably been requested before but I'd love to have an option for making trackinfo area scrollable for showing lyrics.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-02-12 13:31:40
orchid: From the Track Info Panel Mod Wiki (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9/Track_Info_Panel_Mod_%28foo_uie_trackinfo_mod%29)
Quote
imageOptions can be

        * ALPHA-x

        Adjusts the opacity of the image, where the integer value can be between 0 (fully transparent) to 255 (fully opaque).

        * NOKEEPASPECT

        Ignores the aspect ratio when resizing.

        * VALIGN-T (vertical align-TOP), VALIGN-B, HALIGN-L, HALIGN-R

        Allows alignment options.

        * ROTATEFLIP-x

        Where x is:

        ×    Flip X    Flip Y    Flip XY    None
        Rotate 90° CW    5    7    3    1
        Rotate 180° CW    6    4    0    2
        Rotate 270° CW    7    5    1    3
        None    4    6    2    0

See the section regarding $imageabs2()
Title: Track Info Panel with ability to change font
Post by: orchid on 2007-02-12 14:03:52
See the section regarding $imageabs2()


Thanks for reply.

Ofcourse I've read through the wiki page and if I understood correctly (and if you are referring to) "ROTATEFLIP-x" only flips/mirrors a single image. What I'm trying to do is cycle through multiple images like the album art component can do, to rotate N amount of images in the same spot. Should I speak of cycle instead rotate?  Hope I made it clear now
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-02-12 16:13:46
You would have to setup each directory of images similarly, but something like this should work if images are named, for example, cover1.jpg, cover2.jpg, and cover3.jpg, rotated every 30 seconds.  The downfall is this has to be in a // PerSecond section so the art is redrawn every second.  Understandably CPU usage is a little higher than normal due to this.  Also, this code will skip cycles if you skip through the song using the seekbar as it relies on 30 second intervals in playback time.

Code: [Select]
// Global
// Background
// PerTrack
// PerSecond

// if art.num does not exist, set it to 1
$if($getpvar(art.num),,$setpvar(art.num,1))

// when a new song starts, reset art.num to 1
$ifequal(%playback_time_seconds%,0,$setpvar(art.num,1),)

// add 1 to art.num every 30 seconds
$ifequal($mod($sub(%playback_time_seconds%,1),30),29,
$setpvar(art.num,$add($getpvar(art.num),1))
,)

// if track is playing, cycle art
$if(%isplaying%,
$if($fileexists($replace(%path%,%filename_ext%,'cover'$getpvar(art.num)'.jpg')),
$imageabs2(100,100,,,,,10,10,$replace(%path%,%filename_ext%,'cover'$getpvar(art.num)'.jpg'),nokeepaspect)
,
// if cover(art.num).jpg does not exist, assume restart the cycle and reset art.num to 1
$setpvar(art.num,1)
// imageabs2 tag immediately after reset art.num to avoid 1 second gap with no art displayed
$imageabs2(100,100,,,,,10,10,$replace(%path%,%filename_ext%,'cover'$getpvar(art.num)'.jpg'),nokeepaspect)
)
,
// if track is not playing, display a default image, or cover1.jpg, etc.
$imageabs2(100,100,,,,,10,10,'/images\default.jpg',nokeepaspect)
)
// monitor value of art.num for debug
$align(left,bottom)$font(Calibri,10,,255-255-255)'   '$getpvar(art.num)
Title: Track Info Panel with ability to change font
Post by: orchid on 2007-02-13 10:57:34
Thank you wraithdu that gave a good idea how to do it. Is it possible to add transition time between images?

And another thing.. How do I bind buttons to current playlist selection instead of now playing item?
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-02-13 13:28:22
I don't believe it's possible to transition between art exactly, at least not a blending effect.  You could do something with cropping to make the image appear as a horizontal/vertical/diagonal wipe.  But I don't know how to get timing in smaller increments than seconds, so the wipe would be very choppy and ugly IMO.

And another thing.. How do I bind buttons to current playlist selection instead of now playing item?

I'm not sure what you mean by this?  Buttons are assigned commands, that is all.  If a command affects the selection or now playing item, that is the nature of the command.
Title: Track Info Panel with ability to change font
Post by: orchid on 2007-02-13 14:45:40
I'm not sure what you mean by this?  Buttons are assigned commands, that is all.  If a command affects the selection or now playing item, that is the nature of the command.


I'm trying to link rating buttons to current playlist selection. If I use the code below it rates currently playing song instead. In the normal buttons panel you can select the item group a specific command affects.
Code: [Select]
$button(300,10,0,0,22,22,images\orchid\buttons\1.png,images\orchid\buttons\1a.png,rating1,)

"rating1" is a masstagger script that changes %rating%=1
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-02-13 15:51:12
I see exactly what you are saying now.  Unfortunately I don't have an answer for you.  Maybe the actual command is altered/appended in some way to affect the selection vs now playing item.  If it is though, it is not shown how it is changed.  This might just be a function of the button panel though, and would have to be something added to Track Display button coding by terrestrial to enable this functionality, ie something in the OPTIONS section of the button code.

What happens if you stop playback (so there is no now playing item), then select some songs, then try your button?
Title: Track Info Panel with ability to change font
Post by: Keikonium on 2007-02-15 17:55:56
I'm having problem with some code I have here:

Code: [Select]
//REPLAY GAIN//
$puts(rpg,
$if(%__replaygain_track_gain%,   TGain: $rgb(77,122,172)$cut(%__replaygain_track_gain%,5)' dB',$rgb(78,78,78)       '['$button2(300,1,0,0,150,16,'$font(tahoma,8,underline,61-131-182)No TGain','$font(tahoma,8,underline italics,120-145-209)No TGain',Scan Per-file Track Gain,)']'))
$alignabs(400,1,95,16,,)
$get(rpg)
//REPLAY GAIN//


What it's supposed to do is display the replaygain info, which it does when the file HAS some. But if it DOESN'T have any, its supposed to display a [ bracket, then a button I click (text) that will scan the file, then a closing ] bracket.

I'm not sure what I screwed up here in the code . A little help?
Title: Track Info Panel with ability to change font
Post by: cyRq on 2007-02-15 18:10:06
Hi, I've got a problem.
I was planning to change the old foo_uie_trackinfo to this one but i encountered a problem (i simple one i hope)

Basicly the problem is that [%playback_time% / ]%length% or similar don't work:

(http://xs412.xs.to/xs412/07074/foo_prob.jpg.xs.jpg) (http://xs.to/xs.php?h=xs412&d=07074&f=foo_prob.jpg)

All the time its 00:00/XX:XX

I hope someone could point me where the problem is
Title: Track Info Panel with ability to change font
Post by: Keikonium on 2007-02-15 18:22:57
Hi, I've got a problem.
I was planning to change the old foo_uie_trackinfo to this one but i encountered a problem (i simple one i hope)

Basicly the problem is that [%playback_time% / ]%length% or similar don't work:

[a href="http://xs.to/xs.php?h=xs412&d=07074&f=foo_prob.jpg" target="_blank"].
Title: Track Info Panel with ability to change font
Post by: cyRq on 2007-02-15 18:31:30
Thank you. Works perfectly now
Title: Track Info Panel with ability to change font
Post by: Sam Stoat on 2007-02-16 10:46:11
Could anyone tell me if there is a command to switch a panel between 'follow cursor' and 'now playing' modes?  I want to switch to 'now playing' when playing and 'follow cursor' when stopped.
Title: Track Info Panel with ability to change font
Post by: barry123 on 2007-02-16 22:26:49
I've seen this on the forum and it works good, but when I add the last part ($char(10)[%playback_time% / ] %length%) I'm getting an

"No track
?"

when I dont play anything, the No track is fine, but how do I delete the "?"

// PerSecond
$char(10)$char(10)$if(%_trackinfo_notrack%,No track,Artist: %artist%
$char(10)Title: %title%
$char(10)Album: %album%)
$char(10)[%playback_time% / ] %length%
Title: Track Info Panel with ability to change font
Post by: Keikonium on 2007-02-16 22:55:05
I've seen this on the forum and it works good, but when I add the last part ($char(10)[%playback_time% / ] %length%) I'm getting an

"No track
?"

when I dont play anything, the No track is fine, but how do I delete the "?"

// PerSecond
$char(10)$char(10)$if(%_trackinfo_notrack%,No track,Artist: %artist%
$char(10)Title: %title%
$char(10)Album: %album%)
$char(10)[%playback_time% / ] %length%


add [ and ] around %length%. [ and ] make the "tagz" only show up if the "tag" is there. So the last line would read: $char(10)[%playback_time% / ] [%length%]


(NOTE: Still need help with my problem (http://www.hydrogenaudio.org/forums/index.php?showtopic=47044&st=1025&gopid=472427&#) meantioned above people ...)
Title: Track Info Panel with ability to change font
Post by: barry123 on 2007-02-17 19:55:41
sorry I can't help you but maybe someone knows this:

I want to add the source in the info panel

So I already have:
Artist:
Album:
etc...

But now I want to add the source of the folder like:
Source: D:\music\John - Happy Song.mp3

I use now [%path%] but this only shows D:\My
instand of D:\My music\folder\John - Happy Song.mp3
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2007-02-17 22:27:42
Has anyone had any luck associating .trackinfo files to an external editor? When I click the Edit button it always uses Notepad. I'm a little bit unsure about this anyway since I don't know where these .trackinfo files would be. Are the just created in the TEMP directory?
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-02-17 22:52:07
sorry I can't help you but maybe someone knows this:

I want to add the source in the info panel

So I already have:
Artist:
Album:
etc...

But now I want to add the source of the folder like:
Source: D:\music\John - Happy Song.mp3

I use now [%path%] but this only shows D:\My
instand of D:\My music\folder\John - Happy Song.mp3

Hmm, not sure.  It works just fine for me, and I have spaces in my directory structure as well.  Post the rest of your code.  Perhaps there's a problem somewhere else that is causing the text to be cut off.
Title: Track Info Panel with ability to change font
Post by: barry123 on 2007-02-17 23:35:06
I tried this code and now it works fine.
so I think you are right, the code was wrong

Code: [Select]
// PerSecond

$char(10)$if(%_trackinfo_notrack%,No track,
$char(10)Artist: %artist%
$char(10)Title: %title%
$char(10)Album: %album%
$char(10)Date: %date%
$char(10)Length: %Playback_time% / %length%
$char(10)Bitrate: %bitrate%kbps

)
Title: Track Info Panel with ability to change font
Post by: wolfsong on 2007-02-18 11:38:22

@terrstrial
Is there a way to use mouse wheel for scroll like the classic trackinfo?

no, the display code (and syntax) are not really designed for scrolling.

Is this still the case with the latest version? I'm trying to create a tagging panel and have a fairly lengthy list.
Title: Track Info Panel with ability to change font
Post by: barry123 on 2007-02-18 16:40:57
How do I get the bitrate at //PerTrack and %Playback_time% / %length% //PerSecond in the following order:
- Artist (//PerTrack)
- Title (//PerTrack)
- Album (//PerTrack)
- Date (//PerTrack)
- Lenght //PerSecond
- Bitrate (//PerTrack)


I use now

Code: [Select]
// PerSecond
$char(10)$if(%_trackinfo_notrack%,No track,
$char(10)Artist: %artist%
$char(10)Title: %title%
$char(10)Album: %album%
$char(10)Date: %date%
$char(10)Length: %Playback_time% / %length%
$char(10)Bitrate: %bitrate%kbps

)


But when I change // PerTrack everyting is going wrong.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-02-18 16:53:49
Are you looking for something like this?
Code: [Select]
// PerTrack
$alignabs(0,0,50,15,,)Artist:
$alignabs(0,15,50,15,,)Title:
$alignabs(0,30,50,15,,)Album:
$alignabs(0,45,50,15,,)Date:
$alignabs(0,60,50,15,,)Length:
$alignabs(0,75,50,15,,)Bitrate:

$alignabs(60,0,$sub(%_width%,60),15,,)%artist%
$alignabs(60,15,$sub(%_width%,60),15,,)%title%
$alignabs(60,30,$sub(%_width%,60),15,,)%album%
$alignabs(60,45,$sub(%_width%,60),15,,)%date%
$alignabs(60,75,$sub(%_width%,60),15,,)%bitrate%kbps

// PerSecond
$alignabs(60,60,$sub(%_width%,60),15,,)%Playback_time% / %length%

The cursor position seems to get reset when changing from PerTrack to PerSecond so I personally avoid using $char(10) and instead use $alignabs() for greater reliability and flexibility.

Also you might want to further develop the way you display bitrate because with the approach you are using, variable and adaptive bitrates will be misrepresented. I'd suggest either moving that line to PerSecond as well or add additional logic to show VBR, ABR, or something else instead of the normal bitrate.
Title: Track Info Panel with ability to change font
Post by: barry123 on 2007-02-18 17:08:49
Yes I like that, but one thing is going wrong I just want this:

Code: [Select]
- Artist ARTIST
- Title TITLE
- Album ALBUM
- Date DATE
- Lenght LENGHT
- Bitrate BITRATE


instead of this:
Code: [Select]
- Artist............ARTIST
- Title.............TITLE
- Album..........ALBUM
- Date............DATE
- Lenght..........LENGHT
- Bitrate..........BITRATE



I'm totally noob but I see it's the (60,0,$sub(%_width%,60),15,,) doing this.
When I change 60 to 40 it's a little better, but is there a better option for this? so it's just
Abum: Album name
only 1 single space.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-02-18 19:44:10
If you prefer that type of formatting, try this instead:
Code: [Select]
// PerTrack
$alignabs(0,0,%_width%,15,,)Artist: %artist%
$alignabs(0,15,%_width%,15,,)Title: %title%
$alignabs(0,30,%_width%,15,,)Album: %album%
$alignabs(0,45,%_width%,15,,)Date: %date%
$alignabs(0,75,%_width%,15,,)Bitrate: %bitrate%kbps

// PerSecond
$alignabs(0,60,%_width%,15,,)Length: %Playback_time% / %length%

It's the same basic approach. By using $alignabs() for each line you can split up your text into whatever update interval you want and not wory about the text positioning being reset on the refresh. I prefer to handle the labels separately so you can do stuff like right alignment on the labels.. $alignabs(0,0,50,15,right,)Label: but the above code should do what you ask.
Title: Track Info Panel with ability to change font
Post by: orchid on 2007-02-18 19:56:26
Since trackinfo isn't scrollable I was wondering if I can split text into two or more side by side columns, if a specific height is exceeded? I'd use this for showing long lyrics which don't fit on the panel.
(http://images.yeuxverts.net/_images_/oje5up.jdocmf.12r35c.tb.gif) (http://images.yeuxverts.net/view.php?oje5up.jdocmf.12r35c.jpg)

Edit: I figured how to split it with $len() but I'd prefer by the height of area. Thought I could use $calcheight() but seems like it returns the size of font instead. So is there any function for calculating the height of a multiline string? Below is an example how I did it so far

Code: [Select]
$ifgreater($len(%lyrics%),1000,

$alignabs(0,65,$div(%_width%,2),$sub(%_height%,80),center,middle)
$left(%lyrics%,$div($len(%lyrics%),2))
$alignabs(0,65,$muldiv(%_width%,3,2),$sub(%_height%,80),center,middle)
$right(%lyrics%,$add($div($len(%lyrics%),2),1)),

$alignabs(0,65,%_width%,$sub(%_height%,80),center,middle)%lyrics%)
Title: Track Info Panel with ability to change font
Post by: Yann on 2007-02-18 23:07:49
I want two buttons for control playback's order.

With default order:
$button(,,,,,,,,default,)

and work very well, but with shuffle (tracks) (or another shuffle mode) non:

$button(,,,,,,,,Shuffle(tracks),)

I try with Playback/Order/Shuffle (tracks), Shuffle, Shuffle tracks... and nothing... and try with this:

#  Playback/Order/Shuffle
# Playback/Order/Shuffle album
# Playback/Order/Shuffle album 2
# Playback/Order/Shuffle tag set

how put: http://wiki.hydrogenaudio.org/index.php?ti...text_Menu_Items (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Commandline_Guide#Context_Menu_Items)

BUT NOTHING... 

any sugerence? 

THANKS!

(sorry for my english)
Title: Track Info Panel with ability to change font
Post by: barry123 on 2007-02-18 23:35:04
If you prefer that type of formatting, try this instead:
Code: [Select]
// PerTrack
$alignabs(0,0,%_width%,15,,)Artist: %artist%
$alignabs(0,15,%_width%,15,,)Title: %title%
$alignabs(0,30,%_width%,15,,)Album: %album%
$alignabs(0,45,%_width%,15,,)Date: %date%
$alignabs(0,75,%_width%,15,,)Bitrate: %bitrate%kbps

// PerSecond
$alignabs(0,60,%_width%,15,,)Length: %Playback_time% / %length%

It's the same basic approach. By using $alignabs() for each line you can split up your text into whatever update interval you want and not wory about the text positioning being reset on the refresh. I prefer to handle the labels separately so you can do stuff like right alignment on the labels.. $alignabs(0,0,50,15,right,)Label: but the above code should do what you ask.



Thank you, can you help me with one little thing?
With the $char(10) code I used

Code: [Select]
$char(10)$if(%_trackinfo_notrack%,No track,
when I listened to nothing.

Is there anyway to do this with the $alignabs code?

When no track is playing:
Code: [Select]
No track


When Pause:
Code: [Select]
Artist: ARTIST
Title: TITLE
Album: ALBUM
Date: DATE
Lenght: LENGHT
Bitrate: BITRATE
Status: Pause
Title: Track Info Panel with ability to change font
Post by: iStormy on 2007-02-19 00:25:09
[removed]
Title: Track Info Panel with ability to change font
Post by: orchid on 2007-02-19 07:47:29
Is there anyway to do this with the $alignabs code?

When no track is playing: No track
When Pause: ...


Code: [Select]
// PerTrack
$if(%_trackinfo_notrack%,
$alignabs(0,0,%_width%,15,,)No track,

$alignabs(0,0,%_width%,15,,)Artist: %artist%
$alignabs(0,15,%_width%,15,,)Title: %title%
$alignabs(0,30,%_width%,15,,)Album: %album%
$alignabs(0,45,%_width%,15,,)Date: %date%
$alignabs(0,75,%_width%,15,,)Bitrate: %bitrate%kbps

// PerSecond
$alignabs(0,60,%_width%,15,,)Length: %Playback_time% / %length%

)


Or if you don't want to show the trackinfos while paused use something like this
Code: [Select]
// PerTrack
$if(%_trackinfo_notrack%,
$alignabs(0,0,%_width%,15,,)No track,
$if(%ispaused%,
$alignabs(0,0,%_width%,15,,)Paused,

$alignabs(0,0,%_width%,15,,)Artist: %artist%
$alignabs(0,15,%_width%,15,,)Title: %title%
$alignabs(0,30,%_width%,15,,)Album: %album%
$alignabs(0,45,%_width%,15,,)Date: %date%
$alignabs(0,75,%_width%,15,,)Bitrate: %bitrate%kbps

// PerSecond
$alignabs(0,60,%_width%,15,,)Length: %Playback_time% / %length%

))
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-02-19 15:17:52
I want two buttons for control playback's order.

With default order:
$button(,,,,,,,,default,)

and work very well, but with shuffle (tracks) (or another shuffle mode) non:

$button(,,,,,,,,Shuffle(tracks),)
I have posted this before but the search function on this forum is next to worthless, I couldnt even find it. So here we go again, this is a basic example of how to make buttons for all of the playback modes:
Code: [Select]
$button2(0,0,0,0,%_width%,15,'Default','DEFAULT','Default',)
$button2(0,15,0,0,%_width%,15,'Repeat $char(40)Playlist$char(41)','REPEAT $char(40)PLAYLIST$char(41)','Repeat (playlist)',)
$button2(0,30,0,0,%_width%,15,'Repeat $char(40)Track$char(41)','REPEAT $char(40)TRACK$char(41)','Repeat (track)',)
$button2(0,45,0,0,%_width%,15,'Shuffle $char(40)Albums$char(41)','SHUFFLE $char(40)ALBUMS$char(41)','Shuffle (albums)',)
$button2(0,60,0,0,%_width%,15,'Shuffle $char(40)Directories$char(41)','SHUFFLE $char(40)DIRECTORIES$char(41)','Shuffle (directories)',)
$button2(0,75,0,0,%_width%,15,'Shuffle $char(40)Tracks$char(41)','SHUFFLE $char(40)TRACKS$char(41)','Shuffle (tracks)',)
Title: Track Info Panel with ability to change font
Post by: Yann on 2007-02-19 22:56:13
I want two buttons for control playback's order.

With default order:
$button(,,,,,,,,default,)

and work very well, but with shuffle (tracks) (or another shuffle mode) non:

$button(,,,,,,,,Shuffle(tracks),)
I have posted this before but the search function on this forum is next to worthless, I couldnt even find it. So here we go again, this is a basic example of how to make buttons for all of the playback modes:
Code: [Select]
$button2(0,0,0,0,%_width%,15,'Default','DEFAULT','Default',)
$button2(0,15,0,0,%_width%,15,'Repeat $char(40)Playlist$char(41)','REPEAT $char(40)PLAYLIST$char(41)','Repeat (playlist)',)
$button2(0,30,0,0,%_width%,15,'Repeat $char(40)Track$char(41)','REPEAT $char(40)TRACK$char(41)','Repeat (track)',)
$button2(0,45,0,0,%_width%,15,'Shuffle $char(40)Albums$char(41)','SHUFFLE $char(40)ALBUMS$char(41)','Shuffle (albums)',)
$button2(0,60,0,0,%_width%,15,'Shuffle $char(40)Directories$char(41)','SHUFFLE $char(40)DIRECTORIES$char(41)','Shuffle (directories)',)
$button2(0,75,0,0,%_width%,15,'Shuffle $char(40)Tracks$char(41)','SHUFFLE $char(40)TRACKS$char(41)','Shuffle (tracks)',)

oh thanks!!

I must write Shuffle (tracks) with '' : 'Shuffle (tracks)'

Now work very fine

Thanks...!!
Title: Track Info Panel with ability to change font
Post by: jonpb on 2007-02-20 02:31:30
I'm having problem with some code I have here:

Code: [Select]
//REPLAY GAIN//
$puts(rpg,
$if(%__replaygain_track_gain%,   TGain: $rgb(77,122,172)$cut(%__replaygain_track_gain%,5)' dB',$rgb(78,78,78)       '['$button2(300,1,0,0,150,16,'$font(tahoma,8,underline,61-131-182)No TGain','$font(tahoma,8,underline italics,120-145-209)No TGain',Scan Per-file Track Gain,)']'))
$alignabs(400,1,95,16,,)
$get(rpg)
//REPLAY GAIN//


I'm not sure why you are caching the code snippet into a string variable only to extract it out again later. I am not familiar with that technique and not sure why you would that. That being said, I don't think wrapping the $font() call in single quotes will work in this scenario, try moving the single quotes on the $font() calls to the end of the call.
Title: Track Info Panel with ability to change font
Post by: Keikonium on 2007-02-20 03:58:56
Thanks for the reply, but that wasn't part of the problem . I'm not to sure what was, but I decided I'd make the code over from scratch. So now I have the following, and it works perfectly .

Code: [Select]
//REPLAY GAIN//
$alignabs(400,1,100,16,,)
$if(%__replaygain_track_gain%,   TGain: $rgb(77,122,172)$cut(%__replaygain_track_gain%,5)' dB',$alignabs(420,1,100,16,,)'['               ']'$button2(425,1,0,0,50,16,'$font(tahoma,8,underline,126-126-126)No TGain','$font(tahoma,8,underline,126-126-126)No TGain',Scan Per-file Track Gain,))
//REPLAY GAIN//
Title: Track Info Panel with ability to change font
Post by: elemakil on 2007-02-20 21:13:11
I read, that the author removed the functionality, that a line starts scrolling if its wider than the line it is placed in is. Is it possible to do this via a workaround ? because this is very important for me !

thank you very much, elemakil
Title: Track Info Panel with ability to change font
Post by: carmenm on 2007-02-20 21:18:23
I have a little feature request. I was wondering if like NOKEEPASPECT we could have a REPEAT option for images. This would b just awesome to draw background.
Title: Track Info Panel with ability to change font
Post by: Keikonium on 2007-02-21 06:57:31
I need more code help...

I have made a custom status bar, and need a bit of help. Here is the code first of all:

Code: [Select]
// PerSecond
// Global
$puts(rating,$if2(%rating%,0))
$puts(ratedir,images\rating_stars\)
$puts(ratedir2,images\rating_hearts\)
$puts(X,1090)
$puts(Y,1)
$puts(spacer_symb,' ')
$puts(spacer_width,2)
$puts(spacer,$repeat($get(spacer_symb),$get(spacer_width)))
$puts(text_time_remaining,$rgb(153,57,146)[%_time_remaining%])
$puts(numitems,%cwb_activelist_count%)
$puts(RC1,$rgb(245,255,53,245,255,53))
$puts(RC2,$rgb(64,67,12,64,67,12))
$puts(RC3,$rgb(60,221,68,60,221,68))
$puts(RC4,$rgb(223,0,5,223,0,5))

// Background
$imageabs(0,0,\images\statusbg.png,)


// PerTrack

//DIRECTORY LINKS//
$alignabs(775,1,35,16,,)
$font(Calibri,9,,221-222-223)Open: $button2(810,1,0,0,44,16,'$font(tahoma,8,underline,61-131-182)Directory','$font(tahoma,8,underline italics,120-145-209)Directory',Open Directory,)
$alignabs(854,1,45,26,,)
$font(Calibri,9,,221-222-223)'|'$button2(860,2,0,0,10,16,'$font(Wingdings 3,8,underline,61-131-182)Q','$font(Wingdings 3,8,underline italics,120-145-209)Q',Update all,)
//DIRECTORY LINKS//

//REPLAY GAIN//
$alignabs(400,1,100,16,,)
$if(%__replaygain_track_gain%,  TGain: $rgb(77,122,172)$cut(%__replaygain_track_gain%,5)' dB',$alignabs(420,1,100,16,,)'['              ']'$button2(425,1,0,0,50,16,'$font(tahoma,8,underline,126-126-126)No TGain','$font(tahoma,8,underline,126-126-126)No TGain',Scan Per-file Track Gain,))
//REPLAY GAIN//

// PerSecond

//PROGRESS BAR//
$puts(pbw,300)
$padding(4,0)
$align(left,)
$font(Calibri,9,,221-222-223)
[%_time_elapsed%]

$drawrect($muldiv(%_width%,8,$get(pbw)),3,$muldiv(%_width%,81,$get(pbw)),9,brushcolor-null pencolor-223-0-5)
$drawrect($add($muldiv(%_width%,8,$get(pbw)),2),5,$ifgreater($muldiv($sub($muldiv(%_width%,81,$get(pbw)),4),%playback_time_seconds%,%length_seconds%),0,$muldiv($sub($muldiv(%_width%,81,$get(pbw)),4),%playback_time_seconds%,%length_seconds%),1),5,brushcolor-188-54-57 pencolor-null)

$alignabs(350,1,30,16,,)
$font(Calibri,9,,221-222-223)
[%length%]

$alignabs(373,1,40,16,,)
$puts(progress_%,
$if(%_time_total_seconds%,' '$rgb(49,130,81)$pad_right($muldiv(%_time_elapsed_seconds%,100,%_time_total_seconds%),3)$rgb(49,130,81)'%'' '))
$get(progress_%)
//PROGRESS BAR//

//REMAINING TIME//
$alignabs(500,1,130,16,,)
Remaining Time: $get(text_time_remaining)
$get(time)
//REMAINING TIME//

//NUMBER OF TOTAL SONGS//
$alignabs(635,1,140,16,,)
Total Songs: $rgb(158,146,75)$get(numitems) Songs
//NUMBER OF TOTAL SONGS//

//LAST PLAYED//
$alignabs(890,1,250,16,,)
Last Played: $if(%last_played%,$puts(diff,$cwb_datediff(%last_played%,%cwb_systemdate%))$ifgreater(1,$get(diff),$rgb(206,147,102)Played Today,$ifgreater(2,$get(diff),$rgb(188,140,92)Yesterday,$rgb(183,113,66)$get(diff) Days Ago)),$rgb(152,83,50)Never)
//LAST PLAYED//

//LYRICS AND ALBUM ART//
$alignabs(1050,-4,250,20,,)
$if(%LYRICS%,$font(Arial Unicode MS,12,,80-218-90)♬,$font(Arial Unicode MS,12,,42-42-42)♬)
$if($cwb_fileexists(C:\Song Album Covers\%album%.png),$font(Wingdings 2,12,,80-218-90)8,$font(Wingdings 2,12,,42-42-42)8)
//LYRICS AND ALBUM ART//

//RATING STARS//
$alignabs(1090,-1,150,16,,)
$font(Arial Unicode MS,9,,)
$if($greater(%play_counter%,99), $get(RC4)~❤~$get(RC2),
$if($greater(%play_counter%,49), $get(RC3)✓✓✓✓✓✓$get(RC2),
$if($greater(%play_counter%,24), $get(RC1)★★★★★$get(RC2),
$if($greater(%play_counter%,19), $get(RC1)★★★★$get(RC2)★,
$if($greater(%play_counter%,14), $get(RC1)★★★$get(RC2)★★,
$if($greater(%play_counter%,9), $get(RC1)★★$get(RC2)★★★,
$if($greater(%play_counter%,4), $get(RC1)★$get(RC2)★★★★,
$if(%play_counter%,) $get(RC2)★★★★★)))))))
//RATING STARS//

(There are some unicode characters in there, so you may see boxes near the end).

Anyways, the code works perfectly for what I need it to do. I just wanted to "enhance" it a little bit. I wanted to "wrap" the code into something so that when I have my foobar paused (%is_paused% works right?) the word "PAUSED" is in the center, and red with none of the other stuff showing. And when there is no song playing (%is_playing% might work) the words "NO SONG PLAYING" are displayed in the middle.

Could someone help me with this?

Thanks ^__^!
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-02-21 15:18:28
Keikonium: Basically you'll need to do something like this..
Code: [Select]
$if(%_isplaying%,
$if(%_ispaused%,
$align(center,middle)$font(,,,255-0-0)PAUSED,
'[Your Existing Code Here]'
),
$align(center,middle)$font(,,,255-0-0)NO SONG PLAYING
)

I made an attempt to rewrite the code you pasted however you have some strange issues going on with your refresh tags // PerSecond, // Global, // PerTrack, etc. You might want to take some time and clean that up.
Title: Track Info Panel with ability to change font
Post by: Kiteroa on 2007-02-22 02:42:40
Can I use PVAR to set a variable as a statement by itself? or must it be a button command?
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-02-22 02:43:59
$setpvar(variable name,value)
Title: Track Info Panel with ability to change font
Post by: Kiteroa on 2007-02-22 03:09:00
Thanks.
Title: Track Info Panel with ability to change font
Post by: orchid on 2007-02-22 13:31:32
Still looking for solution for my problem (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=47044&view=findpost&p=472925) about how to find out the height of a multiline string. Any help appreciated.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-02-22 16:36:00
orchid:
Have you tried playing around with something like this?
$mul($div($calcwidth(%string%),%_width%),$calcheight(%string%))
though it will probably fail because of wordwrapping. I really wish there was a way to disable wordwrapping. Also did you want the height in pixels or number of lines?
Title: Track Info Panel with ability to change font
Post by: Rash on 2007-02-23 16:23:32
Guys, I need a hand. Please.

I have a Trackinfo code for the old Trackinfo plugin (that is, the "no-mod" trackinfo) and I'm having problems adapting it to Terrestrial's trackinfo_mod.

Here is the code:

Code: [Select]
// Rash modified for Dark (Purple) Azrael Theme
// Font: Lucida Sans Unicode 8pt

f04a78Mode: %_trackinfo_mode%$char(10)$if(%_trackinfo_notrack%,No track,
$char(1)C0500d9Song Info$char(10)
f04a78Title: ffffff%title%$char(10)
f04a78Artist: F3EAE0%artist%$char(10)
f04a78Album: F3EAE0%album%$char(10)
f04a78Date: F3EAE0%date%)$char(10)
f04a78Genre: F3EAE0%genre%$char(10)
$char(1)C0500d9Tech Info$char(10)
f04a78Codec: F3EAE0%__codec% $char(10)
f04a78Bitrate: F3EAE0%__bitrate% Kbit/s$char(10)
f04a78Samplerate: F3EAE0%__samplerate% Hz$char(10)
f04a78Channels: F3EAE0$if(%__channels%,$ifgreater(%__channels%,2,%__channels%ch,$ifgreater(%__channels%,1,' 'Stereo,''Mono)),)$char(10)
f04a78Time: F3EAE0%_time_elapsed% / %_time_total%$char(10)

$puts(theme,1)

// progressbar config
$puts(progress_char,█)
$puts(progress_length,10)

$if($strcmp($get(theme),1),
$puts(progress_color1,$rgb(217,0,0))
// alt: 120,74,240
$puts(progress_color2,$rgb(63,63,63))
)


// PREPARE COLOR-STRINGS
// =========================================
$puts(progress_color1a,$blend($get(progress_color1),000000,1,4.5))
$puts(progress_color2a,$blend($get(progress_color2),000000,1,5.7))

// progressbar
$puts(progressbar,
$if(%_length_seconds%,

$puts(progress,$muldiv(%_time_elapsed_seconds%,$get(progress_length),%_length_seconds%))
$transition($repeat($get(progress_char),$get(progress)),$get(progress_color1a),$get(progress_color1))
$transition($repeat($get(progress_char),$sub($get(progress_length),$get(progress))),$get(progress_color2a),$get(progress_color2))
$pad_right($muldiv(%_time_elapsed_seconds%,100,%_length_seconds%),4)'%'
,streaming...
)
)
$get(progressbar)

I think I know how to convert the color information to $rgb(#,#,#), all I have to do is convert the hexadecimal number to decimal. That will give me a hard time, but that's OK. (Note: this old color information still works on Terrestrial's mod) Now, my trackinfo doesn't refresh by itself. I have the track play time on it and it doesn't update. If I make any modifications or if I simply click on settings then the trackinfo updates only once, correctly, but not anymore. The old trackinfo component allowed me to set a refresh time, trackinfo_mod doesn't. Could you guys help me adapt the new code? This is my first step towards my own PanelsUI customization. Thank you very much.
Title: Track Info Panel with ability to change font
Post by: Ran Sagy on 2007-02-23 16:35:43
Try adding '// Per Second' as the first line, Either with or without the space, I can't remember.
Title: Track Info Panel with ability to change font
Post by: cyclefiend2000 on 2007-02-23 18:14:07
i am trying to show the time elapsed and the total length of the track. I am using the code below, but the time elapsed does not update. is there something wrong with the code? or some other way to handle this?

Code: [Select]
 // Per Second
$if(%_isplaying%,%_time_elapsed% ' / ')%length%


thanks
Title: Track Info Panel with ability to change font
Post by: Ran Sagy on 2007-02-23 18:56:38
Code: [Select]
// PerSecond
$if(%_isplaying%,%_time_elapsed% ' / ')%length%


This works for me. Thats why i said, Try without the space.
Title: Track Info Panel with ability to change font
Post by: cyclefiend2000 on 2007-02-23 20:18:13
i have tried with and without spaces. no luck.

how can i tell if i have the latest version of the plugin? maybe that is the problem?
Title: Track Info Panel with ability to change font
Post by: Ran Sagy on 2007-02-23 20:26:10
Maybe, try updating. I know i pasted your code into my panel, changed it to // PerSecond and the time updated fine for me.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-02-23 21:26:11
If your trackinfomod component is too old to support // PerSecond then there should be a checkbox in the config for update every second. Also, this component is no longer being maintained as a separate component and is now part of Panels UI.
Title: Track Info Panel with ability to change font
Post by: Ran Sagy on 2007-02-23 21:30:52
Heh, Even i didn't know that.

Time for converting, I guess. Is PanelsUI stable enough already?
Title: Track Info Panel with ability to change font
Post by: cyclefiend2000 on 2007-02-23 21:33:40
i had a space between Per and Second. that is what was messing me up.

is working fine now.

thanks!
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-02-24 05:35:54
The new functionality of PanelsUI is only enabled if you change your display to use it instead of ColumnsUI.  Otherwise, Track Display and SCPL are basically unchanged from the previously separate versions, and function well.  Oh yeah, the trackinfo panel's name was changed to Track Display.
Title: Track Info Panel with ability to change font
Post by: renegadealert on 2007-02-24 07:32:38
Is there anyway to have a button stay in the mouse over form when clicked?
Alternatively, is there a way to tell what the playback order is?

I'm trying to make a button for shuffle and repeat that stay a different color when they are active but havent figured it out. Any help would be great, thanks.
Title: Track Info Panel with ability to change font
Post by: honza on 2007-02-24 10:38:38
Hi all,

I'm using a button to open Album list window. But it always opens over main foobar window
Code: [Select]
$button(291,1,0,0,22,21,/images\LE5\search.png,/images\LE5\search_.png,Album List,)


Is there any possibility to choose window position in button command?
Title: Track Info Panel with ability to change font
Post by: Ran Sagy on 2007-02-24 11:40:33
PanelsUI replaces ColumnsUI?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-02-24 17:18:30
Panels UI and Columns UI work together. Panels UI will replace Columns UI as your interface however Panels UI needs to have Columns UI installed to work properly and uses Columns UI components for the panels. It is more of a supliment than a replacement.

If you want to use the latest TrackInfoMod and SingleColumnPlaylist you simply need to put the foo_ui_panels.dll in your components directory and remove foo_uie_track_info_mod.dll and foo_uie_single_column_playlist.dll. You do not have to actually switch to the panels interface but the components have been consolidated into a single file.
Title: Track Info Panel with ability to change font
Post by: carmenm on 2007-02-24 18:00:12
Hi, i am trying to have %playback_time% in this format :
00:00:00 (HH:MM:SS). but i cant find a way to get it right, especially keeping everything in two digits. Does someone knows how to do this.
Title: Track Info Panel with ability to change font
Post by: Purple Monkey on 2007-02-24 18:25:03
If you have cwb_hooks installed then you can use $cwb_hms( seconds ) to do the hard work for you.
Title: Track Info Panel with ability to change font
Post by: carmenm on 2007-02-24 19:54:01
wow, thank you!
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-02-24 21:40:10
Since we are discussing this, here is a bit of code I've been hammering out for a time display that you can click on to switch between time elapsed, time remaining, and total length:
Code: [Select]
// PerTrack
$button2($sub(%_width%,100),2,0,0,70,30,,'
$align(center,middle)
$select($add($getpvar(time.display),1),Elapsed,Remaining,Length)
',PVAR:SET:time.display:
$ifgreater($getpvar(time.display),1,0,$add($getpvar(time.display),1))
,)

// PerSecond
$font(tahoma,18,,0-0-0)

$select($add($getpvar(time.display),1),
$puts(time.display,%playback_time_seconds%)
,
$puts(time.display,$sub(%length_seconds%,%playback_time_seconds%))
,
$puts(time.display,%length_seconds%)
)

$alignabs($sub(%_width%,100),2,70,30,right,)
$ifgreater($get(time.display),59,,00:)
$ifgreater($get(time.display),9,,0)
$cwb_hms($get(time.display))
This works but there are a few things that bug me about it. I had to add the text for the hover code because if I left it blank, the time would disappear completely on mouseover. I wanted to put the time display as the normal button code however buttons do not work under persecond and the code wont update properly anywhere else. There is a slight delay when you take the mouse off of the button until the next persecond refresh.

Anyway it uses the $cwb_hms() function as mentioned above, it will pad zeros at the beginning if the time is too short, and I figured somebody might find this useful.
Title: Track Info Panel with ability to change font
Post by: Ignite339 on 2007-02-25 17:51:57
First of all, great plugin.

I don't know if this has been brought up already, but using this, I tried to have it display elapsed time / total time. The elapsed time kind of sticks unless foobar does something. Is there any way to keep the panel active so it keeps up with the time?
Title: Track Info Panel with ability to change font
Post by: elemakil on 2007-02-25 18:02:21
put
Code: [Select]
// PerSecond
above the part you want to get updated per second
Title: Track Info Panel with ability to change font
Post by: Ignite339 on 2007-02-25 19:34:22
EDIT: Never mind, I got it. Thanks!
Title: Track Info Panel with ability to change font
Post by: sankukaai on 2007-02-28 06:25:45
hey i was rearrranging my layout and somehow my whole config of my track info mod panel disappeared. Is there a way to get it back (ie it's somewhere in a config file) or am i screwed?
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-02-28 12:59:23
if foobar hasn't been closed yet, kill it with the taskmanager. If it has, you're screwed.
Title: Track Info Panel with ability to change font
Post by: Purple Monkey on 2007-02-28 15:18:07
hey i was rearrranging my layout and somehow my whole config of my track info mod panel disappeared. Is there a way to get it back (ie it's somewhere in a config file) or am i screwed?


I discoved the other day that windows records the foobar.cfg as part of the system restore. I don't suggest that you use System Restore, but you should be able to get it out of the System Volume Information folder (wont be named foobar.cfg mind).
Title: Track Info Panel with ability to change font
Post by: sankukaai on 2007-02-28 22:19:33
do you mind reminding me where i can find this folder? also under what name should i find this .cfg? thanks a million
Title: Track Info Panel with ability to change font
Post by: Purple Monkey on 2007-03-01 00:36:40
You'll need Administrator access, and what ever you do don't muck about with the files. If you do and attempt a restore you really screw up you system. It's probably in:
C:\System Volume Information\_restore{<hexcode>}\RP<numbers>\A<numbers>.cfg
Title: Track Info Panel with ability to change font
Post by: q-stankovic on 2007-03-01 18:08:16
Is there any possibility to have buttons that doesn't execute a command but opens a submenu with commands?
I would like to replace my main menu without bloating my UI with so many buttons - so i thought i could 1. define groups of commands in a button wich are then shown in submenu and 2. creating buttons that show submenus that already exist in main menu (f.e. main menu->edit->sort)

Edit: and 3. buttons that opens menus with commands and menus. (and opportunity to set seperators)
Title: Track Info Panel with ability to change font
Post by: leobeach on 2007-03-03 19:56:39
Hi all,

I think I have bug.
I have setup a trackinfopanel that looks good most of the time. When I open foobar (foobar.exe or any link pointing to it), everything looks OK, but when I double click on an mp3 file, the pictures from the trackinfo won't show.
Do you also have the same problem ?

Here the code (you could not make simplier !):

// Background
$imageabs2(%_width%,%_height%,,,,,,,images\blue.png,NOKEEPASPECT)

Same pb with buttons in //Per Track section



Stupid me, the answer was in the Wiki:
"Note: when using relative path, add a slash ('/') at the beginning."

So I have my answer !

Leo
Title: Track Info Panel with ability to change font
Post by: Snowsfall on 2007-03-04 05:04:32
I don't know if it's already been requested or even possible, but it would be very awesome if there was the option to add either a vertical or horizontal scrollbar to a panel, or at least make it scrollable with the mouse wheel.
Title: Track Info Panel with ability to change font
Post by: Bh4i on 2007-03-05 00:58:53
Im using this plugin for a while, but i cant find something:

The trackinfo panel displays information about the current song SELECTED in my playlist. However, i want trackinfo to let me view information about the current song PLAYING, and not selected.

Can someone help me?
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-03-05 01:01:07
Im using this plugin for a while, but i cant find something:

The trackinfo panel displays information about the current song SELECTED in my playlist. However, i want trackinfo to let me view information about the current song PLAYING, and not selected.

Can someone help me?

rightclick -> mode
Title: Track Info Panel with ability to change font
Post by: Bh4i on 2007-03-05 01:30:44
Srry for this stupid question, its mentioned in the first sentence of this thread...

Its working fine now

When im playing a song, i use 'now playing' mode. When i stop, i have to manually change to 'follow cursor' mode (because, when nothing is playing, i prefer 'follow cursor' mode)

Is there any way by doing this automatically? So when i stop playing, it will switch automatically to 'follow cursor' mode?
Title: Track Info Panel with ability to change font
Post by: GreenSmurf on 2007-03-06 03:13:45
Its been awhile since I posted but I was wondering if anyone figured out how to make scrolling lyrics work properly with the lyrics scrolling in direct relation to the percentage of the song playing and ending in the middle of the display area. I have come close a few times but its inconsistant depending on the length of the song. Thanks.

-Brandon
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-03-06 08:19:52
Srry for this stupid question, its mentioned in the first sentence of this thread...

Its working fine now

When im playing a song, i use 'now playing' mode. When i stop, i have to manually change to 'follow cursor' mode (because, when nothing is playing, i prefer 'follow cursor' mode)

Is there any way by doing this automatically? So when i stop playing, it will switch automatically to 'follow cursor' mode?

terrestrial had a good solution for this some posts back.  create a second track display panel, and keep one in each mode.  Then use an $if(%isplaying%...) to switch between them.
Code: [Select]
Ex.
$if(%isplaying%,
$panel(TDplaying,Track Display....)
,
$panel(TDstopped,Track Display....)
)
Title: Track Info Panel with ability to change font
Post by: baschinger on 2007-03-06 14:49:53
I just wrote a script that fits a single-lined string into an arbitrary sized rectangle (here the panel)
Just tested it with Calibri bold font

Code: [Select]
// Global
// this script only works with a defaultFontSize of 1
$puts(defaultfontsize,1)
$puts(dpi,92)

// Set defaultFont to calculate text width and height for the text being displayed
$font(Calibri,$get(defaultfontsize),bold,255-255-255)

// PerTrack
$if(%_trackinfo_notrack%,
    $puts(text,No track)
,
    //Put your Text here
    $puts(text,%title% performed by %artist%)
)

$puts(textwidth,$calcwidth($get(text)))
$puts(textheight,$calcheight($get(text)))

// Rectangle that the text is fit in
$puts(rectwidth,%_width%)
$puts(rectheight,%_height%)

// Text and Panel aspect ratios multiplied by 10000 due to lack of float values
$puts(textAR,$muldiv(10000,$get(textwidth),$get(textheight)))
$puts(panelAR,$muldiv(10000,$get(rectwidth),$get(rectheight)))

$if($greater($get(panelAR),$get(textAR)),
    $puts(fontsize,$muldiv($get(defaultfontsize),$get(rectheight),$get(textheight)))
,
    $puts(fontsize,$muldiv($get(defaultfontsize),$get(rectwidth),$get(textwidth)))
)

// convert from points to pixels (thanks to terrestrial)
$puts(fontsize, $muldiv($get(fontsize),$get(dpi),72))


// OUTPUT SECTION
$font(Calibri, $get(fontsize),bold,255-255-255)

$get(text)


Feel free to use and adjust it to suit your needs

greetz
Title: Track Info Panel with ability to change font
Post by: Blooooo on 2007-03-06 21:40:20
This belong here more than elsewhere.

Is there a way to center buttons that use text? I'd like it to not hover towards the right.
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-03-06 23:02:28
This belong here more than elsewhere.

Is there a way to center buttons that use text? I'd like it to not hover towards the right.

You can include an $align() before your actual button text.  Ex -
Code: [Select]
$button(,,,,50,12,'$align(center,middle)Test','$align(center,middle)TEST','COMMAND',)
Title: Track Info Panel with ability to change font
Post by: Squeller on 2007-03-08 18:34:19
I'm having align(center, middle) with a big font. This is not a problem with normal artist and album names. But when streaming, I want to display the URL, which has no spaces. If the url is too long, trackinfo panel decides not to display it. How can I solve it easily (i.e., no ton of code)?
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-03-08 18:43:06
If the text is too long it will disappear completely.  You can try the $cut() function to limit the length of any text string to a set number of characters.  Or conditionally use a smaller font if your string is greater than a certain number of characters.
Title: Track Info Panel with ability to change font
Post by: Squeller on 2007-03-08 18:54:53
If the text is too long it will disappear completely.  You can try the $cut() function to limit the length of any text string to a set number of characters.  Or conditionally use a smaller font if your string is greater than a certain number of characters.
Yes, I used $left(), but I hate implementing exceptions especially because I do not use a fixed width font. Thanks anyway.

@Author: Please fix the bug of the editor window: If you click apply, the cursor moves to the start position
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-03-08 19:41:46
@Author: Please fix the bug of the editor window: If you click apply, the cursor moves to the start position
This component is no longer being developed; you need to "upgrade" to the new component panels_ui, which has the same functionality as track_info_mod when columns_ui is the interface selected (and sports a much improved editing window ).
Title: Track Info Panel with ability to change font
Post by: Squeller on 2007-03-09 05:22:19
thx, shakey
Title: Track Info Panel with ability to change font
Post by: barry123 on 2007-03-14 18:55:36
when I change my font I get this

(http://xs313.xs.to/xs313/07113/tekst.jpg)

as you can see the G isn't correctly displayed.

is there something wrong with my code or someting else?

Code: [Select]
// PerTrack
$if(%ispaused%,
$alignabs(0,0,%_width%,15,,)Artist: [%artist%]
$alignabs(0,15,%_width%,15,,)Title: [%title%]
$alignabs(0,30,%_width%,15,,)Album: [%album%] [Track: %Tracknumber%]
$alignabs(0,45,%_width%,15,,)Date: [%date%]
$alignabs(0,60,%_width%,15,,)Bitrate: [%bitrate%kbps]
$alignabs(0,90,%_width%,15,,)Status: Paused,


// PerTrack
$if(%_trackinfo_notrack%,
$alignabs(0,0,%_width%,15,,)No track,
$alignabs(0,0,%_width%,15,,)Artist: [%artist%]
$alignabs(0,15,%_width%,15,,)Title: [%title%]
$alignabs(0,30,%_width%,15,,)Album: [%album%] [Track: %Tracknumber%]
$alignabs(0,45,%_width%,15,,)Date: [%date%]
$alignabs(0,60,%_width%,15,,)Bitrate: [%bitrate%kbps]


))


// PerSecond
$alignabs(0,75,%_width%,15,,)[Length: %Playback_time% / %length%]
Title: Track Info Panel with ability to change font
Post by: wraithdu on 2007-03-14 20:13:39
@barry123
In your $alignabs() tags you're not giving the text enough height to be rendered completely.  Change this line for example -
Code: [Select]
$alignabs(0,0,%_width%,15,,)Artist: [%artist%]
to
$alignabs(0,0,%_width%,25,,)Artist: [%artist%]
Title: Track Info Panel with ability to change font
Post by: Keikonium on 2007-03-16 20:04:21
I read a page back in this thread that all I need is Panels UI installed, and I no longer need track_info_mod and the single_column_playlist. Is that correct?

If I remove the other two components and keep JUST Panels UI, will my current COLUMNS UI config with track_info_mod panels stay intact? Will all the code in my panels remain intact?

Thanks .
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-03-16 20:09:24
If I remove the other two components and keep JUST Panels UI, will my current COLUMNS UI config with track_info_mod panels stay intact? Will all the code in my panels remain intact?

Thanks .

That info is stored in your foobar2000.cfg file so it will* remain intact.


*doing backups is always smart.
Title: Track Info Panel with ability to change font
Post by: Keikonium on 2007-03-16 20:11:37
Thanks for your quick reply shakey_snake .

I shall make a backup just in case... but hope it remains anyways (I have about 15 or so track info panels spread throughout the tabs in my config... would be a pain to fix it all lol).
Title: Track Info Panel with ability to change font
Post by: John Doe on 2007-03-21 15:47:10
Got a problem with this component.

I read this thread up to page 8 (than I got impatient) and the last page but coundn't find any similar problem:

In both modes I have the problem that I get text overlays on switching to next or previous or any other song.

(http://img258.imageshack.us/img258/7125/zwischenablage02df8.th.png) (http://img258.imageshack.us/my.php?image=zwischenablage02df8.png)

The code I'm using is a copy of "Lycox" code for 0.8.4 infobox:

Code: [Select]
// Highly customizeable track information made by Lycox

// Credits:
// Peter Pawlowski for great fb2k
// Free - for great progressbar
// upNorth - for filesize string
// Looks quite good with Arial, 8pt bold

// ==============================================
// Global Config Part //

// Shows Song Info in track info panel
// 0 = No, 1 = Yes
$puts(show_songinfo,1)

// Show various informations in Song Info
// 0 = No, 1 = Yes
$puts(title,1)
$puts(artist,1)
$puts(mixartist,1)
$puts(band,1)
$puts(album,1)
$puts(tracknumber,1)
$puts(genre,1)
$puts(bpm,1)
$puts(date,1)
$puts(copyright,0)


// Shows Additional Info in track info panel
// 0 = No, 1 = Yes
$puts(show_additionalinfo,1)

// Show various informations in Additional Info
// 0 = No, 1 = Yes
$puts(comment,1)
$puts(wwwartist,0)
$puts(publisher,0)
$puts(language,0)
$puts(composer,0)
$puts(lyricist,0)
$puts(conductor,0)
$puts(recordingdates,0)
$puts(fileowner,0)


// Shows Technical Info in track info panel
// 0 = No, 1 = Yes
$puts(show_techinfo,1)

// Show various informations in Tech Info
// 0 = No, 1 = Yes
$puts(codec,1)
$puts(bitrate,1)
$puts(samplerate,1)
$puts(channels,1)
$puts(time_elapsed_total,1)
$puts(trackgain,1)
$puts(albumgain,1)
$puts(rating,1)
$puts(play_counter,1)
$puts(play_date,1)
$puts(encodedby,1)
$puts(encodersettings,1)
$puts(filesize,1)
// hidden, because not really needed
$puts(filename_ext,1)
$puts(mediatype,0)
$puts(size,0)
$puts(songlen,0)
$puts(time,0)


// Shows Web Info in track info panel
// 0 = No, 1 = Yes
$puts(show_webinfo,1)

// Shows Web Related Infos in Web Info
// 0 = No, 1 = Yes
$puts(show_webrelated,0)

// Show various informations in Web Info
// 0 = No, 1 = Yes
$puts(wwwaudiofile,1)
$puts(wwwcopyright,1)
$puts(wwwcommercialinfo,1)
$puts(wwwpayment,1)
$puts(wwwpublisher,1)
$puts(wwwuser,1)

// Shows NetRadio Info in Web Info
// 0 = No, 1 = Yes
$puts(show_netradioinfo,1)

// Show various informations in NetRadio Info
// 0 = No, 1 = Yes
$puts(wwwradiopage,1)
$puts(netradioowner,1)
$puts(netradiostation,1)


// Shows Misc Info in track info panel
// 0 = No, 1 = Yes
$puts(show_miscinfo,1)

// Show various informations in Misc Info
// 0 = No, 1 = Yes
$puts(subtitle,1)
$puts(involvedpeople,1)
$puts(playlistdelay,0)
$puts(initialkey,0)
$puts(isrc,0)
$puts(partinset,0)


// Shows Original Info in track info panel
// 0 = No, 1 = Yes
$puts(show_originalinfo,1)

// Show various informations in Original Info
// 0 = No, 1 = Yes
$puts(origartist,1)
$puts(origyear,1)
$puts(origlyricist,1)
$puts(origfilename,1)

// Spacer
$puts(spacer,d6d6d6------------------------------------------------------------------------------------------$char(10))

// color codes
$puts(headline,256d3d)
$puts(info,ec9184)
$puts(text,000000)
$puts(grayed,c8c8c8)

// chars
$puts(rating_char,♪)
$puts(progress_char,●)

// End Global Config
// ==============================================

// Song Info
$if($strcmp(1,$get(show_songinfo)),
$char(1)$get(headline)Song Info$char(10)
$if($strcmp(1,$get(title)),$get(info)Title: $get(text)$if(%title%,%title%,$get(grayed)'['No Title']')$char(10))
$if($strcmp(1,$get(artist)),$get(info)Artist: $get(text)$if(%artist%,%artist%,$get(grayed)'['Unknown Artist']')$char(10))
$if($strcmp(1,$get(mixartist))
|$strcmp(1,$get(band))
,
$if($strcmp(1,$get(mixartist)),$if(%mixartist%,$get(info)MixArtist: $get(text)%mixartist%$char(10)))
$if($strcmp(1,$get(band)),$if(%band%,$get(info)Band: $get(text)%band%$char(10))))
$if($strcmp(1,$get(album)),$if(%album%,$get(info)Album: $get(text)%album%$char(10)))
$if($strcmp(1,$get(tracknumber)),$if(%tracknumber%,$get(info)Track: $get(text)%tracknumber%$char(10)))
$if($strcmp(1,$get(genre)),$if(%genre%,$get(info)Genre: $get(text)%genre%$char(10)))
$if($strcmp(1,$get(bpm)),$if(%bpm%,$get(info)bpm: $get(text)%bpm%$char(10)))
$if($strcmp(1,$get(date)),$if(%date%,$get(info)Date: $get(text)%date%$char(10)))
$if($strcmp(1,$get(copyright)),$if(%copyright%,$get(info)© $get(text)%copyright%$char(10)))
)
$if($strcmp(1,$get(show_additionalinfo)),
$if($if(%comment%,$and($strcmp(1,$get(comment))))
|$if(%wwwartist%,$and($strcmp(1,$get(wwwartist))))
|$if(%publisher%,$and($strcmp(1,$get(publisher))))
|$if(%language%,$and($strcmp(1,$get(language))))
|$if(%composer%,$and($strcmp(1,$get(composer))))
|$if(%lyricist%,$and($strcmp(1,$get(lyricist))))
|$if(%conductor%,$and($strcmp(1,$get(conductor))))
|$if(%recordingdates%,$and($strcmp(1,$get(recordingdates))))
|$if(%fileowner%,$and($strcmp(1,$get(fileowner))))
,

$if($strcmp(1,$get(comment)),$if(%comment%,$get(info)Comment: $get(text)%comment%$char(10)))
$if($strcmp(1,$get(wwwartist)),$if(%wwwartist%,$get(info)Web: $get(text)%wwwartist%$char(10)))
$if($strcmp(1,$get(publisher)),$if(%publisher%,$get(info)Publisher: $get(text)%publisher%$char(10)))
$if($strcmp(1,$get(language)),$if(%language%,$get(info)Language: $get(text)%language%$char(10)))
$if($strcmp(1,$get(composer)),$if(%composer%,$get(info)Composer: $get(text)%composer%$char(10)))
$if($strcmp(1,$get(lyricist)),$if(%lyricist%,$get(info)Lyricist: $get(text)%lyricist%$char(10)))
$if($strcmp(1,$get(conductor)),$if(%conductor%,$get(info)Conductor: $get(text)%conductor%$char(10)))
$if($strcmp(1,$get(contentgroup)),$if(%contentgroup%,$get(info)Group: $get(text)%contentgroup%$char(10)))
$if($strcmp(1,$get(recordingdates)),$if(%recordingdates%,$get(info)Rec. Date: $get(text)%recordingdates%$char(10)))
$if($strcmp(1,$get(fileowner)),$if(%fileowner%,$get(info)Owner: $get(text)%fileowner%$char(10)))))
// End Song Info






// Tech Info
$if($strcmp(1,$get(show_techinfo)),
$char(10)

$char(1)$get(headline)Tech Info$char(10)
$get(info)Added:$get(text) %added% $get(info)Playcount:$get(text) %play_count%$char(10)
$if($strcmp(1,$get(codec)),$get(info)Codec: $get(text)%__codec%$char(10))
$if($strcmp(1,$get(bitrate)),$get(info)Bitrate: $get(text)%__bitrate% Kbit/s  $if2(%__extrainfo%,'CBR'))   
$if($strcmp(1,$get(samplerate)),$get(info)Samplerate: $get(text)%__samplerate% Hz$char(10))
$if($strcmp(1,$get(channels)),$get(info)Channels: $get(text)$if(%__channels%,$ifgreater(%__channels%,2,%__channels%ch,$ifgreater(%__channels%,1,' 'Stereo,''Mono)),)$char(10))
$puts(size,5)
$if($strcmp(1,$get(trackgain)),$if(%__replaygain_track_gain%,$get(info)RG Track: $get(text)$cut(%__replaygain_track_gain%,$get(size)) dB))           
$if($strcmp(1,$get(albumgain)),$if(%__replaygain_album_gain%,$get(info)RG Album: $get(text)$cut(%__replaygain_album_gain%,$get(size)) dB$char(10)))

$puts(rating,1)
$puts(_rating,$repeat($get(rating_char),%rating%))
$if($strcmp(1,$get(rating)),$if(%rating%,$get(info)Rating: $get(text) $get(_rating) $get(grayed)'('%rating%')'$char(10)))

$if($strcmp(1,$get(play_counter)),$if(%play_counter%,$get(info)Played $get(text)%play_counter%$get(info) times.$char(10)))
$if($strcmp(1,$get(play_date)),$if(%play_date%,$get(info)Last played: $get(text)%play_date%$char(10)))
$if($strcmp(1,$get(encodedby)),$if(%encodedby%,$get(info)Encoded by: $get(text)%encodedby%$char(10)))
$if($strcmp(1,$get(encodersettings)),$if(%encodersettings%,$get(info)Encoder Settings: $get(text)%encodersettings%$char(10)))

// formating filesize string by upNorth
$if($strcmp(1,$get(filesize)),$get(info)Filesize: $get(text)$div(%_filesize%,1048576).$left($num($muldiv($mod(%_filesize%,1048576),1000,1048576),3),2)' MB'$char(10))
$if($strcmp(1,$get(filename_ext)),$get(info)File: $get(text)%_filename_ext%$char(10))
$if($strcmp(1,$get(mediatype)),$if(%mediatype%,$get(info)Mediatype: $get(text)%mediatype%$char(10)))
$if($strcmp(1,$get(size)),$if(%size%,$get(info)Size: $get(text)%size%$char(10)))
$if($strcmp(1,$get(songlen)),$if(%songlen%,$get(info)Length: $get(text)%songlen%$char(10)))
$if($strcmp(1,$get(time)),$if(%time%,$get(info)Time: $get(text)%time%$char(10)))
)
// End Tech Info

// Web Info
$if($strcmp(1,$get(show_webinfo)),
$if($if(%wwwaudiofile%,$and($strcmp(1,$get(wwwaudiofile))))
|$if(%wwwcopyright%,$and($strcmp(1,$get(wwwcopyright))))
|$if(%wwwcommercialinfo%,$and($strcmp(1,$get(wwwcommercialinfo))))
|$if(%wwwpayment%,$and($strcmp(1,$get(wwwpayment))))
|$if(%wwwpublisher%,$and($strcmp(1,$get(wwwpublisher))))
|$if(%wwwuser%,$and($strcmp(1,$get(wwwuser))))
|$if(%wwwradiopage%,$and($strcmp(1,$get(wwwradiopage))))
|$if(%netradioowner%,$and($strcmp(1,$get(netradioowner))))
|$if(%netradiostation%,$and($strcmp(1,$get(netradiostation))))
,$get(spacer)

// Web Related
$if($strcmp(1,$get(show_webrelated)),
$if($if(%wwwaudiofile%,$and($strcmp(1,$get(wwwaudiofile))))
|$if(%wwwcopyright%,$and($strcmp(1,$get(wwwcopyright))))
|$if(%wwwcommercialinfo%,$and($strcmp(1,$get(wwwcommercialinfo))))
|$if(%wwwpayment%,$and($strcmp(1,$get(wwwpayment))))
|$if(%wwwpublisher%,$and($strcmp(1,$get(wwwpublisher))))
|$if(%wwwuser%,$and($strcmp(1,$get(wwwuser))))
,
$char(1)C$get(headline)Web Info$char(10)
$if($strcmp(1,$get(wwwaudiofile)),$if(%wwwaudiofile%,$get(info)File: $get(text)%wwwaudiofile%$char(10)))
$if($strcmp(1,$get(wwwcopyright)),$if(%wwwcopyright%,$get(info)© $get(text)%wwwcopyright%$char(10)))
$if($strcmp(1,$get(wwwaudiosource)),$if(%wwwaudiosource%,$get(info)Source: $get(text)%wwwaudiosource%$char(10)))
$if($strcmp(1,$get(wwwcommercialinfo)),$if(%wwwcommercialinfo%,$get(info)Info: $get(text)%wwwcommercialinfo%$char(10)))
$if($strcmp(1,$get(wwwpayment)),$if(%wwwpayment%,$get(info)Payment: $get(text)%wwwpayment%$char(10)))
$if($strcmp(1,$get(wwwpublisher)),$if(%wwwpublisher%,$get(info)Publisher: $get(text)%wwwpublisher%$char(10)))
$if($strcmp(1,$get(wwwuser)),$if(%wwwuser%,$get(info)User: $get(text)%wwwuser%$char(10)))
$char(10))
)
// End Web Info

// Net Radio Ifno
$if($strcmp(1,$get(show_netradioinfo)),

$if($if(%wwwradiopage%,$and($strcmp(1,$get(wwwradiopage))))
|$if(%netradioowner%,$and($strcmp(1,$get(netradioowner))))
|$if(%netradiostation%,$and($strcmp(1,$get(netradiostation))))
,$char(1)C$get(headline)NetRadio Info$char(10)
$if($strcmp(1,$get(wwwradiopage)),$if(%wwwradiopage%,$get(info)Page: $get(text)%wwwradiopage%$char(10)))
$if($strcmp(1,$get(netradioowner)),$if(%netradioowner%,$get(info)Owner: $get(text)%netradioowner%$char(10)))
$if($strcmp(1,$get(netradiostation)),$if(%netradiostation%,$get(info)Station: $get(text)%netradiostation%$char(10))))
)))
// End - Web Related

// Misc Info
$if($strcmp(1,$get(show_miscinfo)),
$if($if(%subtitle%,$and($strcmp(1,$get(subtitle))))
|$if(%involvedpeople%,$and($strcmp(1,$get(involvedpeople))))
|$if(%playlistdelay%,$and($strcmp(1,$get(playlistdelay))))
|$if(%initialkey%,$and($strcmp(1,$get(initialkey))))
|$if(%isrc%,$and($strcmp(1,$get(isrc))))
|$if(%partinset%,$and($strcmp(1,$get(partinset))))
,$get(spacer)
$char(1)C$get(headline)Misc Info$char(10)
$if($strcmp(1,$get(subtitle)),$if(%subtitle%,$get(info)Subtitle: $get(text)%subtitle%$char(10)))
$if($strcmp(1,$get(involvedpeople)),$if(%involvedpeople%,$get(info)Involved People: $get(text)%involvedpeople%$char(10)))
$if($strcmp(1,$get(playlistdelay)),$if(%playlistdelay%,$get(info)Playlistdelay: $get(text)%playlistdelay%$char(10)))
$if($strcmp(1,$get(initialkey)),$if(%initialkey%,$get(info)Initialkey: $get(text)%initialkey%$char(10)))
$if($strcmp(1,$get(isrc)),$if(%isrc%,$get(info)ISRC: $get(text)%isrc%$char(10)))
$if($strcmp(1,$get(partinset)),$if(%partinset%,$get(info)Partinset: $get(text)%partinset%$char(10)))
))
// End Misc Info

// Original Info
$if($strcmp(1,$get(show_originalinfo)),
$if($if(%origartist%,$and($strcmp(1,$get(origartist))))
|$if(%origyear%,$and($strcmp(1,$get(origyear))))
|$if(%origlyricist%,$and($strcmp(1,$get(origlyricist))))
|$if(%origfilename%,$and($strcmp(1,$get(origfilename))))
,$get(spacer)
$char(1)C$get(headline)Original Info$char(10)
$if($strcmp(1,$get(origartist)),$if(%origartist%,$get(info)Artist: $get(text)%origartist%$char(10)))
$if($strcmp(1,$get(origyear)),$if(%origyear%,$get(info)Year: $get(text)%origyear%$char(10)))
$if($strcmp(1,$get(origlyricist)),$if(%origlyricist%,$get(info)Lyricist: $get(text)%origlyricist%$char(10)))
$if($strcmp(1,$get(origfilename)),$if(%origfilename%,$get(info)Filename: $get(text)%origfilename%$char(10)))
))

My components:

Code: [Select]
Core (2006-11-25 14:21:34)
    foobar2000 core 0.9.4.2
foo_abx.dll (2006-11-25 14:20:22)
    ABX Comparator 1.3.1
foo_albumlist.dll (2006-11-25 18:49:06)
    Album List 3.2.0
foo_browser.dll (2006-12-04 09:42:48)
    Music Browser 1.2.3 [Dec  4 2006 - 09:42:32]
foo_burninate.dll (2006-08-04 20:56:44)
    Audio CD Writer 2.0.1
foo_cdda.dll (2006-11-25 14:19:46)
    CD Audio Decoder 2.1.1
foo_converter.dll (2006-11-25 14:20:00)
    Converter 1.0.1
foo_custominfo.dll (2006-08-25 04:12:16)
    foo_custominfo 0.1.2
foo_cwb_hooks.dll (2006-12-01 13:47:46)
    cwbowron's title format hooks 1.1.0beta [Dec  1 2006 - 13:47:34]
foo_dbsearch.dll (2006-03-12 23:24:38)
    Database search 1.3.1 beta 11
foo_dockable_panels.dll (2006-12-04 09:04:14)
    Dockable Panels 1.0.5 [Dec  4 2006 - 09:04:00]
foo_dsp_continuator.dll (2006-09-06 10:28:10)
    Continuator 0.4.0
foo_dsp_std.dll (2006-11-25 14:20:12)
    Standard DSP array 1.0
foo_extm3u.dll (2007-02-02 00:10:27)
    EXTM3U playlist format plugin 1.3
foo_freedb2.dll (2006-08-29 19:43:04)
    freedb Tagger 0.5.2a
foo_infobox.dll (2006-06-25 12:48:13)
    Special file info box 2.0.3
foo_input_monkey.dll (2006-08-04 20:57:18)
    Monkey's Audio decoder 2.1.1
foo_input_std.dll (2006-11-25 14:19:14)
    FLAC Decoder 1.1.0
    Standard Input Array 1.0
    WMA Decoder 1.1
foo_lnk.dll (2006-03-11 18:24:54)
    Shell link resolver 1.1
foo_lyricsdb.dll (2006-07-19 22:45:52)
    foo_lyricsdb 0.0.7 beta 4
foo_masstag.dll (2006-11-25 14:18:42)
    Masstagger 1.6
foo_masstag_addons.dll (2006-10-15 08:59:42)
    Masstagger Addons 0.3.2
foo_menu_addons.dll (2006-11-28 04:28:28)
    Menu Addons 0.3.6
foo_midi.dll (2006-08-21 09:42:26)
    MIDI synthesizer host 1.7
foo_navigator.dll (2006-11-04 20:56:28)
    Navigator 0.6
foo_playcount.dll (2006-09-16 16:55:54)
    Playback Statistics 1.3.2
foo_playlist_manager.dll (2006-03-12 23:25:15)
    Playlist Manager 1.0
foo_preview.dll (2006-07-24 16:19:51)
    Preview 1.2
foo_random.dll (2006-03-13 10:35:03)
    Randomized playlist entry 1.2.3
foo_rating.dll (2006-12-10 04:22:22)
    foo_rating BETA 1.1
foo_rgscan.dll (2006-11-25 14:18:18)
    ReplayGain Scanner 2.0.2
foo_run.dll (2006-06-15 21:08:10)
    Run services 0.3.2
foo_scheduler.dll (2006-12-04 17:23:20)
    Scheduler 3.52
foo_sendtodevice.dll (2006-05-17 12:21:24)
    Send to Device 1.0.4 [May 17 2006 - 13:21:17]
foo_ui_columns.dll (2006-04-29 21:48:01)
    Columns UI 0.1.3 beta 1v5
foo_ui_std.dll (2006-11-25 14:18:12)
    Default User Interface 0.9acc
foo_uie_albumart.dll (2006-10-07 15:35:36)
    Album Art Panel 0.2.5
foo_uie_albumlist.dll (2006-04-28 13:15:07)
    Album list panel 0.2.1 beta 4
foo_uie_bookmarks.dll (2006-09-14 23:26:32)
    Bookmarks 0.0.5.2
foo_uie_console.dll (2006-04-28 13:14:36)
    Console panel 0.2
foo_uie_quicksearch.dll (2006-10-15 17:56:24)
    Quick Search Toolbar 2.8j
foo_uie_tabs.dll (2006-09-15 22:42:12)
    Tabbed panel modified 0.2.4
foo_uie_trackinfo_mod.dll (2007-01-05 13:36:20)
    Track info panel mod 0.8.0 beta [Jan  5 2007 - 13:36:12]
foo_unpack.dll (2006-11-25 14:20:32)
    RAR reader 1.1
    ZIP/GZIP reader 1.0
foo_utils.dll (2006-04-27 11:37:32)
    Playlist tools 0.5.7
foo_verifier.dll (2006-08-29 21:09:16)
    File Integrity Verifier 1.0.1
foo_write_http.dll (2006-09-06 10:44:32)
    HTTP Writer 1.1

You got any idea what happens there?

I forgot: When I switch to another tab and back, the trackinfo gets refreshed!

JD


/edit: "I forgot..."
Title: Track Info Panel with ability to change font
Post by: ozstrike on 2007-03-22 20:14:38
OK so I have this panel, and I stole some code from some other people's configs, but I'm not sure how to do some stuff. Can I have some help guys?

Code: [Select]
// !!!!BEGIN USER CONFIGURATION!!!!

// Show Artist? (1 = show, 0 = don't show)
$puts(arts,1)

// Show Album?
$puts(albs,1)

// Show Title?
$puts(tils,1)

// Info Heading Color e.g. "Title:"
$puts(head,$rgb(85,217,255))

// Info Color e.g. "Black Dog"
$puts(info,$rgb(135,135,135))

// Info Annotation Color (e.g. kbps is the annotation)
$puts(anno,$rgb(135,135,135))

// Separator
// the separators (Song,Play,Tech info) will change to a different color if the panel mode is set to Follow cursor.
// change "followcursorcol" to change this color. It is currently set to flash orange.
$puts(followcursorcol,$rgb(200,150,50))
$puts(text2,$rgb(100,105,110))
$puts(text1,$if(%_trackinfo_nowplaying%,$rgb(19,66,94))$if(%_trackinfo_followcursor%,$get(followcursorcol)))
$puts(fadeend,$rgb(245,245,240))
$puts(seplen,70)
$puts(sepchar,'.')

// !!!!END USER CONFIGURATION!!!!


// SONG INFO SEPARATOR
$transition($repeat($get(sepchar),$get(seplen)),$get(fadeend),$get(text1))$get(text1)'[' $get(text2)S o n g  I n f o $get(text1)']'$char(10)
$if(%title%,$get(head)Title: $get(info)%title%$char(10),)
$if(%artist%,$get(head)Artist: $get(info)%artist%$char(10),)
$if(%album%,$get(head)Album: $get(info)%album%$char(10),)
$if(%date%,$get(head)Year: $get(info)%date%$char(10),)
$if(%tracknumber%,$get(head)Track #: $get(info)%tracknumber%$char(10),)
$if(%genre%,$get(head)Genre: $get(info)%genre%$char(10),)

// TECH INFO SEPARATOR
$transition($repeat($get(sepchar),$get(seplen)),$get(fadeend),$get(text1))$get(text1)'[' $get(text2)T e c h  I n f o $get(text1)']'$char(10)


This is what I have now (yes, I know the tech bit is empty. Basically, I want to know how to just show something like "Not Playing" when everything is stopped. Currently, it shows the separators, and when I had stuff in the tech section, it showed the prefixes and notations for the info (eg "kbps"), but no info, and it looked messy.
Any ideas?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-03-22 21:38:24
I want to know how to just show something like "Not Playing" when everything is stopped. Currently, it shows the separators, and when I had stuff in the tech section, it showed the prefixes and notations for the info (eg "kbps"), but no info, and it looked messy.
Code: [Select]
$if(%isplaying%,
// Code For Displaying Information //
,
Not Playing
)
Title: Track Info Panel with ability to change font
Post by: ozstrike on 2007-03-22 22:14:27
Thanks
Title: Track Info Panel with ability to change font
Post by: ozstrike on 2007-03-25 15:43:12
Is there a way to position a group of things?
I'm adding rating buttons/stars to my trackinfo area, so that when I click on the star, it rates the track playing (kinda stolen from Brumals config)

Now there's a block of code for all of this, and it's currently displaying them aligned a bit off to the right, but in the wrong vertical place. Is there a way to align them all, or will I have to do each star/button separately?

Code: [Select]
// rating images
$ifequal(%rating%,1,
$button($sub(%_width%,82),79,0,0,12,12,/images\brumal-treeline\star-on.png,,TAG:SET:Rating:,),
$button($sub(%_width%,82),79,0,0,12,12,
$ifgreater(%rating%,0,/images\brumal-treeline\star-on.png,/images\brumal-treeline\star-off.png)
,,TAG:SET:Rating:1,)
)
$ifequal(%rating%,2,
$button($sub(%_width%,70),79,0,0,12,12,/images\brumal-treeline\star-on.png,,TAG:SET:Rating,),
$button($sub(%_width%,70),79,0,0,12,12,
$ifgreater(%rating%,1,/images\brumal-treeline\star-on.png,/images\brumal-treeline\star-off.png)
,,TAG:SET:Rating:2,)
)
$ifequal(%rating%,3,
$button($sub(%_width%,58),79,0,0,12,12,/images\brumal-treeline\star-on.png,,TAG:SET:Rating,),
$button($sub(%_width%,58),79,0,0,12,12,
$ifgreater(%rating%,2,/images\brumal-treeline\star-on.png,/images\brumal-treeline\star-off.png)
,,TAG:SET:Rating:3,)
)
$ifequal(%rating%,4,
$button($sub(%_width%,46),79,0,0,12,12,/images\brumal-treeline\star-on.png,,TAG:SET:Rating,),
$button($sub(%_width%,46),79,0,0,12,12,
$ifgreater(%rating%,3,/images\brumal-treeline\star-on.png,/images\brumal-treeline\star-off.png)
,,TAG:SET:Rating:4,)
)
$ifequal(%rating%,5,
$button($sub(%_width%,34),79,0,0,12,12,/images\brumal-treeline\star-on.png,,TAG:SET:Rating,),
$button($sub(%_width%,34),79,0,0,12,12,
$ifgreater(%rating%,4,/images\brumal-treeline\star-on.png,/images\brumal-treeline\star-off.png)
,,TAG:SET:Rating:5,)
)


Also, for some reason, if I put in another separator for "Rating" as in the code above, it breaks the "Not Playing" thing I have. I'm putting it in before the rating code, and inside the $if(isplaying etc code. Any ideas?

Edit: Never mind, I figured out the vertical alignment. now if there's an easy way to align all 5 to the centre....
Title: Track Info Panel with ability to change font
Post by: barry123 on 2007-03-25 19:29:14
is there a way to do this:

when I play a .ASX file (online radio stream) I want to see something like this:

Internet radio station in my trackinfo panel.

else just my normal info:

$alignabs(2,5,%_width%,15,,)Artist: [%artist%]
$alignabs(2,20,%_width%,15,,)Title: [%title%]
$alignabs(2,35,%_width%,15,,)Album: [%album%]    [Track: #%Tracknumber%]
$alignabs(2,50,%_width%,15,,)Date: [%date%]
$alignabs(2,65,%_width%,15,,)Genre: [%genre%]
$alignabs(2,80,%_width%,15,,)Bitrate: [%bitrate% kbps]
Title: Track Info Panel with ability to change font
Post by: sogood on 2007-03-26 05:07:29
can imageabs STRETCH picture to lager ? like 150x150 to 300x300 ?

any other function can ?
Title: Track Info Panel with ability to change font
Post by: CepiPerez on 2007-03-26 05:16:53
can imageabs STRETCH picture to lager ? like 150x150 to 300x300 ?

any other function can ?


No, you need to use $imageabs2
Check the wiki to learn how to use this function.
Title: Track Info Panel with ability to change font
Post by: TheBlackCat on 2007-03-26 05:58:05
I was wondering, is there a performance penalty for using a track info panel inside panels ui, relative to just putting whatever you were going to put directly into the main panels ui code?  It would be helpful for organizing in some cases.  Does it make a performance difference if you use several such panels relative to just using one?
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-03-26 08:25:05
Is there a way to position a group of things?
...
Edit: Never mind, I figured out the vertical alignment. now if there's an easy way to align all 5 to the centre....
My suggestion would be to choose a reference point such as a side or the middle of your buttons. Then define a variable with $puts() for that reference point and code all your buttons off of that with $get(). For example:
Code: [Select]
$puts(offset.button.x,$div(%_width%,2))
$puts(offset.button.y,$sub(%_height%,16))

$button($sub($get(offset.button.x),50),$get(offset.button.y),0,0,0,0,/images\dark.prev.png,/images\bright.prev.png,Previous,)
$button($sub($get(offset.button.x),25),$get(offset.button.y),0,0,0,0,/images\dark.stop.png,/images\bright.stop.png,Stop,)
$button($get(offset.button.x),$get(offset.button.y),0,0,0,0,/images\dark.$if(%ispaused%,pause,play).png,/images\bright.$if(%ispaused%,pause,play).png,Play or Pause,TOOLTIP:$if(%isplaying%,$if(%ispaused%,Resume,Pause),Play))
$button($add($get(offset.button.x),25),$get(offset.button.y),0,0,0,0,/images\dark.next.png,/images\bright.next.png,Next,)
This way all you need to do is change the variable at the top and the entire group of buttons will move accordingly. If you go even further by defining that variable based off of window size like in the example above, the buttons will automatically reposition themselves if you resize foobar.


barry123:
Code: [Select]
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),
Internet Radio Stream
,
$alignabs(2,5,%_width%,15,,)Artist: [%artist%]
$alignabs(2,20,%_width%,15,,)Title: [%title%]
$alignabs(2,35,%_width%,15,,)Album: [%album%] [Track: #%Tracknumber%]
$alignabs(2,50,%_width%,15,,)Date: [%date%]
$alignabs(2,65,%_width%,15,,)Genre: [%genre%]
$alignabs(2,80,%_width%,15,,)Bitrate: [%bitrate% kbps]
)
Title: Track Info Panel with ability to change font
Post by: barry123 on 2007-03-26 14:43:00
thank you for the answer, but nothing happens when I listen to a radio station.

this is the file I open:
633104880142201250.ASX

the code is
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),

so I tried
$if($strcmp($left(%path%,7),*.asx$char(58)$char(47)$char(47)),

but It won't work
I see nothing at all.
Title: Track Info Panel with ability to change font
Post by: ozstrike on 2007-03-27 20:28:49
If I add the //Persecond bit above my code for bitrate and length, it makes the rest of the stuff disappear, and completely changes the formatting for the display. Any ideas on how to fix this?
Title: Track Info Panel with ability to change font
Post by: John Doe on 2007-03-27 20:56:54
sorry for bothering again. any ideas for my described (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=47044&view=findpost&p=480094) little abnormality?

JD
Title: Track Info Panel with ability to change font
Post by: barry123 on 2007-03-27 22:09:49
If I add the //Persecond bit above my code for bitrate and length, it makes the rest of the stuff disappear, and completely changes the formatting for the display. Any ideas on how to fix this?


post the script.

possible some ] or , forgotten.
Title: Track Info Panel with ability to change font
Post by: ozstrike on 2007-03-27 22:19:14
Code: [Select]
// !!!!BEGIN USER CONFIGURATION!!!!

// Show Artist? (1 = show, 0 = don't show)
$puts(arts,1)

// Show Album?
$puts(albs,1)

// Show Title?
$puts(tils,1)

// Info Heading Color e.g. "Title:"
$puts(head,$rgb(19,66,94))

// Info Color e.g. "Black Dog"
$puts(info,$rgb(135,135,135))

// Info Annotation Color (e.g. kbps is the annotation)
$puts(anno,$rgb(135,135,135))

// Separator
// the separators (Song,Play,Tech info) will change to a different color if the panel mode is set to Follow cursor.
// change "followcursorcol" to change this color. It is currently set to flash orange.
$puts(followcursorcol,$rgb(200,150,50))
$puts(text2,$rgb(100,105,110))
$puts(text1,$if(%_trackinfo_nowplaying%,$rgb(19,66,94))$if(%_trackinfo_followcursor%,$get(followcursorcol)))
$puts(fadeend,$rgb(245,245,240))
$puts(seplen,70)
$puts(sepchar,'.')

// NOT PLAYING
$puts(notplaying,$transition($repeat($get(sepchar),$get(seplen)),$get(fadeend),$get(text1))$get(text1)'[' $get(text2)Not Playing $get(text1)']'$char(10))

// !!!!END USER CONFIGURATION!!!!

// Day Conversion
$puts(day,$substr(%last_played%,9,10))
$if(%last_played%,
$if($strcmp($left($get(day),1),0),$puts(day,$right($get(day),1))))
$if($strcmp($get(day),11),$puts(xx,th),
$if($strcmp($get(day),12),$puts(xx,th),
$if($strcmp($get(day),13),$puts(xx,th),
$if($strcmp($right($get(day),1),1),$puts(xx,st),
$if($strcmp($right($get(day),1),2),$puts(xx,nd),
$if($strcmp($right($get(day),1),3),$puts(xx,rd),
$puts(xx,th)))))))

// Month Conversion
$puts(month,$substr(%last_played%,6,7))
$puts(month_name,$select($get(month),
Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec))

// Year Conversion
$puts(year,$substr(%last_played%,1,4))

// Time Conversion
$puts(hour,$substr(%last_played%,12,13))
$puts(min,$substr(%last_played%,14,16))
$puts(sec,$substr(%last_played%,17,19))

// 24 Hour to 12 Hour Conversion
$if($strcmp($left($get(hour),1),0),$puts(hour1,$right($get(hour),1)))
$if($strcmp($left($get(hour),1),1),$puts(hour1,$sub($get(hour),12)))
$if($strcmp($left($get(hour),1),2),$puts(hour1,$sub($get(hour),12)))
$if($strcmp($get(hour),00),$puts(hour1,12))
$if($strcmp($get(hour),10),$puts(hour1,10))
$if($strcmp($get(hour),11),$puts(hour1,11))
$if($strcmp($get(hour),12),$puts(hour1,12))

// AM/PM Conversion
$if($strcmp($get(hour),00),$puts(yy,am))
$if($strcmp($get(hour),10),$puts(yy,am))
$if($strcmp($get(hour),11),$puts(yy,am))
$if($strcmp($get(hour),12),$puts(yy,pm))
$if($strcmp($get(hour),24),$puts(yy,am))
$if($strcmp($left($get(hour),1),0),$puts(yy,am))
$if($strcmp($left($get(hour),1),1),$puts(yy,pm))
$if($strcmp($left($get(hour),1),2),$puts(yy,pm))

// Date Format
$puts(time_of_year,$get(month_name) $get(day)$get(xx)',' $get(year))

// Time Format
$puts(time_of_day,$get(hour1)$get(min)$get(sec) $get(yy))

$if(%isplaying%,
// SONG INFO SEPARATOR
$transition($repeat($get(sepchar),$get(seplen)),$get(fadeend),$get(text1))$get(text1)'[' $get(text2)S o n g  I n f o $get(text1)']'$char(10)
$if(%title%,$get(head)Title: $get(info)%title%$char(10),)
$if(%artist%,$get(head)Artist: $get(info)%artist%$char(10),)
$if(%album%,$get(head)Album: $get(info)%album%$char(10),)
$if(%date%,$get(head)Year: $get(info)%date%$char(10),)
$if(%tracknumber%,$get(head)Track #: $get(info)%tracknumber%$char(10),)
$if(%genre%,$get(head)Genre: $get(info)%genre%$char(10),)

// TECH INFO SEPARATOR
$transition($repeat($get(sepchar),$get(seplen)),$get(fadeend),$get(text1))$get(text1)'[' $get(text2)T e c h  I n f o $get(text1)']'$char(10)
$get(head)Length: $get(info)%_length%$char(10)
$get(head)Codec: $get(info)%codec%[ '('%__extrainfo%')'][ %codec_profile%] @ %bitrate%kbps )$char(10)
$get(head)Compression: $get(info)$div(1411,%__bitrate%).$substr($muldiv(1411,100,%__bitrate%),2,3):1 '('$get(info)$muldiv(%__bitrate%,100,1411)$get(anno)'%)'$char(10)
$get(head)Channels: $get(info)$if($stricmp($codec(),MP3),$get(space2)$caps(%__mp3_stereo_mode%),
$if(%__channels%,$ifgreater(%__channels%,1,Stereo,Mono),'?'))$char(10)
$if(%__bitspersample%,$get(head)Bitdepth: $get(info)%__bitspersample% bits/sample$char(10),)
$if(%__samplerate%,$get(head)Samplerate: $get(info)$div(%__samplerate%,1000).$substr(%__samplerate%,3,3) KHz $char(10))
$if(%_filesize%,$get(head)Filesize: $get(info)
$div(%_filesize%,1048576).$left($num($muldiv($mod(%_filesize%,1048576),100,1048576),2),2) $get(anno)'MB'$char(10),)

$if(%last_played%,
// PLAY STATS SEPARATOR
$transition($repeat($get(sepchar),$get(seplen)),$get(fadeend),$get(text1))$get(text1)'[' $get(text2)P l a y  I n f o $get(text1)']'
$char(10),)

$if(%play_count%,$get(head)Played $get(info)%play_count% times$char(10),)
$if(%last_played%,$get(head)Last played on $get(info)$get(time_of_year) at $get(time_of_day)$char(10),)

// rating images
$ifequal(%rating%,1,
$button($sub(%_width%,82),290,0,0,12,12,/images\brumal-treeline\star-on.png,,TAG:SET:Rating:,),
$button($sub(%_width%,82),290,0,0,12,12,
$ifgreater(%rating%,0,/images\brumal-treeline\star-on.png,/images\brumal-treeline\star-off.png)
,,TAG:SET:Rating:1,)
)
$ifequal(%rating%,2,
$button($sub(%_width%,70),290,0,0,12,12,/images\brumal-treeline\star-on.png,,TAG:SET:Rating,),
$button($sub(%_width%,70),290,0,0,12,12,
$ifgreater(%rating%,1,/images\brumal-treeline\star-on.png,/images\brumal-treeline\star-off.png)
,,TAG:SET:Rating:2,)
)
$ifequal(%rating%,3,
$button($sub(%_width%,58),290,0,0,12,12,/images\brumal-treeline\star-on.png,,TAG:SET:Rating,),
$button($sub(%_width%,58),290,0,0,12,12,
$ifgreater(%rating%,2,/images\brumal-treeline\star-on.png,/images\brumal-treeline\star-off.png)
,,TAG:SET:Rating:3,)
)
$ifequal(%rating%,4,
$button($sub(%_width%,46),290,0,0,12,12,/images\brumal-treeline\star-on.png,,TAG:SET:Rating,),
$button($sub(%_width%,46),290,0,0,12,12,
$ifgreater(%rating%,3,/images\brumal-treeline\star-on.png,/images\brumal-treeline\star-off.png)
,,TAG:SET:Rating:4,)
)
$ifequal(%rating%,5,
$button($sub(%_width%,34),290,0,0,12,12,/images\brumal-treeline\star-on.png,,TAG:SET:Rating,),
$button($sub(%_width%,34),290,0,0,12,12,
$ifgreater(%rating%,4,/images\brumal-treeline\star-on.png,/images\brumal-treeline\star-off.png)
,,TAG:SET:Rating:5,)
)
,
$get(notplaying)
)


If I put the //Persecond bit above the "Tech info" area, then it just shows a couple of lines from that, but in bold, and black (doesn't use custom formatting).
I want to be able to have a timer counting down witht he time played.
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-03-28 02:21:10
the code is
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),

so I tried
$if($strcmp($left(%path%,7),*.asx$char(58)$char(47)$char(47)),

but It won't work :(
I see nothing at all.

The code I pasted earlier would check to see if the file path started with http:// which is the case for the majority of online streams. The code you tried does not make any sense. Put %path% in a track display panel and post what it resolves to.

You may be able to get away with something like this if you specifically want to test for ASX files:
Code: [Select]
$if($strcmp($lower($replace(%filename_ext%,%filename%,)),.asx),
TRUE
,
FALSE
)



ozstrike: You either need to put that // PerSecond header at the very top of your code, or you will need to markup your entire code with different headers like // Global and // PerTrack.

John Doe: The code you pasted looks rather old. I would suggest recoding the text using $alignabs() instead of $char(10) so you can better control the flow of text. Also it looks like you probably want to separate all those $puts() into a // Global section, the general track info into a // PerTrack section. I tried to do a quick edit on your code but control based color codes do not copy well and foobar kept crashing on me while using your code.
Title: Track Info Panel with ability to change font
Post by: John Doe on 2007-03-28 09:15:11
Thanks Yotsuya. I'll try changing the code!


JD
Title: Track Info Panel with ability to change font
Post by: ozstrike on 2007-03-29 22:07:48
I'm guessing if I put the //Persecond at the top of the code, then it will use more ram/cpu than if I do it the other way?
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-03-30 08:49:52
correct. And buttons won't work (they have to be in the // PerTrack section)
Title: Track Info Panel with ability to change font
Post by: barry123 on 2007-04-01 21:17:44
the code is
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),

so I tried
$if($strcmp($left(%path%,7),*.asx$char(58)$char(47)$char(47)),

but It won't work
I see nothing at all.

The code I pasted earlier would check to see if the file path started with http:// which is the case for the majority of online streams. The code you tried does not make any sense. Put %path% in a track display panel and post what it resolves to.

You may be able to get away with something like this if you specifically want to test for ASX files:
Code: [Select]
$if($strcmp($lower($replace(%filename_ext%,%filename%,)),.asx),
TRUE
,
FALSE
)




thank you, this is what I'm looking for.
Title: Track Info Panel with ability to change font
Post by: barry123 on 2007-04-02 15:17:01
hmm just one little thing I notice:
the Length: %Playback_time% / %length% minutes doesn't dissepear when I listen to a .ASX

So I see this:

(code_
$if($strcmp($lower($replace(%filename_ext%,%filename%,)),.asx),
$alignabs(2,5,%_width%,15,,)RADIO STREAM!!!
$alignabs(2,20,%_width%,15,,)Genre: [%genre%]
$alignabs(2,35,%_width%,15,,)Bitrate: [%bitrate% kbps]

output:
Radio Stream!!
Genre
Bitrate
Do not want, but it's there --> %Playback_time% / %length%



When I add // PerSecond above the Paused thing, the paused doesn't work.

When I add // PerSecond between Paused and the $if($strcmp($lower($replace(%filename_ext%,%filename%,)),.asx),
the .asx scipt doesn't work, I just see what I want to see with normal mp3's.

I hope it's clear and someone knows what to do




Code: [Select]
// Paused
$alignabs(2,110,%_width%,15,,)
$if(%_ispaused%,0000FF'Status: Paused')


$if($strcmp($lower($replace(%filename_ext%,%filename%,)),.asx),
$alignabs(2,5,%_width%,15,,)RADIO STREAM!!!
$alignabs(2,20,%_width%,15,,)Genre: [%genre%]
$alignabs(2,35,%_width%,15,,)Bitrate: [%bitrate% kbps]

,

// PerSecond
$alignabs(2,95,%_width%,15,,)[Length: %Playback_time% / %length% minutes])


// PerTrack
$if(%_trackinfo_notrack%,
$alignabs(2,5,%_width%,15,,)No track,
$alignabs(2,5,%_width%,15,,)Artist: [%artist%]
$alignabs(2,20,%_width%,15,,)Title: [%title%]
$alignabs(2,35,%_width%,15,,)Album: [%album%]     [Track: #%Tracknumber%]
$alignabs(2,50,%_width%,15,,)Date: [%date%]
$alignabs(2,65,%_width%,15,,)Genre: [%genre%]
$alignabs(2,80,%_width%,15,,)Bitrate: [%bitrate% kbps]

// Play Counter
$alignabs(350,5,%_width%,15,,)
$if($strcmp(%play_counter%,?),
Playing song for first time,
$if($strcmp(%play_counter%,1),
Song played %play_counter% time,
Song played %play_counter% times)

// Last played
$puts(lp_year,$substr(%last_played%,1,4))
$puts(lp_month,$substr(%last_played%,6,7))
$puts(lp_day,$substr(%last_played%,9,10))
$puts(lp_hour,$substr(%last_played%,12,13))
$puts(lp_min,$substr(%last_played%,15,16))
$puts(lp_sec,$substr(%last_played%,18,19))

$alignabs(350,20,%_width%,15,,)
$if($strcmp(%play_counter%,?),
Playing song for first time,
$if($strcmp(%play_counter%,1),
on,
Last on)

$if(%last_played%, $get(lp_day)-$get(lp_month)-$get(lp_year)' at '$get(lp_hour):$get(lp_min) )
AM / PM)

))


)
Title: Track Info Panel with ability to change font
Post by: sylla on 2007-04-02 17:55:54
Hello. I have a tab panel but want to hide the tabs and then cycle through the tabs from buttons in a trackinfo_mod panel. I use this code that i found a couple of  pages back in this tread

Code: [Select]
// PerTrack
$puts(offset.button.x,$div(%_width%,6))
$puts(offset.button.y,$sub(%_height%,32))

$button($sub($get(offset.button.x),50),$get(offset.button.y),0,0,0,0,/images\blandat\prev.png,/images\blandat\prevh.png,'View/Tabbed Panel Stack mod/Select tab/Panel #0 Cycle Backward',),

$puts(offset.button.x,$div(%_width%,1))
$puts(offset.button.y,$sub(%_height%,32))

$button($sub($get(offset.button.x),50),$get(offset.button.y),0,0,0,0,/images\blandat\next.png,/images\blandat\nexth.png,'View/Tabbed Panel Stack mod/Select tab/Panel #0 Cycle Forward',),


My problem is that it doesn't happen aything when i click on my buttons, they are placed exactly where I want them and the hover image works, but can't cycle through the tabs with them! I think it's the "#" that messes it up?

It works if I just put the name of a tab inside the single quotes (f.e. 'lyrics') but I want next and previous buttons!
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-04-03 00:53:22
sylla: sorry the # character makes that previous code not work. to my knowledge there is no existing solution to make a button to cycle  forward or backward through tabs in foo_uie_tabs. However, if you migrate to PanelsUI you can create buttons that change a PVAR and then use that PVAR to $select() between $panel() configurations and accomplish pretty much the same thing.

EDIT: I suppose you could stack a button that would set a pvar, and then use that pvar with $select() on the main button and choose which tab to switch to.
Title: Track Info Panel with ability to change font
Post by: sylla on 2007-04-03 11:17:45
sylla: sorry the # character makes that previous code not work. to my knowledge there is no existing solution to make a button to cycle  forward or backward through tabs in foo_uie_tabs. However, if you migrate to PanelsUI you can create buttons that change a PVAR and then use that PVAR to $select() between $panel() configurations and accomplish pretty much the same thing.

EDIT: I suppose you could stack a button that would set a pvar, and then use that pvar with $select() on the main button and choose which tab to switch to.


That's too bad  I have no plan on migrating to PanelsUI, too advanced for me I think. I can get it to go to the next panel i i create a button in a button panel, but the button panel is so ugly, is there any way to change the background of such a a panel?

edit: isn't it possible to replace the # in the code to the $char() that is for # ? maybe a real noob question, I have configured my foobar simply on copying codes from the web and then trial and error
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-04-04 02:55:11
edit: isn't it possible to replace the # in the code to the $char() that is for # ? maybe a real noob question, I have configured my foobar simply on copying codes from the web and then trial and error :P
I explored this issue with some others awhile back and the $char() trick did not appear to work. However you might be able to do something like this with stacked buttons and pvars (sorry I no longer keep foo_uie_tabs around to test):

Code: [Select]
$puts(numtabs,5)

$button2(10,10,0,0,20,20,,,PVAR:SET:tab.index:
$ifgreater($getpvar(tab.index),$sub($get(numtabs),2),0,$add($getpvar(tab.index),1))
,)

$button2(10,10,0,0,20,20,'$imageabs2(20,20,,,,,,,next.png,)','$imageabs2(20,20,,,,,,,next_hover.png,)',
$select($add($getpvar(tab.index),1),
NAME OF TAB 2
,
NAME OF TAB 3
,
NAME OF TAB 4
,
NAME OF TAB 5
,
NAME OF TAB 1
)
,TOOLTIP:"Cycle Forward")
Title: Track Info Panel with ability to change font
Post by: capleton on 2007-04-08 10:54:19
edit: isn't it possible to replace the # in the code to the $char() that is for # ? maybe a real noob question, I have configured my foobar simply on copying codes from the web and then trial and error
I explored this issue with some others awhile back and the $char() trick did not appear to work. However you might be able to do something like this with stacked buttons and pvars (sorry I no longer keep foo_uie_tabs around to test):

Code: [Select]
$puts(numtabs,5)

$button2(10,10,0,0,20,20,,,PVAR:SET:tab.index:
$ifgreater($getpvar(tab.index),$sub($get(numtabs),2),0,$add($getpvar(tab.index),1))
,)

$button2(10,10,0,0,20,20,'$imageabs2(20,20,,,,,,,next.png,)','$imageabs2(20,20,,,,,,,next_hover.png,)',
$select($add($getpvar(tab.index),1),
NAME OF TAB 2
,
NAME OF TAB 3
,
NAME OF TAB 4
,
NAME OF TAB 5
,
NAME OF TAB 1
)
,TOOLTIP:"Cycle Forward")

I am trying to do what sylla is trying as well.  This might be my status as noob coming through, but is it at all possible to have a command that mimics keystrokes (and then set the buttons as these hotkeys)

EDIT:  for anyone who may be interested, i solved the "toggle button" problem.  Its a little cumbersome and tedious, but this is how i did it:

1.  in columns ui, create a panel stack.
2.  depending on where you want the toggle button to be, create horizontal or vertical splitters inside the toggle button.  i.e. i wanted mine on the left, so i created a horizontal splitter.
3.  put a track info mod under each splitter and put them in identical spots with identical sizes.  i.e. i wanted mine on the left, so i put them first, locked, and resized them.  (and of course put what you want to be toggled to the other side of them)
4.  rename the splitters (must be done through right-clicking on the visual representation of the tabs) to whatever you want, and use those in the button command.  So it's not really a "toggle button" you are just putting a button in the same spot within each panel, and each button leads to a different panel.
5.  hide the tabs, and you're all set!  (you can even set the background to the default grey, and get rid of borders for a really clean look)
Title: Track Info Panel with ability to change font
Post by: Bh4i on 2007-04-11 22:04:07

Srry for this stupid question, its mentioned in the first sentence of this thread...

Its working fine now

When im playing a song, i use 'now playing' mode. When i stop, i have to manually change to 'follow cursor' mode (because, when nothing is playing, i prefer 'follow cursor' mode)

Is there any way by doing this automatically? So when i stop playing, it will switch automatically to 'follow cursor' mode?

terrestrial had a good solution for this some posts back.  create a second track display panel, and keep one in each mode.  Then use an $if(%isplaying%...) to switch between them.
Code: [Select]
Ex.
$if(%isplaying%,
$panel(TDplaying,Track Display....)
,
$panel(TDstopped,Track Display....)
)

Can u explain this a bit more in detail 
Title: Track Info Panel with ability to change font
Post by: unprintable on 2007-04-14 00:30:09
Having some problems with this and the old trackinfo component. I've tried putting both into my components folder several times and every time I get a message either that a dependency has not been met, the component is not configured properly, or that it isn't a valid Win32 application. I haven't used foobar before so I haven't had it working on a previous version or much less have never had a previous version of foobar...

Keep in mind I'm very new to foobar and am still trying to get the hang of it, and also am not good with programming and code.

Thanks for any help!
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-04-14 02:26:45
have you taken a look at the first post?
...
Requires:
MS Visual C++ 2005 Runtime Library (http://www.microsoft.com/downloads/details.aspx?familyid=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&displaylang=en)
GDI+ - only needed for Windows 2000 (http://www.microsoft.com/downloads/details.aspx?familyid=6A63AB9C-DF12-4D41-933C-BE590FEAA05A&displaylang=en)
Title: Track Info Panel with ability to change font
Post by: unprintable on 2007-04-14 03:24:04
Yea you're right. I actually figured it out just a little bit ago. So stupid to have overlooked that bit! Thanks for the newb-guidance, though. Foobar wil definitely take some getting used to but the audiophile in me is loving it!
Title: Track Info Panel with ability to change font
Post by: John Doe on 2007-04-24 09:43:25
Got a problem with this component.

(...)

In both modes I have the problem that I get text overlays on switching to next or previous or any other song.

(http://img258.imageshack.us/img258/7125/zwischenablage02df8.th.png) (http://img258.imageshack.us/my.php?image=zwischenablage02df8.png)


Solution:

Thanks to Yotsuya
Quote
John Doe: The code you pasted looks rather old. I would suggest recoding the text using $alignabs() instead of $char(10) so you can better control the flow of text. Also it looks like you probably want to separate all those $puts() into a // Global section, the general track info into a // PerTrack section. I tried to do a quick edit on your code but control based color codes do not copy well and foobar kept crashing on me while using your code.

I seperated my code in the two categories // Global and //PerTrack. That solved the problem completely. I didn't change the char(10) because that would just be to much hassle.


JD
Title: Track Info Panel with ability to change font
Post by: sylla on 2007-04-25 16:31:25
Hey. I took this code from brumais winter config. What I want to do is to make a button2 command on the artist (I want it to search on last.fm for the artist when I click on it).  But when I try to change it, the alignment messes up. Could anybody help me with this?

Code: [Select]
 $puts(artistimg,$replace(%path%,%filename_ext%,'..\artist.*'))
$puts(defaultimg,'/components\default.png')

$puts(infoHeight,125)
$puts(coverdim,$ifgreater($sub(%_height%,$get(infoHeight)),$sub(%_width%,20),$sub(%_width%,20),$sub(%_height%,$get(infoHeight))))

$puts(infoPos,
$ifgreater(
$add($get(coverdim), 30),
$add($get(coverdim),$get(infoHeight)),
$add($get(coverdim),$get(infoHeight)),
$add($get(coverdim), 30)
))

$puts(leftmargin,$div($sub(%_width%,$get(coverdim)),2))

$if($fileexists($get(coverimg)),
$puts(imgsrc,$get(coverimg)),
$if($fileexists($get(artistimg)),
$puts(imgsrc,$get(artistimg)),
$puts(imgsrc,$get(defaultimg))))

$drawrect(,,,,pencolor-null brushcolor-255-255-255)


$imageabs2($get(coverdim),$get(coverdim),0,0,$get(coverdim),$get(coverdim),$get(leftmargin),1,$get(imgsrc),NOKEEPASPECT)
$imageabs2($get(coverdim),$get(coverdim),0,0,$get(coverdim),$get(coverdim),$get(leftmargin),1,/images\brumal-winter\glare.png,NOKEEPASPECT ALPHA-50)
$imageabs2($get(coverdim),$get(coverdim),0,0,$get(coverdim),$get(coverdim),$get(leftmargin),$add($get(coverdim),2),$get(imgsrc),NOKEEPASPECT ALPHA-80 ROTATEFLIP-6)
$imageabs2($get(coverdim),$get(coverdim),0,0,$get(coverdim),$get(coverdim),$get(leftmargin),$add($get(coverdim),2),/images\brumal-winter\white-reflection.png,NOKEEPASPECT )
$drawrect($get(leftmargin),1,$get(coverdim),$get(coverdim),brushcolor-null pencolor-0-0-0)


// center info
$font(corbel,16,bold,76-68-62)
$alignabs(0,$get(infoPos),%_width%,%_height%,center,)$upper(%artist%)
//$alignabs($get(leftmargin),$add($get(coverdim),40),$get(switcherWidth),20,left,)
$font(corbel,12,bold,123-10-12)
$char(10)
%title%
$char(10)
//$alignabs($get(leftmargin),$add($get(coverdim),60),$get(switcherWidth),20,left,)
//$alignabs($get(leftmargin),$sub(%_height%,42),$sub(%_width%,10),30,right,)
$if($and($strcmp(%album%,%title%),$strstr(%genre%,Classical)),


// classical works with only one track (album and title are the same)
$font(corbel,11,bold,99-104-107)
$if(%performer%,
$left(%performer%,$sub($strstr(%performer%,'feat'),3)),
[%date%])
$char(10)
//$alignabs($get(leftmargin),$add($get(coverdim),80),$get(switcherWidth),20,left,)
$font(corbel,11,bold,99-104-107)
[%date%],

// normal display
$font(corbel,11,bold,99-104-107)
$if(%album%,%album%,Inget Album)
$char(10)
//$alignabs($get(leftmargin),$add($get(coverdim),$calcheight(%title%),60),$get(switcherWidth),20,left,)
$font(corbel,11,bold,99-104-107)
$if(%performer%,
$left(%performer%,$sub($strstr(%performer%,'feat'),3)),
[%genre%])
$char(10)
[%date%])
)
 

I think it's under "//centerinfo" what I want to change.

Thanks in advance, and sorry for my perhaps noob question
Title: Track Info Panel with ability to change font
Post by: cristox on 2007-04-30 21:07:40
Hello!

I am using foobar for 3 weeks now and got enthusiastic with it and especially with trackinfo_mod...
This is what i came up with after few hours:

(http://img235.imageshack.us/img235/6582/foobarkq3.jpg)

(http://img235.imageshack.us/img235/5159/foobar2sy8.jpg)


Code: [Select]
// PerSecond


////PLAYING TIME
$if(
%Playback_time%,
$alignabs(0,$sub(%_height%,39),%_width%,15,,)$font(,8,glow-0-0-0 glowexpand-1,183-207-255) Length:$font(,10,bold glow-0-0-0 glowexpand-1,183-207-255) %Playback_time% / %length% $font(,8,glow-0-0-0 glowexpand-1,183-207-255)minutes
)

////

////PROGRESS BAR(INNER)
$if(
$strcmp(%playback_time_seconds%,0),
,
$drawrect(5,$sub(%_height%,18),$muldiv(%playback_time_seconds%,$sub(%_width%,17),%length_seconds%),5,pencolor-0-0-25  brushcolor-$muldiv(%_time_elapsed_seconds%,221,%_time_total_seconds%)-114-$sub(255,$muldiv(%_time_elapsed_seconds%,255,%_time_total_seconds%)))

$drawrect($add($muldiv(%playback_time_seconds%,$sub(%_width%,17),%length_seconds%),5),$sub(%_height%,18),1,10,pencolor-68-105-171 brushcolor-null)

$if(%Playback_time%,
$puts(progress,$muldiv(%_time_elapsed_seconds%,1000,%_time_total_seconds%))
$alignabs($sub($muldiv(%playback_time_seconds%,$sub(%_width%,17),%length_seconds%),4),$sub(%_height%,11),%_width%,15,,)
$font(,6,glow-0-0-0 glowexpand-1 ,183-207-255)
$if(
%_time_total%,
$ifgreater(10,$get(progress),'  0.'$right($get(progress),1),
$ifgreater(100,$get(progress),  $left($get(progress),1)'.'$right($get(progress),1),
$ifgreater(1000,$get(progress),$left($get(progress),2)'.'$right($get(progress),1),
$ifequal(1000,$get(progress),'100',))))'%')
)

)
////



// PerTrack



////PROGRESS BAR(OUTER)
$drawrect(4,$sub(%_height%,19),$sub(%_width%,15),7,brushcolor-null pencolor-68-105-171)
////


$if(
%_trackinfo_notrack%
,$alignset() $alignrel(left,top)$font(,8,glow-0-0-0 glowexpand-1,183-207-255) No track,

////ARTIST
$alignrel(left,top)$font(,8,glow-0-0-0 glowexpand-1,183-207-255) Artist:$iflonger(%artist%,40,$font(,8,bold glow-0-0-0 glowexpand-1,183-207-255)[    %artist%],$font(,10,bold glow-0-0-0 glowexpand-1,183-207-255)[   %artist%])
////


//// PLAY COUNTER
$alignrel(right,top)

$if(
$strcmp(%play_counter%,?),
$font(,8,glow-0-0-0 glowexpand-1,183-207-255)Playing song for first time ,
$if(
$strcmp(%play_counter%,1),
$font(,8,glow-0-0-0 glowexpand-1,183-207-255)Song played %play_counter% time ,
$font(,8,glow-0-0-0 glowexpand-1,183-207-255)Song played %play_counter% times
)
)
////


////TRACK
$alignset() $alignrel(left,top)$font(,8,glow-0-0-0 glowexpand-1,183-207-255) Track:$font(,10,bold glow-0-0-0 glowexpand-1,183-207-255)$iflonger(%title%,40,$font(,8,bold glow-0-0-0 glowexpand-1,183-207-255)[    #%Tracknumber% - ][%title%],$font(,10,bold glow-0-0-0 glowexpand-1,183-207-255)[   #%Tracknumber% - ][%title%])
////


//// LAST PLAYED
$puts(lp_year
,$substr(%last_played%,1,4))
$puts(lp_month
,$substr(%last_played%,6,7))
$puts(lp_day
,$substr(%last_played%,9,10))
$puts(lp_hour
,$substr(%last_played%,12,13))
$puts(lp_min
,$substr(%last_played%,15,16))
$puts(lp_sec
,$substr(%last_played%,18,19))


$alignrel(right,top)$font(,8,glow-0-0-0 glowexpand-1,183-207-255)
$if(
$strcmp(%play_counter%,?),
,
$if(
$strcmp(%play_counter%,1),
on,
Last on
)


$if(
%last_played%,
$get(lp_day)-$get(lp_month)-$get(lp_year)' at '$get(lp_hour):$get(lp_min) )
)
////


////ALBUM
$alignset() $alignrel(left,top)$font(,8,glow-0-0-0 glowexpand-1,183-207-255) Album:$iflonger(%album%,40,$font(,8,bold glow-0-0-0 glowexpand-1,183-207-255)[   %album%],$font(,10,bold glow-0-0-0 glowexpand-1,183-207-255)[  %album%])$font(,8,bold glow-0-0-0 glowexpand-1,183-207-255)  ['['%date%']']
////


////GAIN INFO
$puts(gain,
$if2($replace(%__replaygain_track_gain%,' ',),'N/A') / $if2($replace(%__replaygain_album_gain%,' ',),'N/A')
)

$alignabs($sub(%_width%,$calcwidth($get(gain))),$sub(%_height%,52),%_width%,15,,)$font(,8,glow-0-0-0 glowexpand-1,183-207-255)$get(gain)

////DECODER INFO
$puts(decoderinfo,
%codec%',' $if3($info(MP3_STEREO_MODE),%channels%) @
$puts(ratio,
$muldiv($info(bitrate),1000,
$div($mul($info(samplerate),$info(bitspersample),$info(channels)),1000)))
$if($info(bitrate),
$if($info(bitspersample),
$if($and(
$strcmp($info(codec),'WavPack'),
$not($strstr($info(codec_profile),'lossless'))),
$info(bitrate)'kb/s',
$ifgreater(100,$get(ratio),$left($get(ratio),1)'.'$right($get(ratio),1),
$ifgreater(1000,$get(ratio),$left($get(ratio),2)'.'$right($get(ratio),1),
$ifequal(1000,$get(ratio),'100.0',)))'% '),
[%codec_profile%',' ]$info(bitrate)'kb/s '))
)

$alignabs($sub(%_width%,$calcwidth($get(decoderinfo))),$sub(%_height%,37),%_width%,15,,)$font(,8,glow-0-0-0 glowexpand-1,183-207-255)$get(decoderinfo)
////


)


//// PAUSED
$alignabs($sub($div(%_width%,2),30),$sub(%_height%,37),%_width%,15,,)$font(,10,bold glow-0-0-0 glowexpand-1,255-179-0)$if(%_ispaused%,'Paused',)
////


- Auto changing font size on long artist/track/album names
- Colorchanging progressbar, depending on...progress ;-)
- progress percentage moving with progressbar
- etc...


What do you think?
Any advice on cleaning up the code?
Title: Track Info Panel with ability to change font
Post by: kanak on 2007-05-04 22:31:21
Feature Request

Would it be possible to implement a function to read text/nfo files? It'd be really nice because then we could have artist biographies etc.
Title: Track Info Panel with ability to change font
Post by: neothe0ne on 2007-05-06 03:12:12
What happened to the plugin?
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-05-06 03:23:32
 from the previous page:

@Author: Please fix the bug of the editor window: If you click apply, the cursor moves to the start position
This component is no longer being developed; you need to "upgrade" to the new component panels_ui, which has the same functionality as track_info_mod when columns_ui is the interface selected (and sports a much improved editing window ).
Title: Track Info Panel with ability to change font
Post by: Whatever6750 on 2007-06-06 23:44:42
Download link is broke. Anyone have it and can host it somewhere?
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-06-07 00:19:41

see the post immediately above yours.
Title: Track Info Panel with ability to change font
Post by: Whatever6750 on 2007-06-07 00:24:13
Heh dident see that. Anyway does anyone just have the "old" one?
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-06-07 00:39:54
no. the component maintainer does not appreciate back versions floating around.
Title: Track Info Panel with ability to change font
Post by: Scrith on 2007-06-18 01:45:37
I've been using this component for awhile without any problems, but then I decided to experiment with my configuration by playing with PanelsUI a bit, and that caused a problem with my TrackInfo panel:  I couldn't set the background color anymore (although the new dialog box for editing it is nice).

Is there something I'm missing here?  I read the msg about how you can now use PanelsUI as your TrackInfo (I think it said that), but I tried that and it obviously requires much more than just a copy/paste of my lengthy config text, because it looked really screwed up.

Can I make my existing TrackInfo mod panel work while I have PanelsUI in my components folder?
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-06-18 01:50:43
copy your trackinfo_mod code into a .txt

remove trackinfo_mod and install panelsUI

in file -> prefs -> display -> columns UI Layout (tab) find where you have (or had) your trackinfo panel and add a Track Display panel.

click "Configure..." and paste in your code from the .txt
Title: Track Info Panel with ability to change font
Post by: Scrith on 2007-06-18 02:09:01
Thanks for the fast reply.

Obviously I am missing something.  It looks right, but it's black.  I try to change the color (using the Color button in the Settings dialog box) but it just stays black.  I've tried creating a custom color, but it is never being saved.  When I change the color I see the old $font command replaced with $rgb, but hitting OK to close the dialog box doesn't do anything, and when I return to the Settings for it the custom color is gone, the color is 0,0,0 and the command is back to $font.
Title: Track Info Panel with ability to change font
Post by: shakey_snake on 2007-06-18 03:29:26
Yeah, the color button is only there for reference.
You have to use $drawrect() (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9/Panels_UI_%28foo_ui_panels%29#pad)

If your use 0 for the first 4 parameters, you will fill the whole window with color whatever your color is.
Title: Track Info Panel with ability to change font
Post by: Scrith on 2007-06-18 03:37:11
Thanks, adding the $drawrect() solved it.

I also had to add the "// PerSecond" command to the file to make it work like the old one.
Title: Track Info Panel with ability to change font
Post by: sune on 2007-07-07 04:40:39
hi. I'm having problems with the SORT command. I'm using this, just to try it out:

Code: [Select]
$button(0,0,0,0,18,17,sort.png,sortblack.png,SORT:artist|%artist%:year|%date%,)

the context menu does come up when I click it, but it just doesn't sort anything

I'm thinking it's maybe due to an outdated version of the component (I`m using 0.7.1 beta) I tried to get the new one but the link doesn't work. terrestrial could you please look into it?

and also, if someone could tell me if the code is correct, that'd be nice, cause I'm not sure of what I'm doing...

thanks in advance
Title: Track Info Panel with ability to change font
Post by: freanir on 2007-07-08 16:37:13
Hi,
I've switche from tackinfo_mod to PanelsUI.
I'm only using Track Display in ColummnsUI.
How can I set the Window frame style to grey?
Title: Track Info Panel with ability to change font
Post by: cyRq on 2007-07-15 10:30:54
I've got a little problem with the config that I use:

Code: [Select]
// Original code by necropimp, modified by AstreaEdge, KockRoach, Brumal
// modded by Anish

// Toggles (0=disable, 1=enable)
$puts(show_now_playing,1)
$puts(show_tech_info,1)
$puts(cut_width,39)
// Disable comments on slower machines, disable by not entering any value for show comment
$puts(show_comment,1)
// Warning: Large max_comment_length can result in high CPU usage
// for large comments. Use -1 to disable cropping
$puts(max_comment_length,1000)

$puts(uncompressed_bitrate,$muldiv(%samplerate%,$mul(%__channels%,$if2(%__bitspersample%,16)),1000))

// Color Config
// 1 - Soundtrack to Your Escape        background: 16,40,46
// 2 - Reroute to Remain                background: 229,232,231
// 3 - Sandman2012                      background: 255,255,255
// 4 - Draconian Times                  background: 129,52,65
// 5 - Since the Day It All Came Down  background: 246,248,245
// 6 - Tales from the Thousand Lakes    background: 35,22,89
// 7 - Projector                        background: 0,0,0
// 8 - The Astral Sleep                background: 134,107,76
// 9 - Verisäkeet                      background: 64,76,61
// 10 - Haunted                        background: 0,0,16
// 11 - Ghost Reveries                  background: 29,20,15
// 12 - Rain Without End                background: 34,27,67
// 13 - Arte Novecento                  background: 240,240,240
// 14 - Ghosts of Loss                  background: 87,111,117
// 15 - The Truth Inside the Shades    background: 16,20,23
// 16 - 00 Void                        background: 167,167,177
// 17 - Antimatter                      background: 0,0,0
// 18 - Frail Words Collapse            background: 202,184,122
// 19 - Am Universum                    background: 204,201,124
// 20 - Character                      background: 228,226,227
// 21 - From Mars to Sirius            background: 239,233,221
// 22 - Voice of Wilderness            background: 169,169,159
// 99 - Custom config
$puts(color_config,17)

// Custom color scheme
$puts(cc_text1,$rgb(70,07,16))
$puts(cc_text2,$rgb(10,10,10))
$puts(cc_section_title,$rgb(245,245,245))
$puts(cc_fade_inside,$rgb(245,245,245))
$puts(cc_fade_outside,$rgb(0,0,0))


// color schemes
$if($strcmp($get(color_config),99),
// User defined scheme
$puts(info,$get(cc_text1))
$puts(head,$get(cc_text2))
$puts(anno,$get(cc_text1))
$puts(text2,$get(cc_section_title))
$puts(text1,$get(cc_fade_inside))
$puts(fadeend,$get(cc_fade_outside))
,
$select($get(color_config),
// Soundtrack to Your Escape
$puts(head,$rgb(170,170,170))
$puts(info,$rgb(170,207,216))
$puts(anno,$rgb(98,114,121))
$puts(text1,$rgb(170,207,216))
$puts(text2,$rgb(255,250,216))
$puts(fadeend,$rgb(0,0,0)),
// Reroute to Remain
$puts(head,$rgb(0,0,0))
$puts(info,$rgb(100,106,102))
$puts(anno,$rgb(100,106,102))
$puts(text1,$rgb(179,181,180))
$puts(text2,$rgb(123,40,48))
$puts(fadeend,$rgb(0,0,0)),
// Sandman2012
$puts(head,$rgb(0,128,192))
$puts(info,$rgb(130,130,130))
$puts(anno,$rgb(100,106,102))
$puts(text1,$rgb(235,242,254))
$puts(text2,$rgb(0,128,64))
$puts(fadeend,$rgb(0,0,0)),
// Draconian Times
$puts(head,$rgb(201,193,146))
$puts(info,$rgb(217,219,206))
$puts(anno,$rgb(217,219,206))
$puts(text1,$rgb(157,51,67))
$puts(text2,$rgb(178,196,200))
$puts(fadeend,$rgb(176,107,68)),
// Since the Day It All Came Down
$puts(head,$rgb(3,46,41))
$puts(info,$rgb(104,104,94))
$puts(anno,$rgb(104,104,94))
$puts(text1,$rgb(76,107,106))
$puts(text2,$rgb(50,85,91))
$puts(fadeend,$rgb(0,0,0)),
// Tales from the Thousand Lakes
$puts(head,$rgb(98,167,162))
$puts(info,$rgb(203,203,210))
$puts(anno,$rgb(203,203,210))
$puts(text1,$rgb(78,112,173))
$puts(text2,$rgb(143,201,234))
$puts(fadeend,$rgb(62,67,171)),
// Projector
$puts(head,$rgb(227,122,76))
$puts(info,$rgb(170,134,98))
$puts(anno,$rgb(170,134,98))
$puts(text1,$rgb(132,55,40))
$puts(text2,$rgb(248,214,134))
$puts(fadeend,$rgb(0,0,0)),
// The Astral Sleep
$puts(head,$rgb(67,45,32))
$puts(info,$rgb(208,204,199))
$puts(anno,$rgb(208,204,199))
$puts(text1,$rgb(103,75,51))
$puts(text2,$rgb(214,200,168))
$puts(fadeend,$rgb(0,0,0)),
// Verisäkeet
$puts(head,$rgb(160,146,117))
$puts(info,$rgb(208,194,165))
$puts(anno,$rgb(208,194,165))
$puts(text1,$rgb(113,52,47))
$puts(text2,$rgb(244,244,244))
$puts(fadeend,$rgb(0,0,0)),
// Haunted
$puts(head,$rgb(119,119,136))
$puts(info,$rgb(160,176,184))
$puts(anno,$rgb(208,194,165))
$puts(text1,$rgb(216,88,16))
$puts(text2,$rgb(228,228,232))
$puts(fadeend,$rgb(0,0,0)),
// Ghost Reveries
$puts(head,$rgb(145,113,54))
$puts(info,$rgb(238,219,135))
$puts(anno,$rgb(162,144,88))
$puts(text1,$rgb(172,148,76))
$puts(text2,$rgb(241,238,205))
$puts(fadeend,$rgb(35,27,16)),
// Rain Without End
$puts(head,$rgb(83,119,171))
$puts(info,$rgb(204,204,204))
$puts(anno,$rgb(194,194,194))
$puts(text1,$rgb(70,102,149))
$puts(text2,$rgb(244,244,244))
$puts(fadeend,$rgb(0,0,0)),
// Arte Novecento
$puts(head,$rgb(122,116,128))
$puts(info,$rgb(115,106,111))
$puts(anno,$rgb(115,106,111))
$puts(text1,$rgb(106,100,128))
$puts(text2,$rgb(130,139,148))
$puts(fadeend,$rgb(122,116,128)),
// Ghosts of Loss
$puts(head,$rgb(151,174,180))
$puts(info,$rgb(197,207,216))
$puts(anno,$rgb(197,207,216))
$puts(text1,$rgb(93,116,122))
$puts(text2,$rgb(237,233,228))
$puts(fadeend,$rgb(0,0,0)),
// The Truth Inside the Shades
$puts(head,$rgb(191,195,168))
$puts(info,$rgb(246,242,155))
$puts(anno,$rgb(246,242,155))
$puts(text1,$rgb(244,163,107))
$puts(text2,$rgb(251,251,251))
$puts(fadeend,$rgb(0,0,0)),
// 00 Void
$puts(head,$rgb(55,54,72))
$puts(info,$rgb(0,0,0))
$puts(anno,$rgb(0,0,0))
$puts(text1,$rgb(145,68,63))
$puts(text2,$rgb(244,241,234))
$puts(fadeend,$rgb(0,0,0)),
// Antimatter
$puts(head,$rgb(107,111,122))
$puts(info,$rgb(204,204,204))
$puts(anno,$rgb(184,184,184))
$puts(text1,$rgb(206,158,66))
$puts(text2,$rgb(204,204,204))
$puts(fadeend,$rgb(0,0,0)),
// Frail Words Collapse
$puts(head,$rgb(77,40,22))
$puts(info,$rgb(0,0,0))
$puts(anno,$rgb(0,0,0))
$puts(text1,$rgb(187,155,103))
$puts(text2,$rgb(128,83,62))
$puts(fadeend,$rgb(0,0,0)),
// Am Universum
$puts(head,$rgb(122,100,40))
$puts(info,$rgb(0,0,0))
$puts(anno,$rgb(0,0,0))
$puts(text1,$rgb(122,100,40))
$puts(text2,$rgb(107,70,13))
$puts(fadeend,$rgb(235,229,143)),
// Character
$puts(head,$rgb(98,100,97))
$puts(info,$rgb(0,0,0))
$puts(anno,$rgb(0,0,0))
$puts(text1,$rgb(160,66,35))
$puts(text2,$rgb(115,39,23))
$puts(fadeend,$rgb(221,162,88)),
// From Mars to Sirius
$puts(head,$rgb(159,143,127))
$puts(info,$rgb(0,0,0))
$puts(anno,$rgb(0,0,0))
$puts(text1,$rgb(159,143,127))
$puts(text2,$rgb(111,89,66))
$puts(fadeend,$rgb(0,0,0)),
// Voice of Wilderness
$puts(head,$rgb(0,0,4))
$puts(info,$rgb(77,75,63))
$puts(anno,$rgb(77,75,63))
$puts(text1,$rgb(0,0,0))
$puts(text2,$rgb(89,87,71))
$puts(fadeend,$rgb(199,197,181)),
))


// Progress Bar Divider Width (0 yeilds no divider)
$puts(divw,16)

// Progress Bar Divider Character (blank yields no divider)
$puts(divc,)

// Separator
$puts(sepc,–)
$puts(sepw2,$calcwidth($get(sepc)$get(sepc)))
$puts(sep1,$if(%_isplaying%, NOW PLAYING , SELECTED TRACK ))
$puts(sep2, TECH INFO )
$puts(sep3, COMMENT )

$align(center, top)$font(,,shadow,)
$if(%_trackinfo_notrack%,
$align(left,bottom)$font(Uni 05_53,6,shadow,200-200-200)v0.9.4.3
$align(right,bottom)$font(Impact,25,shadow,102-102-85)2000
$align(right,bottom)$font(Candara,14,bold italic shadow,200-200-200)$repeat($char(10),5)foobar$repeat( ,13),

// SONG INFO SEPARATOR
$puts(sepw,$repeat($get(sepc),$sub($div($sub(%_width%,$calcwidth($get(sep1))),$get(sepw2)),1)))
$transition($get(sepw),$get(fadeend),$get(text1))
$get(text2)$get(sep1)
$transition($get(sepw),$get(text1),$get(fadeend))
$char(10)

$if(%title%,$ifgreater($get(cut_width),$len(%title%),,)$get(head)$get(info)%title%$ifgreater($get(cut_width),$len(%title%), ,)$char(10),)
$if(%artist%,$get(head)by$char(10)$ifgreater($get(cut_width),$len(%artist%),,)$get(info)%artist%$ifgreater($get(cut_width),$len(%artist%), ,)$char(10),)
$ifgreater($meta_num(performer),0,$get(info)%performer%$char(10),
$if(%album%,$get(head)track #$get(info)%tracknumber% $get(head)from$char(10)$ifgreater($get(cut_width),$len(%album%),,)$get(info)%album%$ifgreater($get(cut_width),$len(%album%), ,)$if2(%discname%,$get(head)Disc $get(info)%discnumber%)$char(10),)
$if(%genre%,$get(head)$if($strcmp($replace($upper($left(%genre%,1)),A,{},E,{},I,{},O,{}),{}),an,a) $get(info)%genre%$if($or($strcmp(%genre%,Soundtrack),$strcmp(%genre%,Audiobook)),, $get(head)$if(%album%,album,song))$char(10),)
$if(%style%,$get(head)in the style of$char(10)$ifgreater($get(cut_width),$len(%style%),,)$get(info)%style%$ifgreater($get(cut_width),$len(%style%), ,)$char(10),)
$if(%date%,$get(head)released in $get(info)%date%$char(10),))

// TECH INFO SEPARATOR
$puts(sepw,$repeat($get(sepc),$sub($div($sub(%_width%,$calcwidth($get(sep2))),$get(sepw2)),1)))
$transition($get(sepw),$get(fadeend),$get(text1))
$get(text2)$get(sep2)
$transition($get(sepw),$get(text1),$get(fadeend))
$char(10)

// set 4-character filetype
$puts(filetype,$upper(
$if(%__referenced_file%,$cut($ext(%__referenced_file%),4),
$if($stricmp($left(%_path%,4),cdda),CD,$cut($ext(%_path%),4)
))
))

// detect detailed filetype2
$puts(filetype2,$replace($get(filetype),
WAV,[%codec% ]WAVE,
SND,'Next/Sun',
AC3,Dolby Digital,
CD,Audio CD,
MKA,Matroska[ %codec%][ %codec_profile%],
OGG,Ogg[ %codec%][ $get(head)$replace($info(bitrate_nominal),32,Q-2,48,Q-1,64,Q0,80,Q1,96,Q2,112,Q3,128,Q4,160,Q5,192,Q6,224,Q7,256,Q8,320,Q9,500,Q10)],
MP4,MPEG-4[ %codec%][ %codec_profile%],
M4A,MPEG-4[ %codec%][ %codec_profile%],
MP2,MPEG Layer 2,
MP3,[%codec%][ %codec_profile%],
AAC,AAC[ %codec_profile%],
WMA,Window'$' Media Audio,
MPC,Musepack $if(%codec_profile%,$get(head)MPC Profile: $get(info)%codec_profile%),
OFR,OptimFROG,
OFS,OptimFROG DS,
FLA,FLAC,
APE,Monkey''s Audio[ %codec_profile%],
MAC,Monkey''s Audio[ %codec_profile%],
APL,Monkey''s Audio[ %codec_profile%],
WV,WavPack[ %codec_profile%],
SHN,Shorten,
SPX,Speex,
SID,C64 SID-Tune,
MDZ,Soundtracker Module,
S3Z,Screamtracker Module,
ITZ,Impulsetracker Module,
XMZ,Fasttracker II Module,
MO3,Compressed Module,
MOD,Soundtracker Module,
S3M,Screamtracker Module,
XM,Fasttracker II Module,
IT,Impulsetracker Module,
UMX,Unreal Music File,
MTM,Multitracker Module,
TFM,Final Musicsystem
))
$puts(filetype2,$replace($get(filetype2),FLACC,FLAC[ %codec_profile%]))
$get(head)$get(info)[%_time_elapsed%][$if(%_time_elapsed%, $get(head)/$get(info) )%length%]$get(head) @ $get(info)
%__bitrate% $get(head)kb/s $get(info)$get(filetype2)$char(10)

$if(%__samplerate%,$get(head)$get(info)$div(%__samplerate%,1000).$substr(%__samplerate%,3,3) kHz )
$get(head)$get(info)$if($stricmp($codec(),MP3),$get(space2)$caps(%__mp3_stereo_mode%),[$caps(%channels%)])$char(10)
$if(%__bitspersample%,$get(head)Bitdepth: $get(info)%__bitspersample%$char(10),)
$if(%_filesize%,$get(head)$get(info)
$puts(f_size,$add($ifequal(%subsong%,0,$div(%filesize%,1024),$muldiv($info(bitrate),%length_seconds%,8)),5))
$div($get(f_size),1024).$left($right($num($muldiv($get(f_size),1000,1024),4),3),2)$get(head)'MB',)
$get(head) ~ $get(info)$substr($put(ratio,$muldiv($get(uncompressed_bitrate),100,$info(bitrate))),1,$sub($len($get(ratio)),2))
.$substr($get(ratio),$sub($len($get(ratio)),1),$len($get(ratio))):1 $get(head)'('$muldiv($info(bitrate),100,$get(uncompressed_bitrate))$get(head)'%)'$char(10)

// COMMENT INFO SEPARATOR
$if($and(%comment%,$strcmp($get(show_comment),1)),
$puts(sepw,$repeat($get(sepc),$sub($div($sub(%_width%,$calcwidth($get(sep3))),$get(sepw2)),1)))
$transition($get(sepw),$get(fadeend),$get(text1))
$get(text2)$get(sep3)
$transition($get(sepw),$get(text1),$get(fadeend))
$char(10)
$rgb(204,204,204)
$ifgreater($calcwidth(%comment%),%_width%,$alignset()$alignrel(left,),)
$ifgreater($len(%comment%),$get(max_comment_length),$cut(%comment%,$get(max_comment_length))'...',%comment%)
))

The problem is when I put // PerSecond at the beginning of the code so the %_time_elapsed% would update. It simply uses to much CPU. Is there a way to put the // PerSecond somewhere inside the // TECH INFO SEPARATOR? Then the script would only update per second the part that is needed and the CPU usage would drop (i think).
Title: Track Info Panel with ability to change font
Post by: alpha on 2007-08-02 10:04:20
the link for dl the dll of track info panel mod is down  where can i download the dll please
Title: Track Info Panel with ability to change font
Post by: Yotsuya on 2007-08-04 01:09:09
This component is no longer being developed. It has been merged into PanelsUI. If you add foo_ui_panels.dll into your foobar you will have "Track Display" panel available in your ColumnsUI configuration even if you do not use PanelUI as your primary interface.
Title: Track Info Panel with ability to change font
Post by: Squeller on 2008-06-27 15:17:20
We are in 2008 now, fb2k generates an error message for foo_ui_panels at fb2k start, so, back here again!

I downloaded a foo_uie_trackinfo_mod, from whereever. After a couple of code changes it works, I'm just puzzled about the alignabs things, not sure if this plugin has it.

Is this a japanese product or what is it? Looks this great here:

(http://minnit.de/etc/trackinfomod.png)

Code: [Select]
foo_uie_trackinfo_mod.dll (2007-01-05 13:36:20) Track info panel mod 0.8.0 beta [Jan  5 2007 - 13:36:12]

Anyone else?
Title: Track Info Panel with ability to change font
Post by: ladiko on 2008-07-07 23:44:36
same issue here with a version from here:
http://www.hydrogenaudio.org/forums/index....showtopic=64035 (http://www.hydrogenaudio.org/forums/index.php?showtopic=64035)

fortunately i backuped my "old" english one with the same file creation date:
http://www.2shared.com/file/3560916/3a24ee...ckinfo_mod.html (http://www.2shared.com/file/3560916/3a24ee52/foo_uie_trackinfo_mod.html)
Title: Track Info Panel with ability to change font
Post by: s33m33 on 2008-07-13 07:30:59
Stuck on 0.9.5.3.

The current path is taking us to DefaultUI by abandoning ColumnsUI/PanelsUI. Lot of sentimental values down the drain
Title: Track Info Panel with ability to change font
Post by: Xerion on 2008-07-13 09:02:25
That's bull, ColumnsUI is still supported as well as it ever was. PanelsUI was a bad hack...
Title: Track Info Panel with ability to change font
Post by: Squeller on 2008-07-13 15:45:40
fortunately i backuped my "old" english one with the same file creation date:
http://www.2shared.com/file/3560916/3a24ee...ckinfo_mod.html (http://www.2shared.com/file/3560916/3a24ee52/foo_uie_trackinfo_mod.html)

Oh great, thank you, I'll try that one.
Title: Track Info Panel with ability to change font
Post by: s33m33 on 2008-07-13 17:10:39
Thanks for english version ladiko.
Had to remove some foo_cwb_hooks code to make it function correctly.

Anybody know the code to replace %cwb_next_artist% & %cwb_next_title% ?
Title: Track Info Panel with ability to change font
Post by: Zetto on 2008-07-15 13:47:54
Download link with different versions:

http://bbs.pcpchina.com/index.php?showtopic=113645 (http://bbs.pcpchina.com/index.php?showtopic=113645)
Title: Track Info Panel with ability to change font
Post by: ladiko on 2008-07-15 15:26:14
Squeller's component:
foo_uie_trackinfo_mod 0.8.0Beta[Jan 5 2007]

my one
foo_uie_trackinfo_mod 0.8.0Beta[Jan 5 2007]

your one:
foo_uie_trackinfo_mod 0.8.0Beta[Jan 5 2007]

so what's the difference?
Title: Track Info Panel with ability to change font
Post by: Zetto on 2008-07-15 15:36:07
between the three you specified? nothing except the language, I think.
I just wanted to provide another download link

With "different version" I meant that there are older versions available, too.
Title: Track Info Panel with ability to change font
Post by: PsychoSound on 2008-07-24 23:44:45
this is my set up, actually its my first attampt to customize foobar and i've kinda learned in the proccess

i did a little animation, all is needed are 6 images: 0-5.png (0-4 for play time, and 5 for no track)

i'll be glad if someone suggests any idea of internal clock (instead of the $mod thing) so skipping in pause mod will not change the animation, i've tried $put and $get but it didn't work.

(http://img139.imageshack.us/img139/2091/screenstrackinfocirclesyh2.th.jpg) (http://img139.imageshack.us/my.php?image=screenstrackinfocirclesyh2.jpg)


Code: [Select]
// PerSecond


////PLAYING TIME
$if(
%Playback_time%,
$alignabs(5,$sub(%_height%,50),%_width%,100,,)$font(,11,,98-202-53) Length:$font(,10,,98-202-53) %Playback_time% / %length% $font(,8,,98-202-53)minutes
////

////CIRCLES
$puts(clock,$mod(%playback_time_seconds%,5))
$imageabs($sub(%_width%,400),$sub(%_height%,200),images\$get(clock).png,)
////

)
////

////CODEC+STATIC CIRCLES
$if(
%_trackinfo_notrack%,$imageabs($sub(%_width%,400),$sub(%_height%,200),images\5.png,),
$alignset() $alignrel(left,bottom)$font(,8,,230-40-40)  %bitrate%Kbps %codec%$if($strcmp(?,%codec_profile%),, %codec_profile%) %channels% %samplerate%Hz
)
////


////PROGRESS BAR
$if(
$strcmp(%playback_time_seconds%,0),
,
$drawrect(6,$sub(%_height%,29),$muldiv(%playback_time_seconds%,$sub(%_width%,12),%length_seconds%),13,brushcolor-$add($muldiv(%playback_time_remaining_seconds%,105,%length_seconds%),150)-255-$add($muldiv(%playback_time_remaining_seconds%,105,%length_seconds%),150) penColor-null)
)
$drawrect(5,$sub(%_height%,30),$sub(%_width%,10),15,brushcolor-null pencolor-200-200-200)
////



// PerTrack

$if(
%_trackinfo_notrack%,
$align(center,middle)$font(,24,bold glow-20-100-20,98-202-53) No Track,

////FONT
$font(,13,,98-202-53)
////

////ARTIST
$if($strcmp(?,%artist%),,$alignset() $alignrel(left,top) Artist: %artist%)
////

////TRACK AND NUMBER
$alignset() $alignrel(left,top) Track: %title%
$if($strcmp(?,%tracknumber%),,$alignset() $alignrel(left,top) Number: %tracknumber%)
$if($strcmp(?,%totaltracks%),,$alignrel(left,top)/%totaltracks%)
////

////ALBUM
$if($strcmp(?,%album%),,$alignset() $alignrel(left,top) Album: %album%)
////

////YEAR
$if($strcmp(?,%date%),,$alignset() $alignrel(left,top) Year: %date%)
////

)

//// PAUSED
$alignset() $align(center,middle)$font(,24,bold glow-20-100-20,98-202-53)$if(%_ispaused%,'Paused',)
////
Title: Track Info Panel with ability to change font
Post by: ladiko on 2008-07-25 08:38:38
looks nice :-)

could you be so nive to also provide the images?
Title: Track Info Panel with ability to change font
Post by: (Sly) on 2008-07-25 09:13:41
Please HELP !!!

Here is the problem:

I wanna display album art per track, i use this script:

Code: [Select]
$if($fileexists($replace(%path%,%filename_ext%,%filename%.jpg)),$imageabs2(%_width%,%_width%,0,$div($sub(%_width%,%_height%),2),0,0,0,0,$replace(%path%,%filename_ext%,%filename%.jpg),NOKEEPASPECT alpha-75),$imageabs2(%_width%,%_width%,0,$div($sub(%_width%,%_height%),2),0,0,0,0,./images/default.jpg,NOKEEPASPECT alpha-75))


$fileexists is working, the problem is with $imageabs

Between as u see file covers are in the same dir as files, same name but jpg extension

Problem solved my files are in a directory named #Singles, it looks like foobar not likes # character
Title: Track Info Panel with ability to change font
Post by: sune on 2008-07-25 11:40:43
Hi. I  have a question about creating a button for sorting. I've been trying to find a way to do it and I hadn't realized track_info_mod does something like it (displaying a menu in which you can choose what you want to sort by). like this:

'SORT:Artist|RESET %artist%:Title|RESET %title%:Length|RESET %_length%'

this gives a menu with 3 options: and you can click one after the other to sort by that order, sequentially, or reset

what I'm wondering is if instead of only one field we can set a longer, adn more complicated string. I tried to just write the string in the code, but when it finds a "|" it makes different option in the menu...which makes sense

I've been trying to achieve this for a long time. I wish there was a way to make custom strings accessible in the menu (skipping the extra dialog), so they could be used with buttons, and other components

If anyone knows how to do this with this (or other) component, It would make my foobar perfect for my needs

thanks
Title: Track Info Panel with ability to change font
Post by: PsychoSound on 2008-07-25 13:47:01
looks nice :-)

could you be so nive to also provide the images?


(http://img523.imageshack.us/img523/3411/87938575se2.th.png) (http://img523.imageshack.us/my.php?image=87938575se2.png)
(http://img211.imageshack.us/img211/716/19379593dq4.th.png) (http://img211.imageshack.us/my.php?image=19379593dq4.png)
(http://img59.imageshack.us/img59/2968/79091507tg2.th.png) (http://img59.imageshack.us/my.php?image=79091507tg2.png)
(http://img211.imageshack.us/img211/7489/90959578hr8.th.png) (http://img211.imageshack.us/my.php?image=90959578hr8.png)
(http://img74.imageshack.us/img74/8390/26518514oi5.th.png) (http://img74.imageshack.us/my.php?image=26518514oi5.png)
(http://img78.imageshack.us/img78/233/88887932ns1.th.png) (http://img78.imageshack.us/my.php?image=88887932ns1.png)

have fun!
take into consideration that the height is 200 pixels...
Title: Track Info Panel with ability to change font
Post by: TheChipstar on 2008-08-16 03:52:38
I don't know if development is still going on this, but I was just wondering if this could be implemented:

Displayed Track
Automatic
Playing item
Active playlist item
(Like in 'Artwork view')

These would be really handy to refer to. Or is there already a way to do this that I'm missing?

Cheers.
Title: Track Info Panel with ability to change font
Post by: Dernhelm on 2008-08-25 02:11:23
Hello,

I have a problem with track_info_mod, I have Foobar 9.5.5 and when I put the dll in "components" and I run Foobar, I have an error message :

Failed to load DLL: foo_uie_trackinfo_mod.dll
Reason: This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem.

Anybody experienced the same problem ? I have been searching the net and I can't find no answer.

What is the "application configuration" ?? I have reinstalled and the problem goes on.

I saw on the Internet that it could have something to do with not having Visual C++2005 installed on my computer. But why would I install this thing ? Do all the computer owners who have no problems with Track info mod have Visual C++ installed (apparently, it should generate a file named WinSxS on C: in "Windows") ?

Thanks for any eventual help.
Title: Track Info Panel with ability to change font
Post by: chiwou on 2008-08-25 02:15:24
well its not the Visual Studio Program per se

some components needed dll files and they included in the runtime libraries based on them

here 2005 >> http://www.microsoft.com/downloads/details...;displaylang=en (http://www.microsoft.com/downloads/details.aspx?familyid=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&displaylang=en)

here 2008 >> http://www.microsoft.com/downloads/details...;displaylang=en (http://www.microsoft.com/downloads/details.aspx?familyid=9B2DA534-3E03-4391-8A4D-074B9F2BC1BF&displaylang=en)
Title: Track Info Panel with ability to change font
Post by: Dernhelm on 2008-08-25 02:24:50
Ok, thanks!!

Anyway, I am stupid because it is written in the first message of this topic, but maybe it is only valid for the _mod...mmm...perhaps I should try installing the old track_info (but it is maybe too old  ).

So all the computers where track_info_mod works have Visual C++2005 installed ? Or is it possible to have just the dlls ?

Thanks again, it's nice to help noobs like me. 
Title: Track Info Panel with ability to change font
Post by: chiwou on 2008-08-25 03:07:43
follow the links install the packages and all will be good
its not the visual studio that you install, its just the dll files that are needed for working

install the packages and see
you don't need the "old" version its not necessary
Title: Track Info Panel with ability to change font
Post by: Dernhelm on 2008-08-30 10:37:21
Hello,

Sorry but I found the old version (Foo_uie_trackinfo) and it is just what I need as I'm not interested in changing the font or displaying images. I mainly wanted it to display the path of the selected track and it works just fine.

But I think the info I learned here may come in handy in the future if I change my mind, and if other people have the same problem, now I can tell them where it stems from.

Thanks again!
Title: Track Info Panel with ability to change font
Post by: Bob... Just Bob on 2008-09-21 06:41:45
Old topic and all, hate it bump it but...

(http://img519.imageshack.us/img519/8544/zzzjq0.png)

Anyone else run into this bug?
Title: Track Info Panel with ability to change font
Post by: Falstaff on 2008-09-21 10:23:58
Old topic and all, hate it bump it but...



just activate this support in XP or get the official Track Info Mod dll in english
Title: Track Info Panel with ability to change font
Post by: MC Escher on 2008-09-21 20:51:31
Thank you. I had the same problem, but that's solved now. Is the only difference between this Japanese version and the original track_info_mod the translation or has this been developed any further? I ask this because I can't read Japanese any better then vertical stripes, but if it comes with the benefit of updates then I can live with that.
Title: Track Info Panel with ability to change font
Post by: tedgo on 2008-10-28 20:05:31
I just discovered this great plugin (hope, it will be supported in the new foobar 0.9.6 or will be developed again since its "successor" panelsUI isn't longer supported) and love it. But i have a little problem with it:

I made buttons for "play/pause", "previous", "next", "stop" and "random" and all does their job except "random". It always sets the "playback order" to random instead of playback/random (it sets the command: playback order/random instead of playback/random).

How can i set my button-string to use playback/random?

The button-strings are as followed:
Code: [Select]
$button(71,30,0,0,24,24,C:\Programme\foobar2000\Previous.png,C:\Programme\foobar2000\PreviousMH.png,Previous,)
$button(103,30,0,0,24,24,C:\Programme\foobar2000\Stop.png,C:\Programme\foobar2000\StopMH.png,Stop,)
$button(135,30,0,0,24,24,$if(%ispaused%,C:\Programme\foobar2000\Pause.png,C:\Programme\foobar2000\Play.png),C:\Programme\foobar2000\PlayPauseActive.png,Play or Pause,)
$button(167,30,0,0,24,24,C:\Programme\foobar2000\Next.png,C:\Programme\foobar2000\NextMH.png,Next,)
$button(199,30,0,0,24,24,C:\Programme\foobar2000\Random.png,C:\Programme\foobar2000\RandomMH.png,Random,)


What's wrong with it?

EDIT:
Strange, sometimes when i restart foobar the random button uses "playback/random" like it should...
Maybe a bug in trackinfo_mod.

Is there a way to force the button to only use "playback/random"?
I tried to set
$button(199,30,0,0,24,24,C:\Programme\foobar2000\Random.png,C:\Programme\foobar2000\RandomMH.png,Playback/Random,)
But then the button does nothing...

EDIT2:
Problem solved.
I use button-function in Panel Stack Splitter instead.
Title: Track Info Panel with ability to change font
Post by: yanni on 2008-12-03 22:58:16
Hi,
Is there any chance for a fb2k 0.9.6 compatible version of this plugin?
Title: Track Info Panel with ability to change font
Post by: Falstaff on 2008-12-03 23:15:18
Hi,
Is there any chance for a fb2k 0.9.6 compatible version of this plugin?


still compatible for now. no ?
Title: Track Info Panel with ability to change font
Post by: jeremija on 2008-12-07 16:15:44
a week ago i made a topic about a problem i have with buttons in this plugin:
http://www.hydrogenaudio.org/forums/index....c=67537&hl= (http://www.hydrogenaudio.org/forums/index.php?showtopic=67537&hl=)

but nobody answered...
if anybody knows what am i doing wrong, please help!
Title: Track Info Panel with ability to change font
Post by: Borisz on 2008-12-10 19:49:43
Hi,
Is there any chance for a fb2k 0.9.6 compatible version of this plugin?

It works fine here, foo_uie_trackinfo_mod.dll, version 0.8.0 beta Jan 5 2007.

a week ago i made a topic about a problem i have with buttons in this plugin:
http://www.hydrogenaudio.org/forums/index....c=67537&hl= (http://www.hydrogenaudio.org/forums/index.php?showtopic=67537&hl=)

but nobody answered...
if anybody knows what am i doing wrong, please help!


All I can say is that buttons sometime disappear for me as well. I have no idea how to fix it, short of restarting foobar.
Title: Track Info Panel with ability to change font
Post by: jeremija on 2008-12-11 07:14:12
All I can say is that buttons sometime disappear for me as well. I have no idea how to fix it, short of restarting foobar.

i think i figured it out. when i use relative paths (eg. my images are in foobar's directory and i just put the path like images\image.png) this sometimes happens.
but when i use absolute path (eg. C:\foobar2000\images\image.png) this doesn't happen (at least i didn't see it happen yet).
is there a variable that contains foobar's path? like %foopath% or something?
Title: Track Info Panel with ability to change font
Post by: tedgo on 2008-12-11 07:48:02
I have all my images stored in C:\Programme\foobar2000\Appearance\
And i use this variable:
$puts(imagepath,'./Appearance\')
to call it like '$get(imagepath)Blue1.png' for instance.

I have never had invisible buttons.
Title: Track Info Panel with ability to change font
Post by: jeremija on 2008-12-12 13:46:39
I have all my images stored in C:\Programme\foobar2000\Appearance\
And i use this variable:
$puts(imagepath,'./Appearance\')
to call it like '$get(imagepath)Blue1.png' for instance.

I have never had invisible buttons.


i have this:
Code: [Select]
$puts(foodir,C:\Media\foobar2000\)
$put(rate1,$get(foodir)fb2k-buttons2\jere\ratehq16\rate11.png)
$put(rate0,$get(foodir)fb2k-buttons2\jere\ratehq16\rate0.png)
$put(rate,$get(foodir)fb2k-buttons2\jere\ratehq16\rate1.png)

$ifgreater(%rating%,0,
    $put(rating1,$get(rate1)),
    $put(rating1,$get(rate0))
)
$ifgreater(%rating%,1,
    $put(rating2,$get(rate1)),
    $put(rating2,$get(rate0))
)
$ifgreater(%rating%,2,
    $put(rating3,$get(rate1)),
    $put(rating3,$get(rate0))
)
$ifgreater(%rating%,3,
    $put(rating4,$get(rate1)),
    $put(rating4,$get(rate0))
)
$ifgreater(%rating%,4,
    $put(rating5,$get(rate1)),
    $put(rating5,$get(rate0))
)

$button($add($get(starleft),0,16),$get(startop),0,0,16,16,$get(rating1),$get(rate),TAG:SET:Rating:1,)
$button($add($get(starleft),1,32),$get(startop),0,0,16,16,$get(rating2),$get(rate),TAG:SET:Rating:2,)
$button($add($get(starleft),2,48),$get(startop),0,0,16,16,$get(rating3),$get(rate),TAG:SET:Rating:3,)
$button($add($get(starleft),3,64),$get(startop),0,0,16,16,$get(rating4),$get(rate),TAG:SET:Rating:4,)
$button($add($get(starleft),4,80),$get(startop),0,0,16,16,$get(rating5),$get(rate),TAG:SET:Rating:5,)

i tried to change foodir variable to './', '.\', ./ and .\
that all works when i press apply/ok, but as soon as i quit foobar and restart it i see only the images that load when ifgreater is true.
if i say that foodir is C:\Media\foobar2000\ then there is no such problem. i just don't understand it
Title: Track Info Panel with ability to change font
Post by: Borisz on 2009-01-11 01:33:41

All I can say is that buttons sometime disappear for me as well. I have no idea how to fix it, short of restarting foobar.

i think i figured it out. when i use relative paths (eg. my images are in foobar's directory and i just put the path like images\image.png) this sometimes happens.
but when i use absolute path (eg. C:\foobar2000\images\image.png) this doesn't happen (at least i didn't see it happen yet).
is there a variable that contains foobar's path? like %foopath% or something?

I can confirm that using relative paths will indeed make images disappear (specifically, the issue happens when I use the command "enqueue in foobar2000" in a folder, with foobar being closed beforehand). Using absolute paths however, will not trigger this issue.

Using $puts(imagepath,'C:\Program Files\foobar2000\images\') in the top of the track info panel config, and calling the images with $get(imagepath)filename.png works perfectly well.
Title: Track Info Panel with ability to change font
Post by: XJDenton on 2009-01-24 18:23:46
I am wanting to use a button to run a service using the foo_run component (usually accessible via the context menu right click>Run service>Google Artist). However when i put the path into the command section of the button nothing seems to happen. Fairly sure the spelling is right, and other context commands work fine. Any ideas as to the issue?
Title: Track Info Panel with ability to change font
Post by: tedgo on 2009-01-24 18:52:00
I tried it:
$button2(0,0,0,0,80,16,'$font(,,,0-0-255)'Google Artist,'$font(,,,255-0-0)'Google Artist,'Google Artist',)
and it works.
Title: Track Info Panel with ability to change font
Post by: XJDenton on 2009-01-24 21:33:29
I tried it:
$button2(0,0,0,0,80,16,'$font(,,,0-0-255)'Google Artist,'$font(,,,255-0-0)'Google Artist,'Google Artist',)
and it works.


Excellent, worked for me too. Cheers.
Title: Track Info Panel with ability to change font
Post by: vogliadicane on 2009-03-01 20:29:50
Can anybody help. I´ve googled a lot and didn´t find out much.....

1. The question is: what are the correct commands for track info mod. The description refers only to the main menu commands (e.g. playback/pause)...

I need the command for "set volume to 0 dB" for example, to fake a volume slider with buttons (similar to how usually rating is realized)...

2. Is it possible to send keyboard inputs to another panel (with a button)?

I want to include a button, which fakes keyboard input "arrow right" for chronflow
Title: Track Info Panel with ability to change font
Post by: lljk on 2009-03-03 02:52:16
hello -
 ...and please excuse me to the moderators of this forum - but i believe i've finally found the correct thread in which to post this!  here's a fairly simple config based on a turntable, shown stopped and playing.

(http://i616.photobucket.com/albums/tt245/llcooljk/lljkturntable.jpg)

the code is largely set up for my dockable panels, to activate the playlist, queue manager, search window, peakmeter, and albumlist - so you'll have to change it some to suit your needs, but the main playback buttons, as well as the menu and preferences buttons (the two tiny buttons under the stylus when stopped) should all work as is.  the album art shown is *.jpg in the playing file's folder.  ah, the button that looks like a play button is really the 'next button,'  the button with the 'p' on it next to the volume slider is the play/pause button.

here's the code:
Code: [Select]
//WINDOW INSET
$put(horz,5)
$put(vert,5)

//TURNTABLE AND ART
$if(%isplaying%,
$imageabs2(210,210,0,0,210,210,
$add($get(horz),22),$add($get(vert),17),$replace(%path%,%filename_ext%,)*.jpg,nokeepaspect),
$imageabs($add($get(horz),22),$add($get(vert),17),images\ttable\platter.png,))
$imageabs($get(horz),$get(vert),images\ttable\turntableoverlay.png,)
$if(%isplaying%,$imageabs($get(horz),$get(vert),images\ttable\playoverlay2.png,))
$if(%isplaying%,$imageabs($add($get(horz),92),$add($get(vert),86),images\ttable\albumoverlay.png,))
$imageabs($add($get(horz),124),$add($get(vert),118),images\ttable\spindle.png,)

//PLAY/PAUSE
$put(playpause,$if(%isplaying%,pause,play))
$button($add($get(horz),270),$add($get(vert),185),0,0,15,15,
images\ttable\pp.png,images\ttable\pphot.png,$get(playpause),)


//STOP
$button($add($get(horz),57),$add($get(vert),229),0,0,15,15,
images\ttable\stop.png,images\ttable\stophot.png,stop,)

//PREVIOUS
$button($add($get(horz),41),$add($get(vert),229),0,0,15,15,
images\ttable\prev.png,images\ttable\prevhot.png,previous,)

//NEXT
$button($add($get(horz),11),$add($get(vert),218),0,0,20,20,
images\ttable\next.png,images\ttable\nexthot.png,next,)

//PLAYLIST
$button($add($get(horz),13),$add($get(vert),8),0,0,20,20,
images\ttable\plist.png,images\ttable\plisthot.png,3 - Single Column Playlist View,)

//MENU
$button($add($get(horz),227),$add($get(vert),231),0,0,10,10,
images\ttable\minibutton.png,images\ttable\minibuttonhot.png,5 - Menu,)

//PREFERENCES
$button($add($get(horz),213),$add($get(vert),231),0,0,10,10,
images\ttable\minibutton.png,images\ttable\minibuttonhot.png,Preferences,)

//SHUFFLE
$if($stricmp(%cwb_playback_order%,default),
$button($add($get(horz),5),$add($get(vert),187),0,0,20,20,
images\ttable\def.png,images\ttable\defhot.png,'Shuffle (tracks)',))

$if($stricmp(%cwb_playback_order%,'shuffle (tracks)'),
$button($add($get(horz),5),$add($get(vert),187),0,0,20,20,
images\ttable\shtracks.png,images\ttable\shtrackshot.png,default,))

//GRAPHICAL BROWSER
$button($add($get(horz),124),$add($get(vert),118),-10,-10,20,20,
images\ttable\spindle.png,images\ttable\spindlehot.png,1 - Graphical Browser,)

//SPECTRUM ANALYZER
$button($add($get(horz),284),$add($get(vert),228),0,0,15,15,
images\ttable\vis.png,images\ttable\vishot.png,9 - Peakmeter spectrum,)

//SEARCH
$button($add($get(horz),264),$add($get(vert),228),0,0,15,15,
images\ttable\search.png,images\ttable\searchhot.png,Search,)

//CUE LIST
$button($add($get(horz),242),$add($get(vert),228),0,0,15,15,
images\ttable\cue.png,images\ttable\cuehot.png,6 - Queue Manager,)

//FILE TREE
$button($add($get(horz),292),$add($get(vert),57),0,0,15,15,
images\ttable\alblist.png,images\ttable\alblisthot.png,2 - Album list,)

//VOLUME BAR
$puts(volume,$substr($num(%cwb_volume%,4),2,4))

//VOLUME CONTROLS

$if($stricmp(100,$get(volume)),
$button($add($get(horz),294),$add($get(vert),206),-5,-5,20,20,
images\ttable\voldown.png,images\ttable\voldownhot.png,Volume DOWN,),
$button($add($get(horz),294),$add($get(vert),206),-5,-5,20,20,
images\ttable\voldown.png,images\ttable\voldownhot.png,Volume DOWN,))

$if($stricmp(100,$get(volume)),
$button($add($get(horz),294),$add($get(vert),117),-5,-5,20,20,
images\ttable\volup.png,images\ttable\voluphot.png,Volume UP,),
$button($add($get(horz),294),$add($get(vert),117),-5,-5,20,20,
images\ttable\volup.png,images\ttable\voluphot.png,Volume UP,))

$put(slidervert,$sub(131,$mul(%cwb_volume%,1.4)))
$imageabs($add($get(horz),291),$add($get(vert),$get(slidervert)),images\ttable\volslider.png,)

and a link to the images - put the 'ttable' folder in the 'images' folder in your main foobar folder...

turntable images (http://www.mediafire.com/?evhzl4htmic)

@vogliadicane - trying to work out the volume slider issue as well, for now you have to click on the '+' and '-' symbols...

@moderators - please delete my other posts as you see fit, and sorry again for taking so long to find the right place - new here and there are a lot of threads to sift through...
Title: Track Info Panel with ability to change font
Post by: vogliadicane on 2009-03-11 10:09:06
Can anybody help. I´ve googled a lot and didn´t find out much.....

1. The question is: what are the correct commands for track info mod. The description refers only to the main menu commands (e.g. playback/pause)...

I need the command for "set volume to 0 dB" for example, to fake a volume slider with buttons (similar to how usually rating is realized)...

2. Is it possible to send keyboard inputs to another panel (with a button)?

I want to include a button, which fakes keyboard input "arrow right" for chronflow


I soved problem one by simply using a wsh panel with sliders.

Anybody an idea for point 2?
Title: Track Info Panel with ability to change font
Post by: Vitriolic on 2009-03-20 05:11:39
Could someone please re-upload the latest english version somewhere?  All the links to it appear to be down, and the only link I can google up is the japanese one.  Thanks

okay, I'm an idiot, nevermind. (http://pelit.koillismaa.fi/plugins/show.php?id=160)  hahah
Title: Track Info Panel with ability to change font
Post by: vogliadicane on 2009-04-22 18:22:40
I´ve come back to this panel because some things are still not quite satisfying in PSS (buttons and other things things are flickering, rating isn´t possible yet...)

The only thing that bothers me for track info mod is the missing transparency. I´m trying a workaround to put part of the PSS background image in TIM with $imageabs2 but for that I would definitely need the width and hight of the window for correct stretching/cropping not of the panel (as %_width% and %_hight% outputs here).

Anybody an idea, I´ve tried to set variables in PSS but they are not accessible in TIM....
Title: Track Info Panel with ability to change font
Post by: Rike14 on 2009-04-26 10:02:22
Hello !
Is it possible to add a vertical scrollbar to the trackinfo panel?
If it is, what's the code?
Thank you very much !
Title: Track Info Panel with ability to change font
Post by: Neillithan on 2009-09-03 00:42:54
Where can I download this?  The download link is broken.
Title: Track Info Panel with ability to change font
Post by: electricprophet on 2009-09-12 11:40:54
yeah, i want it too
Title: Track Info Panel with ability to change font
Post by: Freem on 2009-11-21 09:50:48
In foobar 1.0 beta does not work
Title: Track Info Panel with ability to change font
Post by: dreadroach on 2009-11-26 07:31:00
In foobar 1.0 beta does not work


It does work for me (v0.8.0 beta)

Btw, is there a newer version of this component? This one is pretty old (and it's blacklisted).

I see that the link is broken, so if anyone wants it:

foo_uie_trackinfo_mod (http://www.softpedia.com/get/Multimedia/Audio/Audio-Plugins/foo-uie-trackinfo-mod.shtml)
Title: Track Info Panel with ability to change font
Post by: velt on 2009-11-26 19:28:28
foo_uie_trackinfo_mod was merged in PanelsUI. PanelsUI is not used anymore, but I believe WSH Panel Mod is the closest equivalent today.

EDIT : Apparently Column UI offers similar functionality, it's called 'Item Properties'.
Title: Track Info Panel with ability to change font
Post by: Freem on 2009-11-29 20:08:56
Was foo_uie_trackinfo 0.8
Replaced on foo_uie_trackinfo_mod, now all not beautiful %)

foo_uie_trackinfo
(http://s11.radikal.ru/i184/0911/38/46b68589a9cf.jpg)

foo_uie_trackinfo_mod
(http://s52.radikal.ru/i136/0911/0d/dc7870e2ea43.jpg)

ps: paranoia is of course, but want so...
Title: Track Info Panel with ability to change font
Post by: Keesface on 2009-12-23 00:16:34
Is there still some form of documentation for this available? I'm searching for it but can't find it .
Title: Track Info Panel with ability to change font
Post by: garbanzo.bean on 2010-01-17 19:03:20
i guess this component isn't used much these days, but i like it a lot.

here's what i've whipped up. the code is extremely ugly, but it works great

(http://imgkk.com/i/QHUWAg.jpg)

Code: [Select]
// Global

$puts(1,$rgb(234,0,0))
$puts(2,$rgb(224,41,00))
$puts(3,$rgb(215,78,0))
$puts(4,$rgb(205,112,0))
$puts(5,$rgb(195,142,0))
$puts(6,$rgb(186,169,0))
$puts(7,$rgb(160,176,0))
$puts(8,$rgb(121,167,0))
$puts(9,$rgb(86,157,0))
$puts(10,$rgb(54,147,0))
$puts(11,$rgb(25,138,0))
$puts(12,$rgb(0,128,0))

$drawrect(0,0,%_width%,15,brushcolor-50-100-140)
$alignabs(0,0,%_width%,15,center,middle)$rgb(255,255,255)NOW PLAYING

$drawrect(0,150,%_width%,15, brushcolor-50-100-140)
$alignabs(0,150,%_width%,15,center,middle)$rgb(255,255,255)TECHNICAL

$drawrect(0,225,%_width%,15, brushcolor-50-100-140)
$alignabs(0,225,%_width%,15,center,middle)$rgb(255,255,255)STATISTICS

// PerTrack
$alignabs(0,15,65,15,right,)Title:
$alignabs(0,30,65,15,right,)Rating:
$alignabs(0,45,65,15,right,)Artist:
$alignabs(0,60,65,15,right,)Album:
$alignabs(0,75,65,15,right,)Type:
$alignabs(0,90,65,15,right,)Date:
$alignabs(0,105,65,15,right,)Genre:
$alignabs(0,120,65,15,right,)Style:
$alignabs(0,135,65,15,right,)Comments:
$alignabs(0,165,65,15,right,)Codec:
$alignabs(0,180,65,15,right,)Bitrate:
$alignabs(0,195,65,15,right,)Track Gain:
$alignabs(0,210,65,15,right,)Album Gain:
$alignabs(0,240,65,15,right,)Play Count:
$alignabs(0,255,65,15,right,)Last Played:
$alignabs(0,270,65,15,right,)Length:


$alignabs(70,15,$sub(%_width%,60),15,,)$rgb(50,100,140,0,0,0)$replace($replace(%title%,')',')'$rgb(50,100,140,0,0,0)),'(',$rgb(133,176,211,94,74,83)'(')

$alignabs(70,30,$sub(%_width%,60),15,,)
$puts(mychar,$char(9733)$char(8202))
$rgb(245,175,92,225,155,72)
$ifgreater(%rating%,0,
$repeat(★,%rating%)
$repeat($rgb(230,230,230,210,210,210)★,$sub(5,%rating%))
,
$repeat($rgb(230,230,230,210,210,210)★,5)
)

$alignabs(70,45,$sub(%_width%,60),15,,)$rgb(60,100,60)%artist%

$alignabs(70,60,$sub(%_width%,60),15,,)$puts(normal,$rgb(60,100,60))
$puts(light,$rgb(164,180,134))
$puts(bright,$rgb(205,135,52))
$get(normal)
$replace(%album%,
'(',$get(light)'(',
')',')'$get(normal),
'[single]',,
'EP',,
'12"',,
'7"',)
$if(%discnumber%,
$get(sep)$rgb(0,0,255) '['Disc %discnumber%[ of %totaldiscs%]']'
,)

$alignabs(70,75,$sub(%_width%,60),15,,)$rgb(50,100,140)%release type%

$alignabs(70,90,$sub(%_width%,60),15,,)$rgb(50,100,140)%date%

$alignabs(70,105,$sub(%_width%,60),15,,)$rgb(50,100,140)%genre%

$alignabs(70,120,$sub(%_width%,60),15,,)$rgb(50,100,140)%style%

$alignabs(70,135,$sub(%_width%,60),15,,)$rgb(50,100,140)$if2(%comments%,...)

$alignabs(70,165,$sub(%_width%,60),15,,)$rgb(50,100,140)%codec% [%codec_profile%]

$alignabs(70,195,$sub(%_width%,60),15,,)$if(%replaygain_track_gain%,$rgb(50,100,140)%replaygain_track_gain%,$rgb(234,0,0)$char(215))

$alignabs(70,210,$sub(%_width%,60),15,,)$if(%replaygain_album_gain%,$rgb(50,100,140)%replaygain_album_gain%,$rgb(234,0,0)$char(215))

$alignabs(70,240,$sub(%_width%,60),15,,)$rgb(50,100,140)%play_count% $ifequal(%play_count%,1,time,times)

$alignabs(70,255,$sub(%_width%,60),15,,)$rgb(140,150,160)$rgb(50,100,140)$if2(%last_played%,Never)


// PerSecond
$alignabs(70,270,$sub(%_width%,60),15,,)$rgb(50,100,160)%length%$rgb(140,150,160)' [- '%playback_time_remaining%']'

$alignabs(70,180,$sub(%_width%,60),15,,)
$rgb(140,150,160)

$ifgreater(%bitrate%,0,$get(1),)
$ifgreater(%bitrate%,49,$get(2),)
$ifgreater(%bitrate%,74,$get(3),)
$ifgreater(%bitrate%,99,$get(4),)
$ifgreater(%bitrate%,124,$get(5),)
$ifgreater(%bitrate%,149,$get(6),)
$ifgreater(%bitrate%,174,$get(7),)
$ifgreater(%bitrate%,199,$get(8),)
$ifgreater(%bitrate%,224,$get(9),)
$ifgreater(%bitrate%,249,$get(10),)
$ifgreater(%bitrate%,274,$get(11),)
$ifgreater(%bitrate%,299,$get(12),)

%bitrate% $rgb(50,100,140)kbps
Title: Track Info Panel with ability to change font
Post by: geoslay on 2010-01-30 08:32:47
Hi,i use this code but on rate i have no stars but lines,any help?

Moderation: Removed unnecessary full quote of the preceding post.
Title: Track Info Panel with ability to change font
Post by: jeremija on 2010-01-30 08:52:17
It doesn't work native on windows xp, vista or 7 is needed.
An alternative is to install East Asian language support as described in this topic (http://www.hydrogenaudio.org/forums/index.php?showtopic=66155).
Title: Track Info Panel with ability to change font
Post by: geoslay on 2010-01-30 09:28:41
It doesn't work native on windows xp, vista or 7 is needed.
An alternative is to install East Asian language support as described in this topic (http://www.hydrogenaudio.org/forums/index.php?showtopic=66155).


I have win 7 ultimate x64 Greek lang. here is a screen cap.
(http://img25.imageshack.us/img25/5319/fooo.png)







Title: Track Info Panel with ability to change font
Post by: geoslay on 2010-01-30 10:13:13
Ok,i fix it,i was had wrong text settings,thank you.