Содержание

Manual for Panel Stack Splitter v0.3.8.1

foo_uie_panel_splitter.dll v0.3.8.1(alpha ver)

for foobar2000 v0.9.5.2 +,Columns UI0.3 +,WindowsXP +

Note:This component is incomplete and may show unpredictable behaviour.

[Summary] Columns UI panel to place the splitter
And without borders,and slightly overlapping the panels can be set and high degree of freedom.

[Note] Maturity is catastrophically low. Became much so far and what had been originally planned,
Not set items is consistent. In addition,the complex set, TitleFormat knowledge is required.

[How] Foobar2000?copy the dll folder in the component
ColumnsUI from the Layout, Panel Stack Splitter added.
ColumnsUI serves as the Splitter.
Added right-click on the panel → Splitter Settings can be set.

[Setting]

PanelList

Panel placement mode

Panel layout and automatic placement mode, forcing you to set modes.
Automatic deployment mode, the horizontal(Horizontal) or placed vertically(Vertical) or choose a place.
Forced layout mode that is placed on the panel is forced into place.

Size:

Size Display Panel(Horizontal size of the horizon if, Vertical Vertical size of if)

Lock size:

a place not scale.
Each panel is off when the Splitter according to size and place the appropriate scaling for size.
Lock situation even if they may be ± 1 pixel blur minutes.
- «So difficult to fix,it may not fix.

Forced layout:

left Top width right under it to deploy forces in the range specified by the panel.
(size and auto-scaling is no longer valid.)

If you stacked the panel, as displayed on the front panel of the top panel list
(Dependent on implementation of child panels,though. I think I have also come out on the front panel profusely.)
Title Formatting is enabled.
%_width% %_height% in the horizontal width of the Panel Stack Splitter, you can see the vertical width. Example:

            left:$div(%_width%,4)
            top:$div(%_height%,4)
            width:$div(%_width%,2)
            height:$div(%_height%,2)

Also, Splitter also specify mode is relative to size.
when the use parsentage value is on, Splitter percentage relative to the size of the [0-100] can be specified.
The use parsentage value set on when the cases:

            left:25
            top:25
            width:50
            height:50

padding:

put a space around the panel.

[Note]
ColumnsUI in the panel is to present the panel with background transparency features,
use image use background color or background is often not transparent and does not use the panel.

Script

Titleformat mode on startup: PerTrack of TitleFormat startup mode.

title formatting script:
By writing the Titleformat here,you can decorate the background. However,you can draw the child is not covered on the panel.

Extended commands [Reference]
Uppercase argument is optional.
Note:You can not put to waste space.(New line is available)

Title formatting script is being evaluated,

Per Track

- when it is resized.?When the track has changed and play pauses. Function when the REFRESH button.

Per Second

- per second. When a change in playback state. Function when the REFRESH button.

Behaviour

Title Formatting can I put a fixed number is invalid.
If the automatic placement panel,padding will be able to resize with the mouse as if the border is set.

enable resizable border

with on/off can

Use background color

the color specified,fill the background.

Pseudo transparency

splitter to a pseudo-transparent background.(splitter,used if the nest)

Use background image

to specify a fixed background image. TitleFormatting is disabled.

Evaluate scripts when track info is modified

When full information has changed,TF(PerTrack and PerSecond) to evaluate.

[Field]

%ps_width%

Returns the width of the Splitter.

%ps_height%

Returns the height of the Splitter.

%ps_tfmode%

TF return mode.(Per Track enabled)
Mode

%ps_isplaying%

Whether playing.

%ps_ispause%

Whether paused.

%ps_foobar2000_path%

foobar2000 path of the executable.

%ps_user_profile_path%

User profile path.

%ps_playback_order%

return the playback order. However,at present,playback order can not be immediately reflected in the change.(REFRESH commands are required)

%ps_track_state%

To assess the state of the full TF.

[Function]

$init_ps_global(name,value)

$init_ps_global(name,value,persistency)

The specified name name to create a global variable,set the value of value.
Is valid only if there is no global variable name specified.

:?: Any other comments PanelStackSplitter All global variables are shared between each of the TF PanelStackSplitter evaluation order is undefined.
?Persistency = 1 variable is set, $delete_ps_gobal you use will be saved until you delete from the settings dialog.
?$Init_ps_global(name,value) is, $if($get_ps_global(name),,$set_ps_global(name,value)) and almost equivalent.

name - Name of global variable
value - the value
persistency - whether to save at the end.

$set_ps_global(name,value)

The value of global variable to set the specified value name.
If there is no global variable name is automatically created and set the value.

$get_ps_global(name) or %name%

Returns the value of global variable name specified.
If a name corresponding to the global variable does not exist,false is returned.

$delete_ps_global(name)

Remove the global variable name.

$font(name,size,OPTIONS)

The font settings.
name - the font name
size - font size
OPTIONS - style.
Combination of the following: bold italic underline strikeout

Example:

  $font(Tahoma,10,bold italic)

Drawing functions

$drawstring(text,x,y,w,h,color,OPTIONS[,OPTIONS2])

Function to draw the string. text coordinates(x,y) to draw on.

:?: Any other comments
?Drawtext string and this function can be viewed only in drawtextex.
TrueType fonts can only be?.

text - String to draw.
x - horizontal coordinate
y - vertical coordinate
w - width of the drawing
h - the height of the drawing area
color - color to r-g-b-a format.
OPTIONS - Specify aligned,specify rendering quality,and given to the clip.

OPTIONS2 - glow effect to specify the conditions.(Optional experimental,experimental option)

glow - glow options
Specified format

offset - glow effect specified offset
Format specified

:?: Any other comments
Only if specified in the OPTIONS glow_aa, outline and will be available semibold.

outline - specifies the color font border Specified format

:?: Any other comments
?These specifications may be changed.
How to change the glow,especially drawing,and may outline and the abolition of semibold.
?Glow processing load is high.(Especially when the pseudo transparent.)

Example

  $drawstring(abcd,10,10,,,255-128-64-128,)
  $drawstring(abcd,10,10,,,255-128-64-128,left vcenter,glow :2:255-255-255)
  $drawstring(efgh,10,10,,,255-255-255,vcenter glow_aa,glow :1:32-168-268 semibold)
  $drawstring(wxyz,10,10,,,255-255-255,glow_aa,glow :0:32-168-268 semibold offset:2:1 outline :32-168-268)
  $drawstring(wxyz,10,10,,,255-255-255,,glow :2:32-168-268:1)
  $drawstring(wxyz,10,10,,,255-255-255,elipchar)

$drawrect(x,y,w,h,colour1,colour2,OPTIONS)

Draw a rectangle function.
Coordinates(x,y) size(w,h) to draw a rectangle.

colour1 - internal color r-g-b-a form
colour2 - border color of the form r-g-b-a

OPTIONS - Style

Example

  $drawrect(0,50,50,50,255-128-64-128,,aa)

$gradientrect(x,y,w,h,colour1,colour2,OPTIONS,peakpoint)

Gradient fill in the rectangle drawing functions.
Coordinates(x,y) size(w,h) to draw a rectangle.

colour1 - start color gradient
colour2 - end color gradient

OPTIONS

peakpoint:0-100
To shift the position of the end of the gradient.
The default value is 0 on, colour1 → colour2 to transition to.
When 50 is, colour1 → colour2 → colour1 the transition.

Example:

   $gradientrect(0,50,50,50,255-128-64-128,255-255-255,vertical aa)
   $gradientrect(0,50,50,50,255-128-64-128,255-255-255,,10)

$drawblurrect(x,y,w,h,colour,level)

Fill a rectangle drawing functions blur the outline.
level - degree blur [1 .. 7]

$drawfocusrect(x,y,w,h)

Function to draw a dotted line shows the focus rectangle of the specified frame.

$drawthemerect(x,y,w,h,control,partId,stateId)

Control within a rectangle with VisualStyle(button and progress bar) function to draw.
Because only practical to draw a picture may be low.

:?: Any other comments
?VisualStyle not to draw the control is not defined.
Than required at least WindowXP?.

control:
Specify the name of the type of control you want to draw. One of the following.
window button rebar toolbar status listview header progress tab trackbar tooltip treeview spin scrollbar edit combobox taskbar taskband startpanel explorerbar

partId:
Drawing in part to the specified control ID. Specify a number.
High numbers are likely to make the following ranges for each control as a guide.
Because the OS components have been added,a guide only.
VisualStyle parts are not defined can not be drawn.

stateId:
state of the components(such as selected state) show ID. No. If you do not have to specify the state is 0.
stateId as 1 or 0 if not drawn to specify the parts has not been defined.

Example:

  $drawthemerect(0,0,%el_width%,%el_height%,tab,10,0) / / tab draw a portion of the body
  $drawthemerect(,,,,progress,3,0) / / draw the progress bar bar

$drawroundrect(x,y,w,h,w2,h2,colour1,colour2,RESERVED)

Draw a rectangle with rounded corners function.
Coordinates(x,y) size(w,h) to draw a rectangle with rounded corners.

:?: Any other comments
w>4*w2 & & h>4*h2 satisfy the need.

w2 - The width of the rounded
h2 - height of the rounded
internal color colour1
Border Color colour2

Example

  $drawroundrect(10,20,50,50,4,4,255-255-128-255,,)

$drawellipse(x,y,w,h,colour1,colour2,RESERVED)

Ellipse drawing functions.
Coordinates(x,y) size(w,h) to draw the ellipse.

$drawtriangle(x1,y1,x2,y2,x3,y3,colour1,colour2,OPTIONS)

(x1,y1),(x2,y2),(x3,y3) and the vertex functions to draw a triangle.

OPTIONS

Example:

  $drawtriangle(10,5,20,10,10,15,200-100-100,,aa)

$imageabs(x,y,w,h,path,OPTIONS,n,alpha,OPTIONS2)

Coordinates(x,y) size(w,h) in the path to display an image that is specified in.
If images exist true,must be false.

dipsplays the image specified by path.
after the image is resized,it is cached on the memory.

:?: Any other comments Hold in memory the image after resizing, I'll see if the processing efficiency of the next.
Is referred to as the image will be deleted from the memory of them.
w,h display the original image size is omitted,the cache.
(However,w,h if you are already cached in memory to be omitted, the Image size will have to accept cash.)

Reduced rate if you want to handle multiple
Poor quality and will be expanded after shrinking.
nodisplay noexpansion and using such
Cache memory is better first to reduce the largest percentage reduction in the rate of use.

path - absolute path of the image(or images embedded AudioFile's path)

OPTIONS

The format of the archive reader path-dependent,the absolute path of the Archives | base file path in the room.
Example:

  C:\aaa\image.zip|bbb/ccc.jpg

If no embedded images,Audio Files folder to load images. However slow.

(artreader *** are currently disrecommended options because these option seem to be slow)

n - rotateflip index for

alpha - opacity [0 .. 255] (0 transparency)

OPTIONS2 - shadow effect ($drawstring see the glow effect )

Example

      $imageabs(10,10,50,50,C:\%album%. Jpg)
      $imageabs(10,10,50,50,C:\%album%. jpg,left top)
      $imageabs(10,10,50,50,C:\%album%. jpg,,6)
      $imageabs(10,10,50,50,C:\%album%. jpg,bottom,,128)
      $imageabs(10,10,50,50,C:\%album%. jpg,bottom,,,glow :2:0-0-0 offset:4:4)
      $imageabs(10,10,50,50,%path%,artreader)

$imageabs_rc(rw,rh,srcx,srcy,srcw,srch,x,y,path,OPTIONS,n,alpha,OPTIONS2)

To view the clip,and resize images.
path specified by the image size (rw,rh) After resizing,
The subregion (srcx,srcy,srcw,srch) coordinates (x,y) size (srcw,srch) to display.

In memory (rw,rh) in the cache.
When evaluating TF (rw,rh) and changes to reload image.
Therefore, rw,rh is to be given a fixed value.

If images exist true, must be false.

See OPTIONS $imageabs

Example:

  $imageabs_rc(200,100,0,0,100,50,10,10,C:\%album%. jpg,,6,192)
  $imageabs_rc(200,100,0,0,200,100,10,10,C:\%album%. jpg,,)(= $imageabs(10,10,200,100,C:\%album%. jpg,left top,,))
  $imageabs_rc(150,120,0,0,150,120,20,15,C:\%album%. jpg,hcenter vcenter,)(= $imageabs(20,15,150,120,C:\%album%. jpg,,,))

$drawimage(x,y,w,h,path,OPTIONS,n,aplha)

Coordinates(x,y) size(w,h) in the path to display an image that is specified in.
Without the caching behavior of $imageabs.

:?: Any other comments
w and h show the original size is omitted.
TF to be reloaded each time the image is evaluated.

? Not recommended for efficient processing.

OPTIONS - $imageabs reference.

Auxiliary draw

$getlastpos(elem)

Image display function imageabs, imageabs_rc in immediately to get the actual coordinates to draw a picture.
Addition, measurestring also use when you get the results.
mempos can get the coordinates given so soon after the drawstring.

elem - element to specify to retrieve.

Example:

   $puts(img_path,C:\%album%. jpg)
   $imageabs(10,4,100,100,$get(img_path),top noexpansion,)
   $imageabs($getlastpos(x),$getlastpos(b),$getlastpos(w),20,$get(img_path),top nokeepaspect,6)
   $gradientrect($getlastpos(x),$getlastpos(y),$getlastpos(w),$getlastpos(h) ,255-255-255-128 ,255-255-255-255)

$measurestring(text,x,y,w,h,OPTIONS)

$drawstring to calculate the viewing area when drawing the string.
As a result,returns the horizontal width of the display area.
$Getlastpos to results obtained in the display area.

:?: Any other comments
The drawstring,glow_aa to specify when applying glow effects,
Display range is the result of measurestring may not match.

OPTIONS - $drawstring see

$getimagewidth(path), $getimageheight(path)

path is specified in the image of $imageabs $imageabs_rc loaded in the cache memory
If the image has been resized width of horizontal,vertical width of return.

:?: Any other comments
be used only $imageabs $imageabs_rc behind.

$setparcentmode(bx,by,bw,bh)

Set the mode to specify the coordinates.
Window display area
(0,0) ~(%_width%,%_height%) the place is,
Percentage values specified mode(0,0) -(100,100) mapping.
x,y,w,h can be set individually.

:?: Any other comments
x,y,w,h all affect the function with an argument either.

bx - x-mode coordinates specified

by - y coordinates specified mode
bw - w coordinates specified mode
bh - h coordinate specified mode

$getsyscolour(index)

R-g-b color system in the form of return.

index:[0-30] color index system

$averagecolour(colour1,colour2[,colorN])

r-g-b-a the average color of the form.
(colour1+colour2+colorN])/N

$blendcolour(colour1,w1,colour2,w2[,colourN,wN])

r-g-b-a weighted average return in the form.
(w1*colur1+w2*colour2+wN*colourN)/(w1+w2+wN)

$addcolour(colour1,colour2[,colourN])

r-g-b-a to add the color of the form.
colour1 + colour2 + colourN

$subcolour(colour1,colour2 [,colorN])

r-g-b-a to subtract the color of the form.
colour1 - colour2 - colourN

$findfile(path,[path2,path3 ,...])

path(wildcards accepted) to be specified if the file exists,and returns the first found file path.
Without file returns false.

Function button

$textbutton(x,y,w,h,text,mover_text,command,options1,options2)

Make a button.
Per Track only. Per Second is not described.

text - label of the button
mover_text - button label when Mausuhoba

command - «Article Instruction:arguments» specified in the format of

? can not put extra space
; Accepted, separated by several orders given.

:?: Any other comments
(1):and; splitter, so that character is,the argument that these characters,
Likely not parse well.
(2) that the instruction does not specify a time-consuming process.
(3) If more than one instruction is given,the instruction execution order is not guaranteed.

[Instructions for Article Instruction:arguments]

commandpath command specified by the menu.

  COMMAND:View/Equalizer and
  COMMAND:File/Preferences;
  COMMAND:Playback/Play

Specify and so on.
TF command_path also be evaluated as a note

  COMMAND:'View / Equalizer' 

and recommends you leave.

contextpath to perform the specified Context.
Be processed in the context menu, %ps_tfmode% follow.
%ps_tfmode% to zero,to the track. For one, ActivePlaylist full selection.

  CONTEXT:Properties

to specify the like.
TF contextpath also be evaluated as a note

Per Track titleformat to change the mode.

TF,PerTrack,PerSecond to update.

Set the global variable name to val.
The name and val »:« be careful not to be included.

Set the tag name to val.
the case of the 0 %ps_tfmode% track, %ps_tfmode% ActivePlaylist the case of one is a full selection of tracks to be processed.
The name and val »:« be careful not to be included.

If the tag name in the content of the numeric,delta_value to change the value added.
If the name tag did not exist,min_value set.
Track be processed, %ps_tfmode% to zero,to the track. For one, ActivePlaylist full selection.

options1
specify default decoration(can specify more than one,separated by spaces)

options2:
mouse over the specified decoration(can specify more than one,separated by spaces)

Example

  $textbutton(0,0,80,20,play,play,COMMAND:Playback/Play,fontcolor:64-64-64 brushcolor:192-192-192-128 pencolor:0-0-0,fontcolor:32-32-32-32)
  $textbutton(100,0,80,20,Resize,Resize,PANELSHOW:aaa:-1;REFRESH,fontcolor:64-64-64 left bottom,fontcolor:32-32-32)

$imagebutton(x,y,w,h,path,mover_path,command,options1,options2)

Create a picture button.
Per Track only. Per Second is not described.
Internal processing of the images as $imageabs equal treatment and is cached in memory.
w,h is omitted,path will be specified in the original size of the image.
textbutton command is common.

options1 - Image display options

options2 - image display options when Mausuhoba

GDI drawing functions system

Using GDI to draw. A simple minute,may be processed faster.

$drawtext(text,x,y,W,H,r-g-b,OPTIONS)

GDI text drawing functions
text coordinates (x,y) output

OPTIONS

$drawtextex(text,x,y,W,H,r-g-b,OPTIONS)

Two string GDI drawing functions
text coordinates (x,y) output

OPTIONS

Example:

   $drawtextex(text,0,0,%_width%,%_height%,0-0-0,hcenter vcenter end_ellipsis)

$gettextwidth(text,[FONTNAME,SIZE,OPTIONS])

GDI(drawtext,drawtextex) returns the width of the text when you draw a horizontal text.
specified acceptable font($font see options). Optional font specified

$gettextheight([FONTNAME,SIZE,OPTIONS])

GDI returns the width of the text when drawn with the vertical.
specified acceptable font($font see options). Optional font specified

$fillrect(x,y,w,h,colour,RESERVED)

Fill rectangle function

$fillroundrect(x,y,w,h,w2,h2,colour1,colour2)

Function fill rectangle with rounded corners

? Panel operation system function TF function and draw a lot together,so it is inefficient framework, In the future will be to??.

$showpanel(i,sh) or $showpanel_c(caption,sh)

Panel display,change the function hide

i - or something of the second child panel list (counting from 0)
sh - Status display

$movepanel(i,x,y,w,h)

$movepanel_c(caption,x,y,w,h)

Forced layout panel specified child,the coordinates(x,y) size(w,h) to move to.

i - or something of the second child panel list (counting from 0)

$getcaption(i)

I return a list of the child panel is set to caption second panel.

$isvisible_c(caption)

Returns the status display panel.