Übersetzte Version von foo_uie_panel_splitter.txt
foo_uie_panel_splitter.dll v0.3.8.3 (alpha ver)
for foobar2000 v0.9.5.2 +, Columns UI0.3 +, WindowsXP +

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


[Overview]
Splitter in order to place the panel Columns UI
And without borders, including a little set and overlaid panels can be flexible.


[Note]
Is low in the awfully mature. Became considerably since those far and what was originally planned,
Not be consistent for the preference. In addition, the complex configuration, you must have knowledge of TitleFormat.


[How]
-Copy the dll to the component folder foobar2000
From the Layout of $ ColumnsUI, add a Panel Stack Splitter.
Serves as a Splitter-ColumnsUI.
Right-click on the panel have been added! -> Can be set Splitter Settings.


[Settings]
Automatic placement of the panel deployment modes and may be forced mode.
Auto-layout mode, the horizontal (Horizontal) or placed in a vertical direction (Vertical) choose whether to place.
Placement mode is placed in the panel have been forced to on Forced layout.


Size: Size of the panel (if the horizontal size of the Horizontal, vertical size if Vertical)
Lock size: to place without scaling.
              When off is placed on appropriately scaled according to size Splitter size of each panel.
              May become blurred pixels to about ± 1 minute Lock Status.
              -> Because it is difficult to fix, may not be modified.

Forced layout: to put into force the panel to the range specified by the left Top width right below it.
              (Auto and size-scaling is no longer valid)

              If you stacked the panel that appears on the front panel of the top panel so the list
              (However, depending on the implementation of the child panel. Want to come out the front panel is also profusely.)
              Valid Title Formatting.
              Horizontal width of the Panel Stack Splitter in% _width%% _height%, you can see the vertical width.
              Example:
              left: $ div (% _width%, 4)
              top: $ div (% _height%, 4)
              width: $ div (% _width%, 2)
              height: $ div (% _height%, 2)

              There is also a mode specified is relative to the size of the Splitter.
              When it is on use parsentage value, the percentage of the size of the Splitter [0-100] to specify.
              configuration example when on the use parsentage value:
              left: 25
              top: 25
              width: 50
              height: 50


padding: put a space around the panel.
              Title Formatting can not put a fixed number is invalid.
              If you put the panel automatically, will be able to resize with the mouse as if the border is set padding.
              can be on / off enable resizable border in

Caption: The name of the panel identifier
Use background color: the color specified, fill the background.
Use image: Specify a fixed background image. TitleFormatting disabled.
Pseudo transparent: a transparent background of a pseudo-splitter. (For example, when using nested splitter)
Evaluate scripts when ...: when the information changes the track, TF (PerSecond and PerTrack) is evaluated.

  [Note]
  Some of the panels but there is ColumnsUI panel with background transparency feature,
  often not transparent and the background of the panel does not use or use image use background color.


Titleformat mode on startup: the startup mode of TitleFormat of PerTrack.
      now playing - playing track targets of TF
      follow cursor - selected track in the playlist
      last mode - mode last time (you save by switching mode button)
 


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



[Extended Commands -
Uppercase argument is optional.
Note: You can enter a waste of space. (Line breaks are allowed)

Title formatting script is evaluated in the
Per Track - when it is resized. When the state changed the track and playing play-pause. Function when the REFRESH button.
Per Second - per second. When the playback state changes. Function when the REFRESH button.


[Field]
% Ps_width%
Returns the width of the Splitter.


% Ps_height%
Returns the height of the Splitter.


% Ps_tfmode%
Returns the mode of the TF. (Enabled by Per Track)
0 nowplaying Mode
1 follow cursor mode.

% Ps_isplaying%
Whether playing.

% Ps_ispause%
Paused or not.


% Ps_foobar2000_path%
Executable Path foobar2000.


% Ps_user_profile_path%
The user profile path.


% Ps_playback_order%
Returns the playback order.
However, at present, are not reflected immediately if you change the playback order. (REFRESH command is required)

% Ps_track_state%
To evaluate the condition of the track TF.
0: no error
1: no track
2: dummy track (for mainly legacy metadb_display_hook API)

[Function]

$ Init_ps_global (name, value)
$ Init_ps_global (name, value, persistency)
Create a global variable specified by name and sets the value value.
Is valid only if there is no global variable with the given name.

? Notices
Global variables will be shared among all PanelStackSplitter order of evaluation of each of TF PanelStackSplitter is undefined.
Variables set at $ persistency = 1, either use the $ delete_ps_gobal, will be saved until you clear the settings dialog.
$ $ Init_ps_global (name, value) is, $ if ($ get_ps_global (name),, $ set_ps_global (name, value)) almost equal.


name - the global variable
value - the value
persistency - whether to save at the end.
0: not saved on exit.
1 stored at the end. (Default)




$ Set_ps_global (name, value)
Set the global variable name to value specified.
If there is no global variable name is automatically created and set the value.


$ Get_ps_global (name) or% name%
Returns the value of the specified global variable name.
If there is no corresponding global variable name, and returns false.


$ Delete_ps_global (name)
Remove the global variable name.


$ Font (name, size, OPTIONS)
The font settings.
name - the font
size - font size
OPTIONS - style. Combination of the following.
bold italic underline strikeout


Cases: $ font (Tahoma, 10, bold italic)



$ Drawstring (text, x, y, w, h, color, OPTIONS [, OPTIONS2])
Draw a string function. coordinate the text (x, y) to draw on.

? Notices
• You can only view text and drawtextex drawtext and function.
! May only use TrueType fonts.
text - String to draw.
x - horizontal coordinate
y - vertical coordinate
w - the width of the drawing area
h - The height of the drawing area
color - r color-g-b-be in the form a.
OPTIONS - Specify alignment, given the rendering quality, and specifying a clip.
left hcenter right - Specifies the horizontal alignment

top vcenter bottom - Specifies the vertical alignment

nowrap - do not wrap around

 noaa - antialiasing can also disable ClearType.
aa - put anti-aliasing mode. Takes a font anti-aliasing is not effective in ClearType.
hq - to draw the highest quality mode. ClearType mode. (Now in default)
glow_aa - option to use a special mode of glow. (Noaa, aa, exclusive hq)

trimchar trimword - for trimming to fit in the display area.
elipchar elipword - ... the last set to replace not fit the view.

mempos - In getlastpos, to be able to get the coordinates of the drawing.


OPTIONS2 - specifying the terms of the effect glow. (Optional experimental, experimental option)

glow - glow options
The format glow: expand: colour [: strength]
expand - [0-5]
colour - r-g-b
strength - [0-3] is valid if glow_aa

offset - the offset specified glow effect
The format offset: x: y
x - horizontal offset of the glow
y - vertical offset of the glow

? Notices
Glow_aa given only in OPTIONS, semibold the outline is available.

outline - Specifies the border color of the character
The format outline: colour
colour - r color border-g-b

semibold - letter to a little thick.


? Notices
• These specifications may be changed.
How to draw the glow changes, especially with the possibility of the abolition of semibold and outline.
-Glow treatment is expensive. (Especially when the pseudo transparent.)

$ Drawstring cases (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 - r-g-b-type internal color a
colour2 - r color of a border-g-b-type

OPTIONS - Style
aa - put anti-aliasing


$ Drawrect cases (0,50,50,50,255-128-64-128,, aa)


$ Gradientrect (x, y, w, h, colour1, colour2, OPTIONS, peakpoint)
Draw a rectangle filled with a gradient in the function.
Coordinates (x, y) size (w, h) to draw a rectangle.

colour1 - start color gradient
colour2 - end color gradient

OPTIONS
vertical gradient vertical.
horizontal gradient horizontal.
aa put anti-aliasing.
nonlinear non-linear gradient.

peakpoint: 0-100
End of the gradient to shift position.
The default value is 0, colour1 -> transition to colour2.
At 50, colour1 -> colour2 -> a transition colour1.

Cases: $ 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 the rectangle drawing functions blur the outline.
level - the degree of 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)
Controls within the rectangle with the VisualStyle (progress bars, and buttons) function to draw.
Because only practical to draw a picture may be low.

? Notices
You can draw a control that is not defined in the $ VisualStyle not.
At least more than WindowXP required.

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: ID of components you want to draw on the specified control. To specify a number.
Likely range of numbers that can be used as a guide the following for each control.
Depending on the OS so that part is added, only a guideline.
Parts that are not defined in the VisualStyle can not draw.

window: [1 .. 37]
button rebar listview tooltip: [1 .. 5]
toolbar: [1 .. 6]
status treeview taskband: [1 .. 3]
header spin: [1 .. 4]
progress: [1 .. 4]
tab trackbar scrollbar: [1 .. 10]
edit: [1 .. 2]
combobox: [1]
taskbar: [1 .. 8]
startpanel: [1 .. 11]
explorerbar: [1 .. 12]

stateId: state of the component (eg, selected state) ID shown. For stateless components to be zero.
If not drawn by specifying 0 or 1 as stateId, that part has not been defined.

Cases: $ drawthemerect (0,0,% el_width%,% el_height%, tab, 10,0) drawing the body of the / / tab
$ Drawthemerect (,,,, progress, 3,0) draws a bar / / progress bar


$ Drawroundrect (x, y, w, h, w2, h2, colour1, colour2, RESERVED)
Rounded rectangle drawing functions.
Coordinates (x, y) size (w, h) to draw a rectangle with rounded corners.

? Notices
w> 4 * w2 & & h> need to meet the 4 * h2.

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

$ Drawroundrect example (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) Draw a triangle with vertices function.

OPTIONS
aa - put anti-aliasing

Cases: $ 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) to display an image that is specified in the path.
True if the image exists, false if not.

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

? Notices
Hold in memory the image after resizing, raise the performance levels are referenced below.
Images were being referenced is deleted from the memory of them.
w, to view original image size is omitted or h, to be cached.
(However, w, when I was already cached in memory even if you omit the h,
The image size will have to cash it is)

Reduction ratio to be treated to more than one
Poor quality and will be expanded after the collapse.
and using such noexpansion nodisplay,
Cache memory is good for the first time in the largest reduction in the percentage rate reduction to be used.

path - absolute path of the image (path of AudioFile embedded image or)

OPTIONS
<appearance>
nokeepaspect - without maintaining the aspect ratio (nodisplay, archive, non-exclusive option and icon).
nodisplay - hide just load into memory.
noexpansion - shrink but not expand.

<align> - Exclusive respectively.
left right - Specifies the horizontal alignment.
top bottom - Specifies the vertical alignment.

<misc>
wc - to enable the wildcard (*,?).

<read mode> - Exclusive respectively.
archive - View images of the path through the archive reader.
The path will depend on the format of the archive reader, the absolute path of the archive | the base file path in the room.
Cases: C: \ aaa \ image.zip | bbb / ccc.jpg
icon - icon file specified by path (*. ico) to view.

artreader - foobar2000's loaded with images of the core artwork reader embedded Audio file specified by path.
Without the embedded images, the Audio Files folder to load images. Slow, however.
artreader_front - foobar2000 loaded with artwork reader of the core of an embedded image of the Audio file specified by path.
artreader_back - foobar2000 loaded with artwork reader of the core of an embedded image of the Audio file specified by path.
artreader_disc - foobar2000 loaded with artwork reader of the core of an embedded image of the Audio file specified by path.
artreader_icon - foobar2000 loaded with artwork reader of the core of an embedded image of the Audio file specified by path.
artreader_artist - foobar2000 loaded with artwork reader of the core of an embedded image of the Audio file specified by path.
(Artreader *** are currently disrecommended options because these option seem to be slow)

n - index for rotateflip
One ninety
2: 180
3: 270
4: Mirror Image
5: 90 + Mirror Image
6: Upside down
7: 90 + upside down

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


OPTIONS2 - shadow effect (see the glow effect $ drawstring)
glow: expand: colour
offset: x: y


    $ Imageabs cases (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.
image size specified by the path (rw, rh) and then resize,
The subregion (srcx, srcy, srcw, srch) coordinates (x, y) size (srcw, srch) to display.

In memory (rw, rh) with a cache.
When you evaluate the TF (rw, rh) with changes to reload the image.
Therefore, rw, rh is to be given a fixed value.

True if the image exists, false if not.

See OPTIONS imageabs
    
For 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) to display an image that is specified in the path.
$ Imageabs do the caching behavior.

? Notices
To view the original size is omitted and h w.
To reload the image every time it is evaluated TF.

Not recommended for efficient processing ?.

OPTIONS - See imageabs.


Drawing Supplement ?

$ Getlastpos (elem)
Imageabs image display function, just after the imageabs_rc, to get the coordinates to draw a real picture.
Moreover, even when used to obtain the results of the measurestring.
The drawstring can be obtained immediately at the specified coordinates mempos.

   elem - element to specify that you want to retrieve.
x: left
y: top
w: width
h: height
r: right
b: bottom

For 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)
To calculate the viewing area when you draw the string in $ drawstring.
As a result, returns to the horizontal width of display area.
The result of the viewing area to get in $ getlastpos.

? Notices
with drawstring, when multiplied by the glow effect by specifying glow_aa,
The display range is the result of measurestring may not match.

OPTIONS - See $ drawstring


$ Getimagewidth (path), $ getimageheight (path)
in the cache memory is loaded with $ imageabs $ imageabs_rc image specified by path
If the image is already resized the horizontal width returns the width in the vertical.

? Notices
Can only be used after the $ imageabs $ imageabs_rc.


$ Setparcentmode (bx, by, bw, bh)
To set the mode specified coordinates.
Window display area
 (0,0) ~ (% _width%,% _height%) to where it is,
Percentage values ??specified in mode (0,0) - (100,100) to map to.
x, y, w, can be configured individually h.

? Notices
x, y, w, to affect all functions with one argument-h.

bx - x coordinate of the specified mode
0: Specify absolute coordinates of the Splitter
1: The relative size of the Splitter (Percentages) as specified in.
by - y coordinate Modes
bw - w coordinate Modes
bh - h coordinate Modes


$ Getsyscolour (index)
R the system returns in the form of color-g-b.

index: [0-30] color index of the system


$ Averagecolour (colour1, colour2 [, ...])
r-g-b-average color of the form a.
(Colour1 + colour2 + ...) / N


$ Blendcolour (colour1, w1, colour2, w2, [, ...])
r-g-b-weighted average returns in the form of a.
(W1 * colur1 + w2 * colour2 + ... + wN * colourN) / (w1 + w2 + ... + wN)


$ Addcolour (colour1, colour2 [, ...])
r-g-b-color format that adds a.
colour1 + colour2 + ... + colourN


$ Subcolour (colour1, colour2 [, ...])
r-g-b-style colors to subtract a.
colour1 - colour2 - colour3 ... - colourN


$ Findfile (path, [path2, path3 ,...])
path (a wildcard), if there are files that are specified in the return path of the first file found.
Returns false if there is no file.


? Function Buttons

$ Textbutton (x, y, w, h, text, mover_text, command, options1, options2)
Make a button.
Valid only Per Track. Do not write to Per Second.

text - label for the button
mover_text - label for the button when the mouse hovers

command - "Instruction type: argument" of the form

? not put extra space
; Be specified, separated by the instruction.

? Notices
(1) and; Because the character is the splitter, these arguments contain characters,
Not likely to parse successfully.
(2) 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]
COMMAND: commandpath
To execute a menu command that is specified in the commandpath.
COMMAND: or View / Equalizer,
COMMAND: File / Preferences; COMMAND: Playback / Play
Specifying and so on.
Note also being evaluated as TF command_path
COMMAND: recommended to keep as a 'View / Equalizer'.

CONTEXT: contextpath
              context menu to run the command specified by contextpath.
Processed in the context menu, follow the% ps_tfmode%.
 A 0% ps_tfmode%, playback track. If 1, the track selection ActivePlaylist.
CONTEXT: Specify like Properties.
Note also being evaluated as TF contextpath


PANELSHOW: cap: sh
hide / show the child panel cap is a caption.
sh - Specifies the display state
0 - Inactive
1 - Display
-1 - Toggle show / hide

TFMODE: mode
To change the mode of titleformat Per Track.
mode - mode
0 - nowplaying Mode
1 - follow curosr Mode
-1 - Toggle

REFRESH
PerTrack of TF, to update the PerSecond.


SETGLOBAL: name: val
Val to set a global variable name.
and val to name ":" Be careful not contain.

SETTAG: name: val
Set val to the tag name.
A 0% ps_tfmode% is playing the track, is 1% ps_tfmode% is the choice of tracks to be processed track ActivePlaylist.
and val to name ":" Be careful not contain.

SETDELTATAG: name: delta_value: min_value: max_value
If the contents of the tag numbers to name, changed to the sum of delta_value.
If the name tag did not exist, set the min_value.
Tracks for processing, is 0% ps_tfmode%, playback track. If 1, the track selection ActivePlaylist.


options1 adornment of default (can be specified, separated by spaces)
fontcolor: r-g-b - text color
brushcolor: rgba - the fill color of the rectangle button
pencolor: r-g-b-a - button border color
left top bottom right - location of text

options2: hover adornment of (can be specified, separated by spaces)
fontcolor: r-g-b - text color
brushcolor: rgba - the fill color of the rectangle button
pencolor: r-g-b-a - button border color
left top bottom right - location of text


   $ Textbutton cases (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)
$ 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 an image button.
Valid only Per Track. Do not write to Per Second.
As the internal processing of the image are equally treated and $ imageabs, are cached in memory.
w, and is omitted h, the original image size will be specified by path.
and common command is textbutton.

options1 - Image display options
nokeepaspect
left top bottom right

options2 - image when mouse hover display options
nokeepaspect
left top bottom right


? GDI drawing functions based
Drawing with the GDI. A simple minute may be processed faster.

$ Drawtext (text, x, y, W, H, r-g-b, OPTIONS)
GDI text drawing functions
coordinate the text (x, y) in output

OPTIONS
Specifies the horizontal alignment left hcenter right
Specifies the vertical alignment top vcenter bottom
Not noclip clip


$ Drawtextex (text, x, y, W, H, r-g-b, OPTIONS)
String 2 GDI drawing functions
coordinate the text (x, y) in output

OPTIONS
Specifies the horizontal alignment left hcenter right
Specifies the vertical alignment top vcenter bottom
Not noclip clip
wrap wraparound given permission (vcenter, bottom and is exclusive)
If the clip is text end_ellipsis, the end of the text to replace.

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


$ Gettextwidth (text, [FONTNAME, SIZE, OPTIONS])
GDI (drawtext, drawtextex) Returns the horizontal width of the text when the text in the drawing.
Allow specification of font (see optional $ font). Optional font is specified


$ Gettextheight ([FONTNAME, SIZE, OPTIONS])
Returns the vertical width of the text when drawn with GDI.
Allow specification of font (see optional $ font). Optional font is specified


$ Fillrect (x, y, w, h, colour, RESERVED)
Fill the rectangle function


$ Fillroundrect (x, y, w, h, w2, h2, colour1, colour2)
Fills a rounded rectangle function


? Panel operation system function
So inefficient that draws together the framework of the TF function very much,
In the future, will be ??.

$ Showpanel (i, sh) or $ showpanel_c (caption, sh)
Show panel Hide changed function

i - th or something of the child panel list (counting from 0)
sh - Show state
0 - Inactive
1 - Display

$ Movepanel (i, x, y, w, h) or $ movepanel_c (caption, x, y, w, h)
Given to the child panel Forced layout, the coordinates (x, y) size (w, h) to move.

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


$ Getcaption (i)
Returns the caption panel is set to the i-th child in the panel list.


$ Isvisible_c (caption)
Return the status panel display.



Disclaimer, etc. ?
Impairment loss with respect to any such infringement defect caused by the use of this software, the software author does not assume any responsibility.
Even if there is a bug, fix obligation.
Note that this only person who matters, please use at your own risk.


The SOFTWARE has included some software that is distributed with the following conditions.
foobar2000 0.9.5 SDK
  Copyright (c) 2001-2008, Peter Pawlowski
  All rights reserved.

  Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  Neither the name of the author nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
  Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation or other materials provided with the distribution.

  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Columns UI SDK 6.3.1


About LICENSE
  Copyright (c) 2008, ssenna

  Redistributions in binary form, materials and other documentation supplied in the distribution, the above copyright notice, this list of conditions and the following disclaimer be included.
  Without specific prior written permission, to endorse or promote products derived from this software using the name of the copyright owner or contributors shall not.

  This software is protected by the copyright holder and contributors "as is" and shall be provided, including warranties of suitability for a particular purpose, such as the availability or commercial, whether explicit and implicit, if any. not guaranteed.
  Copyright owners and contributors, for any reason, irrespective of the cause of the claim, or whether a contract basis for strict liability and responsibility (other negligence) whether the tort Regardless, as has been advised of the possibility of such damages occur temporarily,
  Direct damages resulting from the use of this software, indirect, incidental damages, special damages, punitive damages, or consequential damages (procurement of substitute goods and services, and opportunities to use data or loss of profits, business interruption including, all damages) shall not be liable for.


=======================-