foreach
(PHP 4, PHP 5, PHP 7)
foreach 语法结构提供了遍历数组的简单方式。foreach 仅能够应用于数组和对象，如果
尝试应用于其他数据类型的变量，或者未初始化的变量将发出错误信息。有两种语法：
foreach (array_expression as $value)
statement
foreach (array_expression as $key => $value)
statement
第一种格式遍历给定的 array_expression 数组。每次循环中，当前单元的值被赋给
$value 并且数组内部的指针向前移一步（因此下一次循环中将会得到下一个单元）。
第二种格式做同样的事，只除了当前单元的键名也会在每次循环中被赋给变量 $key。
还能够自定义遍历对象。
Note:
当 foreach 开始执行时，数组内部的指针会自动指向第一个单元。这意味着不需要在
foreach 循环之前调用 reset()。
由于 foreach 依赖内部数组指针，在循环中修改其值将可能导致意外的行为。
可以很容易地通过在 $value 之前加上 & 来修改数组的元素。此方法将以引用赋值而不是
拷贝一个值。
$value 的引用仅在被遍历的数组可以被引用时才可用（例如是个变量）。以下代码则无法
运行：
Warning
数组最后一个元素的 $value 引用在 foreach 循环之后仍会保留。建议使用 unset() 来
将其销毁。
Note:
foreach 不支持用“@”来抑制错误信息的能力。
用户可能注意到了以下的代码功能完全相同：
\n";
}
foreach ($arr as $value) {
echo "Value: $value
\n";
}
?>
以下代码功能也完全相同：
\n";
}
foreach ($arr as $key => $value) {
echo "Key: $key; Value: $value
\n";
}
?>
示范用法的更多例子：
$v.\n";
$i++;
}
/* foreach example 3: key and value */
$a = array(
"one" => 1,
"two" => 2,
"three" => 3,
"seventeen" => 17
);
foreach ($a as $k => $v) {
echo "\$a[$k] => $v.\n";
}
/* foreach example 4: multi-dimensional arrays */
$a = array();
$a[0][0] = "a";
$a[0][1] = "b";
$a[1][0] = "y";
$a[1][1] = "z";
foreach ($a as $v1) {
foreach ($v1 as $v2) {
echo "$v2\n";
}
}
/* foreach example 5: dynamic arrays */
foreach (array(1, 2, 3, 4, 5) as $v) {
echo "$v\n";
}
?>
用 list() 给嵌套的数组解包
(PHP 5 >= 5.5.0, PHP 7)
PHP 5.5 增添了遍历一个数组的数组的功能并且把嵌套的数组解包到循环变量中，只需将
list() 作为值提供。
例如：
以上例程会输出：
A: 1; B: 2
A: 3; B: 4
list() 中的单元可以少于嵌套数组的，此时多出来的数组单元将被忽略：
以上例程会输出：
1
3
如果 list() 中列出的单元多于嵌套数组则会发出一条消息级别的错误信息：
以上例程会输出：
Notice: Undefined offset: 2 in example.php on line 7
A: 1; B: 2; C:
Notice: Undefined offset: 2 in example.php on line 7
A: 3; B: 4; C:
User Contributed Notes 24 notes
===============================================================================
You can also use the alternative syntax for the foreach cycle:
Just thought it worth mentioning.
===============================================================================
"Reference of a $value and the last array element remain even after the foreach
loop. It is recommended to destroy it by unset()."
I cannot stress this point of the documentation enough! Here is a simple
example of exactly why this must be done:
1, "b" => 2, "c" => 3);
$arr2 = array("x" => 4, "y" => 5, "z" => 6);
foreach ($arr1 as $key => &$val) {}
foreach ($arr2 as $key => $val) {}
var_dump($arr1);
var_dump($arr2);
?>
The output is:
array(3) { ["a"]=> int(1) ["b"]=> int(2) ["c"]=> &int(6) }
array(3) { ["x"]=> int(4) ["y"]=> int(5) ["z"]=> int(6) }
Notice how the last index in $arr1 is now the value from the last index in
$arr2!
===============================================================================
foreach and the while/list/each methods are not completely identical, and there
are occasions where one way is beneficial over the other.
$value)
{
unset($arr[$key + 1]);
echo $value . PHP_EOL;
}
?>
Output:
1 2 3 4 5 6 7 8 9
Output:
1 3 5 7 9
[EDIT BY danbrown AT php DOT net: Contains a typofix by (scissor AT phplabs DOT
pl) on 30-JAN-2009.]
===============================================================================
What happened to this note:
"Unless the array is referenced, foreach operates on a copy of the specified
array and not the array itself. foreach has some side effects on the array
pointer. Don't rely on the array pointer during or after the foreach without
resetting it."
Is this no longer the case?
It seems only to remain in the Serbian documentation: http://php.net/manual/sr/
control-structures.foreach.php
===============================================================================
If you want to use the list for multidimension arrays, you can nest several
lists:
";
};
?>
Will output:
A: 1; B: 2; C: 3; D: 4;
A: 3; B: 4; C: 5; D: 6;
And:
";
};
Will output:
A: 1; B: 2; C: 3; D: 4; E: 5;
A: 3; B: 4; C: 5; D: 6; E: 7;
?>
===============================================================================
For those who'd like to traverse an array including just added elements (within
this very foreach), here's a workaround:
'a', 2 => 'b', 3 => 'c');
while (list($key, $value) = each($values)) {
echo "$key => $value \r\n";
if ($key == 3) {
$values[4] = 'd';
}
if ($key == 4) {
$values[5] = 'e';
}
}
?>
the code above will output:
1 => a
2 => b
3 => c
4 => d
5 => e
===============================================================================
String keys of associative arrays, for which is_numeric() is true and which can
be type-juggled to an int will be cast to an int! If the key is on the other
hand a string that can be type-juggled into a float, it will stay a string.
(Observed on PHP 7.0.0RC8)
$value) {
var_dump($key);
}
?>
The output will be
int(0)
int(1)
string(3) "two"
string(3) "3.5"
===============================================================================
Just a simple strange behavior I have ran into:
If you accidentally put a semicolon after the foreach statement, you get no
errors, but the loop will only run on the last element of the array:
Correctly:
It took me a while to find that semicolon.
===============================================================================
foreach by reference internally deleted and created a new reference in each
iteration, so it is not possible to directly use this value as a variable
parameter values, look at the following example where the problem is observed
and a possible solution:
a)
{
$this->a = true;
$this->r = &$v;
}
var_dump($this->r);
}
public function reset()
{
$this->a = false;
}
}
$t = new test();
$a = array(array(1,2),array(3,4),array(5,6));
foreach($a as &$p)
$t->show($p);
/* Output obtain:
array (size=2)
0 => int 1
1 => int 2
array (size=2)
0 => int 1
1 => int 2
array (size=2)
0 => int 1
1 => int 2
*/
$t->reset();
foreach($a as $p)
{
$b = &$p;
$t->show($b);
}
/* Output obtain:
array (size=2)
0 => int 1
1 => int 2
array (size=2)
0 => int 3
1 => int 4
array (size=2)
0 => int 5
1 => int 6
*/
===============================================================================
References created by foreach hang around past their best-used-by date. For
example, the following:
&$n)
$n = strtoupper($n);
foreach ($a as $k=>$n) // notice NO reference here!
echo "$n\n";
print_r($a);
?>
will result in:
ABE
BEN
BEN
Array
(
[0] => ABE
[1] => BEN
[2] => BEN
)
===============================================================================
modifying array while foreach'ing it(yeah, such slime code;-)
if elements were added on last iteration or into array with 1 element, then
added elements wont be iterated as foreach checks for pointer before iteration
cycle
so it just quit and added elements wont be treated
===============================================================================
array('b'=>'c'));
foreach($d3['a'] as &$v4){}
foreach($d3 as $v4){}
var_dump($d3);
?>
will get something look like this:
array(1) {
["a"]=>
array(1) {
["b"]=>
&array(1) {
["b"]=>
*RECURSION*
}
}
}
then you try to walk some data with this array.
the script run out of memory and connect reset by peer
the document says:
Warning
Reference of a $value and the last array element remain even after the foreach
loop. It is recommended to destroy it by unset().
so what I learn is that NEVER ignore """Warning""" in document....
===============================================================================
This function find well the words, add well adds a () around short words, but
the
array at the end of th function is the same as at the beginning.
";
}
print "after foreach array mots";
print_r($mots);
die();
return $mots;
}
?>
inside foreach (le)
inside foreach petit
inside foreach chat
inside foreach (est)
inside foreach (fou)
after foreach array motsArray ( [0] => le [1] => petit [2] => chat [3] => est
[4] => fou )
===============================================================================
I want to add some inline comments to dtowell's piece of code about the
iteration by reference:
&$n)
$n = strtoupper($n);
# At the end of this cycle the variable $n refers to the same memory as $a[2]
# So when the second "foreach" assigns a value to $n :
foreach ($a as $k=>$n) // notice NO reference here!
echo "$n\n";
# it is also modifying $a[2] .
# So on the three repetitions of the second "foreach" the array will look like:
# 1. ('abe','ben','abe') - assigned the value of the first element to the last
element
# 2. ('abe','ben','ben') - assigned the value of the second element to the last
element
# 3. ('abe','ben','ben') - assigned the value of the third element to itself
print_r($a);
?>
===============================================================================
Note: Empty arrays are handled just fine by foreach, but for fail-safe code,
you should always check that what is passed in fact is an array, like this:
[1, 2, 3]];
foreach ($array as &$numbers) {
$numbers = [4, 5, 6];
}
var_dump($array);
modify_array($array);
var_dump($array);
function modify_array($array_arg)
{
$array_arg['numbers'] = [1, 2, 3];
}
Prints
array(1) {
["numbers"]=>
&array(3) {
[0]=>
int(4)
[1]=>
int(5)
[2]=>
int(6)
}
}
array(1) {
["numbers"]=>
&array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
}
?>
Notice that $array was not passed by reference to modify_array() however the
nested array was modified. It sounds logical but not sure if this is
documented!
===============================================================================
"In order to be able to directly modify array elements within the loop precede
$value with &. In that case the value will be assigned by reference. "
PLEASE CLARIFY! -Does this still hold true in php5.4+, where explicit passing
by reference is seemingly forbidden- or is this now illegal syntax?
===============================================================================
This is a decent, simple, and easy way to reference other values of an
associative array when using foreach. (effective "next", "prev", etc.)
The only care that needs to be taken is if the array is HUGE in size, so you
don't run into memory use problems. (and potential speed issues)
This example uses the 'primary' array, $aPublishSeq, which is ksort-ed to put
the array in order according to the associative keys. The array is then copied
using a foreach loop to make a duplicate array where the key and value order
correspond to the first array, but the keys are sequential numeric starting at
zero.
ksort ($aPublishSeq, SORT_STRING); // put them all in the right order
keeping array keys
foreach ($aPublishSeq as $aValue)
$aPublishIdx[] = $aValue; // duplicate array using corresponding
sequential numeric keys
Now, in the usage foreach loop, an index variable is used to keep in sync with
the associative array.
$PubIdx = -1; // start at -1 to start at 0 below
foreach ($aPublishSeq as $sKey => $sValue) {
++$PubIdx; // index into $aPublishIdx array of corresponding element
in $aPublishSeq array (for "next" element check, etc.)
echo $aPublishIdx[$PubIdx - 1] // previous array value
echo $aPublishIdx[$PubIdx] // current array value
echo $aPublishIdx[$PubIdx + 1] // next array value
....
It's simple, but it works, and without much muss or fuss.
===============================================================================
If you wondered how to create a list of all possible combinations of variable
amount of arrays (multiple foreach), you might use this:
the result:
a1b1c1
a1b1c2
a1b2c1
a1b2c2
a1b3c1
a1b3c2
a2b1c1
a2b1c2
a2b2c1
a2b2c2
a2b3c1
a2b3c2
===============================================================================
You can even iterate through "dynamic" arrays that do not physically exist, but
are objects that implement Iterator interface. They don't need to be stored in
memory when foreach starts.
Consider the array that contains some values (I called it $allValues in the
example below) and we want to have only some of them (eg. the ones that are
dividable by 2). I create an object that would serve as dynamic array, that
means it would "dynamically update" its values together with $allValues. The
main advantage is that I store only one array, and it's the only array I
serialize.
An object of MyIter class will not contain any values itself:
position = 0; // just move to the beginning
}
function current() { // retrieves the current element
$table=$this->getTable(); // let us prepare a table
return $table[$this->position]; // and return the current element
}
function key() { // retrieves the current element's key
return $this->position; // this is used by foreach(... as $key=>$value),
not important here
}
function next() { // move to next element
++$this->position;
}
function valid() { // check if the current element is valid (ie. if it
exists)
return array_key_exists($this->position, $this->getTable());
}
} // end of class
// now prepare the array of 12 elements
$allValues=array(0,1,2,3,4,5,6,7,8,9,10,11);
//we would like to have a dynamic array of all even values
$iterator=new MyIter();
foreach($iterator as $value){
echo $value."
";
}
?>
This will result in:
0
2
4
6
8
10
(You may also like to see what var_dump($iterator) produces).
Another great advantage is that you can modify the main table "on-the-fly" and
it has its impact. Let us modify the last foreach loop:
";
if($value==6){
$allValues=array(2,3);
echo "I modified source array!
";
}
}
?>
This produces now:
0
2
4
6
I modified source array!
However, if you feel it is rather a catastrophic disadvantage (maybe for
example, it shows the values 0, 4, and 6 which were removed when we reached 6),
and wish to have a "static" array that will iterate even in modified objects,
just call getTable() in rewind() method and save it in temporary (private
perhaps) field. In my example getTable() is called every iteration, and it
calls another foreach through $allValues, which together might be
time-consuming. Consider what you need.
===============================================================================
Note that prior to PHP 5.5 you will get a T_LIST parse error for:
===============================================================================
"As of PHP 5, you can easily modify array's elements by preceding $value with
&. This will assign reference instead of copying the value."
There are cases where array_walk or array_map are inadequate (conditional
required) or you're just too lazy to write a function and pass values to it for
use with array_map...
My solution to foreach for php 4 and 5 to modify values of an array directly:
1, "b" => 2, "c" => 3, "d" => 4);
$testarr_keys = array_keys($testarr);
$testarr_values = array_values($testarr);
for ($i = 0; $i <= count($testarr) - 1; $i++) {
$testarr[$testarr_keys[$i]] = $testarr_values[$i] * 2;
}
print_r($testarr);
?>
===============================================================================
@tedivm at tedivm dot com
With foreach you can specify the & for $value. In this case you modify the
original array. Otherwise you operate on a "copy" (not on the original array).
Consider the following example, that is identical with yours, except i use the
& for $value:
$arr = array(1,2,3,4,5,6,7,8,9);
foreach($arr as $key=>&$value)
{
unset($arr[$key + 1]);
echo "\n\n--------\nKey: $key\nValue: $value\n";
var_dump($arr);
echo "--------";
}
echo "\n\nARR at the end:\n";
var_dump($arr);
In foreach it prints the following values:
1, 3, 5, 7, 9
And you can see, that in the loop the corresponding elements are removed from
arr.
So at the end you'll have an array, that contains only 1, 3, 5, 7, 9.
===============================================================================
[Ed Note: You can also use array_keys() so that you don't have to have the
$value_copy variable --alindeman at php.net]
I use the following to modify the original values of the array:
$value_copy)
{
$value =& $array[$key];
// ...
$value = 'New Value';
}
?>


| GLN(1) | GLN(1) |
| -h | print help summary and exit. |
| -d <db_dir> | set location of the .gln index directory (default: ~). |
| -v | increase verbosity (can be used multiple times). |
| -n | only print matching filenames, not content. |
| -N | omit filenames from output. |
| -C <context_lines> | set lines of context for NEAR searchers (default: 4). |
| -e <errors> | allow up to <errors> errors when searching for matching tokens. Use this to search for a word, including misspellings. Requires nrgrep. The -e option's argument is passed verbatim to nrgrep. |
| -s | do not implicitly wrap search token regexes in "^(token)$". This searches for all tokens that contain the search tokens as substrings. |
| -t | print tokens matched by the search pattern and exit. |
| -g | do not execute the grep pipeline, just print it and exit. |
| -D | dump info about index database and exit. With -v option, also dump contents. |
| a AND b | Require both tokens to occur in the same line. |
| a OR b | Either 'a' or 'b' must occur in the file; show lines containing either. |
| a NOT b | Do not show results for files containing 'a' if they contain 'b' (on any line). |
| a NEAR b | Search files that have 'a' within <context_lines> lines of 'b'. (Not yet implemented.) |
$ gln foo
Search all indexed files for "foo".
$ gln -d. foo bar
Search files for "foo" and "bar" that have an index in the current directory.
$ gln -d ~/dev/project/ stopword OR index AND NOT btree
Search all files indexed in ~/dev/project/ for lines containing either "stopword" or "index" that do not contain "btree".
$ gln "erl.*"
Search all files for all tokens matching the regular expression "erl.*" (e.g. "erlang").
| June 10, 2011 |


Elixir v1.3.4 Bitwise
A set of macros that perform calculations on bits.
The macros in this module come in two flavors: named or operators. For example:
iex> use Bitwise
iex> bnot 1 # named
-2
iex> 1 &&& 1 # operator
1
If you prefer to use only operators or skip them, you can pass the following options:
:only_operators
- include only operators:skip_operators
- skip operators
For example:
iex> use Bitwise, only_operators: true
iex> 1 &&& 1
1
When invoked with no options, use Bitwise
is equivalent
to import Bitwise
.
All bitwise macros can be used in guards:
iex> use Bitwise
iex> odd? = fn int when band(int, 1) == 1 -> true; _ -> false end
iex> odd?.(1)
true
Summary
Macros
Infix operator; calculates the bitwise AND of its arguments
Infix operator; calculates the result of an arithmetic left bitshift
Infix operator; calculates the result of an arithmetic right bitshift
Infix operator; calculates the bitwise XOR of its arguments
Calculates the bitwise AND of its arguments
Calculates the bitwise NOT of its argument
Calculates the bitwise OR of its arguments
Calculates the result of an arithmetic left bitshift
Calculates the result of an arithmetic right bitshift
Calculates the bitwise XOR of its arguments
Infix operator; calculates the bitwise OR of its arguments
Prefix (unary) operator; calculates the bitwise NOT of its argument
Macros
Infix operator; calculates the result of an arithmetic left bitshift.
iex> 1 <<< 2
4
iex> 1 <<< -2
0
iex> -1 <<< 2
-4
iex> -1 <<< -2
-1
Infix operator; calculates the result of an arithmetic right bitshift.
iex> 1 >>> 2
0
iex> 1 >>> -2
4
iex> -1 >>> 2
-1
iex> -1 >>> -2
-4
Calculates the result of an arithmetic left bitshift.
iex> bsl(1, 2)
4
iex> bsl(1, -2)
0
iex> bsl(-1, 2)
-4
iex> bsl(-1, -2)
-1
Calculates the result of an arithmetic right bitshift.
iex> bsr(1, 2)
0
iex> bsr(1, -2)
4
iex> bsr(-1, 2)
-1
iex> bsr(-1, -2)
-4


The word color is used loosely here to describe the surface-level aspects of a design, including colors, backgrounds, borders, shadows and other properties that are decorative and highly likely to change over time. Basscss includes a suite of color utilities as a starting point. Use these as a guide for creating your own styles.
Basscss also includes other basic color styles for links, buttons, form elements, and tables. Customize or extend these styles to create your own theme.


A boolean argument specifies whether the geometry information
of the slaves will determine the size of this widget. If no argument
is given, the current setting will be returned.
- grid_rowconfigure(self, index, cnf={}, **kw)
- Configure row INDEX of a grid.
Valid resources are minsize (minimum size of the row),
weight (how much does additional space propagate to this row)
and pad (how much space to let additionally).
- grid_size(self)
- Return a tuple of the number of column and rows in the grid.
- grid_slaves(self, row=None, column=None)
- Return a list of all slaves of this widget
in its packing order.
- image_names(self)
- Return a list of all existing image names.
- image_types(self)
- Return a list of all available image types (e.g. phote bitmap).
- keys(self)
- Return a list of all resource names of this widget.
- lift = tkraise(self, aboveThis=None)
- Raise this widget in the stacking order.
- lower(self, belowThis=None)
- Lower this widget in the stacking order.
- mainloop(self, n=0)
- Call the mainloop of Tk.
- nametowidget(self, name)
- Return the Tkinter instance of a widget identified by
its Tcl name NAME.
- option_add(self, pattern, value, priority=None)
- Set a VALUE (second parameter) for an option
PATTERN (first parameter).
An optional third parameter gives the numeric priority
(defaults to 80).
- option_clear(self)
- Clear the option database.
It will be reloaded if option_add is called.
- option_get(self, name, className)
- Return the value for an option NAME for this widget
with CLASSNAME.
Values with higher priority override lower values.
- option_readfile(self, fileName, priority=None)
- Read file FILENAME into the option database.
An optional second parameter gives the numeric
priority.
- pack_propagate(self, flag=['_noarg_'])
- Set or get the status for propagation of geometry information.
A boolean argument specifies whether the geometry information
of the slaves will determine the size of this widget. If no argument
is given the current setting will be returned.
- pack_slaves(self)
- Return a list of all slaves of this widget
in its packing order.
- place_slaves(self)
- Return a list of all slaves of this widget
in its packing order.
- propagate = pack_propagate(self, flag=['_noarg_'])
- Set or get the status for propagation of geometry information.
A boolean argument specifies whether the geometry information
of the slaves will determine the size of this widget. If no argument
is given the current setting will be returned.
- quit(self)
- Quit the Tcl interpreter. All widgets will be destroyed.
- register = _register(self, func, subst=None, needcleanup=1)
- Return a newly created Tcl function. If this
function is called, the Python function FUNC will
be executed. An optional function SUBST can
be given which will be executed before FUNC.
- rowconfigure = grid_rowconfigure(self, index, cnf={}, **kw)
- Configure row INDEX of a grid.
Valid resources are minsize (minimum size of the row),
weight (how much does additional space propagate to this row)
and pad (how much space to let additionally).
- selection_clear(self, **kw)
- Clear the current X selection.
- selection_get(self, **kw)
- Return the contents of the current X selection.
A keyword parameter selection specifies the name of
the selection and defaults to PRIMARY. A keyword
parameter displayof specifies a widget on the display
to use.
- selection_handle(self, command, **kw)
- Specify a function COMMAND to call if the X
selection owned by this widget is queried by another
application.
This function must return the contents of the
selection. The function will be called with the
arguments OFFSET and LENGTH which allows the chunking
of very long selections. The following keyword
parameters can be provided:
selection - name of the selection (default PRIMARY),
type - type of the selection (e.g. STRING, FILE_NAME).
- selection_own(self, **kw)
- Become owner of X selection.
A keyword parameter selection specifies the name of
the selection (default PRIMARY).
- selection_own_get(self, **kw)
- Return owner of X selection.
The following keyword parameter can
be provided:
selection - name of the selection (default PRIMARY),
type - type of the selection (e.g. STRING, FILE_NAME).
- send(self, interp, cmd, *args)
- Send Tcl command CMD to different interpreter INTERP to be executed.
- setvar(self, name='PY_VAR', value='1')
- Set Tcl variable NAME to VALUE.
- size = grid_size(self)
- Return a tuple of the number of column and rows in the grid.
- slaves = pack_slaves(self)
- Return a list of all slaves of this widget
in its packing order.
- tk_bisque(self)
- Change the color scheme to light brown as used in Tk 3.6 and before.
- tk_focusFollowsMouse(self)
- The widget under mouse will get automatically focus. Can not
be disabled easily.
- tk_focusNext(self)
- Return the next widget in the focus order which follows
widget which has currently the focus.
The focus order first goes to the next child, then to
the children of the child recursively and then to the
next sibling which is higher in the stacking order. A
widget is omitted if it has the takefocus resource set
to 0.
- tk_focusPrev(self)
- Return previous widget in the focus order. See tk_focusNext for details.
- tk_menuBar(self, *args)
- Do not use. Needed in Tk 3.6 and earlier.
- tk_setPalette(self, *args, **kw)
- Set a new color scheme for all widget elements.
A single color as argument will cause that all colors of Tk
widget elements are derived from this.
Alternatively several keyword parameters and its associated
colors can be given. The following keywords are valid:
activeBackground, foreground, selectColor,
activeForeground, highlightBackground, selectBackground,
background, highlightColor, selectForeground,
disabledForeground, insertBackground, troughColor.
- tk_strictMotif(self, boolean=None)
- Set Tcl internal variable, whether the look and feel
should adhere to Motif.
A parameter of 1 means adhere to Motif (e.g. no color
change if mouse passes over slider).
Returns the set value.
- tkraise(self, aboveThis=None)
- Raise this widget in the stacking order.
- unbind(self, sequence, funcid=None)
- Unbind for this widget for event SEQUENCE the
function identified with FUNCID.
- unbind_all(self, sequence)
- Unbind for all widgets for event SEQUENCE all functions.
- unbind_class(self, className, sequence)
- Unbind for a all widgets with bindtag CLASSNAME for event SEQUENCE
all functions.
- update_idletasks(self)
- Enter event loop until all idle callbacks have been called. This
will update the display of windows but not process events caused by
the user.
- wait_variable(self, name='PY_VAR')
- Wait until the variable is modified.
A parameter of type IntVar, StringVar, DoubleVar or
BooleanVar must be given.
- wait_visibility(self, window=None)
- Wait until the visibility of a WIDGET changes
(e.g. it appears).
If no parameter is given self is used.
- wait_window(self, window=None)
- Wait until a WIDGET is destroyed.
If no parameter is given self is used.
- waitvar = wait_variable(self, name='PY_VAR')
- Wait until the variable is modified.
A parameter of type IntVar, StringVar, DoubleVar or
BooleanVar must be given.
- winfo_atom(self, name, displayof=0)
- Return integer which represents atom NAME.
- winfo_atomname(self, id, displayof=0)
- Return name of atom with identifier ID.
- winfo_cells(self)
- Return number of cells in the colormap for this widget.
- winfo_children(self)
- Return a list of all widgets which are children of this widget.
- winfo_class(self)
- Return window class name of this widget.
- winfo_colormapfull(self)
- Return true if at the last color request the colormap was full.
- winfo_containing(self, rootX, rootY, displayof=0)
- Return the widget which is at the root coordinates ROOTX, ROOTY.
- winfo_depth(self)
- Return the number of bits per pixel.
- winfo_exists(self)
- Return true if this widget exists.
- winfo_fpixels(self, number)
- Return the number of pixels for the given distance NUMBER
(e.g. "3c") as float.
- winfo_geometry(self)
- Return geometry string for this widget in the form "widthxheight+X+Y".
- winfo_height(self)
- Return height of this widget.
- winfo_id(self)
- Return identifier ID for this widget.
- winfo_interps(self, displayof=0)
- Return the name of all Tcl interpreters for this display.
- winfo_ismapped(self)
- Return true if this widget is mapped.
- winfo_manager(self)
- Return the window mananger name for this widget.
- winfo_name(self)
- Return the name of this widget.
- winfo_parent(self)
- Return the name of the parent of this widget.
- winfo_pathname(self, id, displayof=0)
- Return the pathname of the widget given by ID.
- winfo_pixels(self, number)
- Rounded integer value of winfo_fpixels.
- winfo_pointerx(self)
- Return the x coordinate of the pointer on the root window.
- winfo_pointerxy(self)
- Return a tuple of x and y coordinates of the pointer on the root window.
- winfo_pointery(self)
- Return the y coordinate of the pointer on the root window.
- winfo_reqheight(self)
- Return requested height of this widget.
- winfo_reqwidth(self)
- Return requested width of this widget.
- winfo_rgb(self, color)
- Return tuple of decimal values for red, green, blue for
COLOR in this widget.
- winfo_rootx(self)
- Return x coordinate of upper left corner of this widget on the
root window.
- winfo_rooty(self)
- Return y coordinate of upper left corner of this widget on the
root window.
- winfo_screen(self)
- Return the screen name of this widget.
- winfo_screencells(self)
- Return the number of the cells in the colormap of the screen
of this widget.
- winfo_screendepth(self)
- Return the number of bits per pixel of the root window of the
screen of this widget.
- winfo_screenheight(self)
- Return the number of pixels of the height of the screen of this widget
in pixel.
- winfo_screenmmheight(self)
- Return the number of pixels of the height of the screen of
this widget in mm.
- winfo_screenmmwidth(self)
- Return the number of pixels of the width of the screen of
this widget in mm.
- winfo_screenvisual(self)
- Return one of the strings directcolor, grayscale, pseudocolor,
staticcolor, staticgray, or truecolor for the default
colormodel of this screen.
- winfo_screenwidth(self)
- Return the number of pixels of the width of the screen of
this widget in pixel.
- winfo_server(self)
- Return information of the X-Server of the screen of this widget in
the form "XmajorRminor vendor vendorVersion".
- winfo_toplevel(self)
- Return the toplevel widget of this widget.
- winfo_viewable(self)
- Return true if the widget and all its higher ancestors are mapped.
- winfo_visual(self)
- Return one of the strings directcolor, grayscale, pseudocolor,
staticcolor, staticgray, or truecolor for the
colormodel of this widget.
- winfo_visualid(self)
- Return the X identifier for the visual for this widget.
- winfo_visualsavailable(self, includeids=0)
- Return a list of all visuals available for the screen
of this widget.
Each item in the list consists of a visual name (see winfo_visual), a
depth and if INCLUDEIDS=1 is given also the X identifier.
- winfo_vrootheight(self)
- Return the height of the virtual root window associated with this
widget in pixels. If there is no virtual root window return the
height of the screen.
- winfo_vrootwidth(self)
- Return the width of the virtual root window associated with this
widget in pixel. If there is no virtual root window return the
width of the screen.
- winfo_vrootx(self)
- Return the x offset of the virtual root relative to the root
window of the screen of this widget.
- winfo_vrooty(self)
- Return the y offset of the virtual root relative to the root
window of the screen of this widget.
- winfo_width(self)
- Return the width of this widget.
- winfo_x(self)
- Return the x coordinate of the upper left corner of this widget
in the parent.
- winfo_y(self)
- Return the y coordinate of the upper left corner of this widget
in the parent.
Data and non-method functions inherited from Tkinter.Misc:
- _noarg_ = ['_noarg_']
- _subst_format = ('%#', '%b', '%f', '%h', '%k', '%s', '%t', '%w', '%x', '%y', '%A', '%E', '%K', '%N', '%W', '%T', '%X', '%Y', '%D')
- _subst_format_str = '%# %b %f %h %k %s %t %w %x %y %A %E %K %N %W %T %X %Y %D'
- _tclCommands = None
- getdouble = <type 'float'>
- float(x) -> floating point number
Convert a string or number to a floating point number, if possible.
- getint = <type 'int'>
- int(x[, base]) -> integer
Convert a string or number to an integer, if possible. A floating point
argument will be truncated towards zero (this does not include a string
representation of a floating point number!) When converting a string, use
the optional base. It is an error to supply a base when converting a
non-string.
Methods inherited from Tkinter.Pack:
- forget = pack_forget(self)
- Unmap this widget and do not use it for the packing order.
- info = pack_info(self)
- Return information about the packing options
for this widget.
- pack = pack_configure(self, cnf={}, **kw)
- Pack a widget in the parent widget. Use as options:
after=widget - pack it after you have packed widget
anchor=NSEW (or subset) - position widget according to
given direction
before=widget - pack it before you will pack widget
expand=1 or 0 - expand widget if parent size grows
fill=NONE or X or Y or BOTH - fill widget if widget grows
in=master - use master to contain this widget
ipadx=amount - add internal padding in x direction
ipady=amount - add internal padding in y direction
padx=amount - add padding in x direction
pady=amount - add padding in y direction
side=TOP or BOTTOM or LEFT or RIGHT - where to add this widget.
- pack_configure(self, cnf={}, **kw)
- Pack a widget in the parent widget. Use as options:
after=widget - pack it after you have packed widget
anchor=NSEW (or subset) - position widget according to
given direction
before=widget - pack it before you will pack widget
expand=1 or 0 - expand widget if parent size grows
fill=NONE or X or Y or BOTH - fill widget if widget grows
in=master - use master to contain this widget
ipadx=amount - add internal padding in x direction
ipady=amount - add internal padding in y direction
padx=amount - add padding in x direction
pady=amount - add padding in y direction
side=TOP or BOTTOM or LEFT or RIGHT - where to add this widget.
- pack_forget(self)
- Unmap this widget and do not use it for the packing order.
- pack_info(self)
- Return information about the packing options
for this widget.
Methods inherited from Tkinter.Place:
- place = place_configure(self, cnf={}, **kw)
- Place a widget in the parent widget. Use as options:
in=master - master relative to which the widget is placed.
x=amount - locate anchor of this widget at position x of master
y=amount - locate anchor of this widget at position y of master
relx=amount - locate anchor of this widget between 0.0 and 1.0
relative to width of master (1.0 is right edge)
rely=amount - locate anchor of this widget between 0.0 and 1.0
relative to height of master (1.0 is bottom edge)
anchor=NSEW (or subset) - position anchor according to given direction
width=amount - width of this widget in pixel
height=amount - height of this widget in pixel
relwidth=amount - width of this widget between 0.0 and 1.0
relative to width of master (1.0 is the same width
as the master)
relheight=amount - height of this widget between 0.0 and 1.0
relative to height of master (1.0 is the same
height as the master)
bordermode="inside" or "outside" - whether to take border width of master widget
into account
- place_configure(self, cnf={}, **kw)
- Place a widget in the parent widget. Use as options:
in=master - master relative to which the widget is placed.
x=amount - locate anchor of this widget at position x of master
y=amount - locate anchor of this widget at position y of master
relx=amount - locate anchor of this widget between 0.0 and 1.0
relative to width of master (1.0 is right edge)
rely=amount - locate anchor of this widget between 0.0 and 1.0
relative to height of master (1.0 is bottom edge)
anchor=NSEW (or subset) - position anchor according to given direction
width=amount - width of this widget in pixel
height=amount - height of this widget in pixel
relwidth=amount - width of this widget between 0.0 and 1.0
relative to width of master (1.0 is the same width
as the master)
relheight=amount - height of this widget between 0.0 and 1.0
relative to height of master (1.0 is the same
height as the master)
bordermode="inside" or "outside" - whether to take border width of master widget
into account
- place_forget(self)
- Unmap this widget.
- place_info(self)
- Return information about the placing options
for this widget.
Methods inherited from Tkinter.Grid:
- grid = grid_configure(self, cnf={}, **kw)
- Position a widget in the parent widget in a grid. Use as options:
column=number - use cell identified with given column (starting with 0)
columnspan=number - this widget will span several columns
in=master - use master to contain this widget
ipadx=amount - add internal padding in x direction
ipady=amount - add internal padding in y direction
padx=amount - add padding in x direction
pady=amount - add padding in y direction
row=number - use cell identified with given row (starting with 0)
rowspan=number - this widget will span several rows
sticky=NSEW - if cell is larger on which sides will this
widget stick to the cell boundary
- grid_configure(self, cnf={}, **kw)
- Position a widget in the parent widget in a grid. Use as options:
column=number - use cell identified with given column (starting with 0)
columnspan=number - this widget will span several columns
in=master - use master to contain this widget
ipadx=amount - add internal padding in x direction
ipady=amount - add internal padding in y direction
padx=amount - add padding in x direction
pady=amount - add padding in y direction
row=number - use cell identified with given row (starting with 0)
rowspan=number - this widget will span several rows
sticky=NSEW - if cell is larger on which sides will this
widget stick to the cell boundary
- grid_forget(self)
- Unmap this widget.
- grid_info(self)
- Return information about the options
for positioning this widget in a grid.
- grid_remove(self)
- Unmap this widget but remember the grid options.
- location = grid_location(self, x, y)
- Return a tuple of column and row which identify the cell
at which the pixel at position X and Y inside the master
widget is located.
|
class tkFrame3D(tkFrame) |
| |
A Frame object with some additional functionality for 3D plots. |
| |
- Method resolution order:
- tkFrame3D
- tkFrame
- Tkinter.Frame
- Tkinter.Widget
- Tkinter.BaseWidget
- Tkinter.Misc
- Tkinter.Pack
- Tkinter.Place
- Tkinter.Grid
Methods defined here:
- __init__(self, master, canvas, width=500, height=500, bg='', **kw)
- get_init_values(self)
- reset_view(self, event=None)
- rot_down(self, event=None)
- rot_left(self, event=None)
- rot_right(self, event=None)
- rot_up(self, event=None)
- tilt_left(self, event=None)
- tilt_right(self, event=None)
- zoom_in(self, event=None)
- zoom_out(self, event=None)
Data and non-method functions defined here:
- __doc__ = 'A Frame object with some additional functionality for 3D plots.'
- __module__ = 'disipyl.tkdisipyl'
Methods inherited from tkFrame:
- __del__(self)
- draw_canvas(self)
- redraw(self, event=None)
- update(self)
Methods inherited from Tkinter.BaseWidget:
- _do(self, name, args=())
- _setup(self, master, cnf)
- Internal function. Sets up information about children.
- destroy(self)
- Destroy this and all descendants widgets.
Methods inherited from Tkinter.Misc:
- _Misc__winfo_getint = __winfo_getint(self, x)
- Internal function.
- _Misc__winfo_parseitem = __winfo_parseitem(self, t)
- Internal function.
- __getitem__ = cget(self, key)
- Return the resource value for a KEY given as string.
- __setitem__(self, key, value)
- __str__(self)
- Return the window path name of this widget.
- _bind(self, what, sequence, func, add, needcleanup=1)
- Internal function.
- _displayof(self, displayof)
- Internal function.
- _getboolean(self, string)
- Internal function.
- _getdoubles(self, string)
- Internal function.
- _getints(self, string)
- Internal function.
- _grid_configure(self, command, index, cnf, kw)
- Internal function.
- _nametowidget = nametowidget(self, name)
- Return the Tkinter instance of a widget identified by
its Tcl name NAME.
- _options(self, cnf, kw=None)
- Internal function.
- _register(self, func, subst=None, needcleanup=1)
- Return a newly created Tcl function. If this
function is called, the Python function FUNC will
be executed. An optional function SUBST can
be given which will be executed before FUNC.
- _report_exception(self)
- Internal function.
- _root(self)
- Internal function.
- _substitute(self, *args)
- Internal function.
- after(self, ms, func=None, *args)
- Call function once after given time.
MS specifies the time in milliseconds. FUNC gives the
function which shall be called. Additional parameters
are given as parameters to the function call. Return
identifier to cancel scheduling with after_cancel.
- after_cancel(self, id)
- Cancel scheduling of function identified with ID.
Identifier returned by after or after_idle must be
given as first parameter.
- after_idle(self, func, *args)
- Call FUNC once if the Tcl main loop has no event to
process.
Return an identifier to cancel the scheduling with
after_cancel.
- bbox = grid_bbox(self, column=None, row=None, col2=None, row2=None)
- Return a tuple of integer coordinates for the bounding
box of this widget controlled by the geometry manager grid.
If COLUMN, ROW is given the bounding box applies from
the cell with row and column 0 to the specified
cell. If COL2 and ROW2 are given the bounding box
starts at that cell.
The returned integers specify the offset of the upper left
corner in the master widget and the width and height.
- bell(self, displayof=0)
- Ring a display's bell.
- bind(self, sequence=None, func=None, add=None)
- Bind to this widget at event SEQUENCE a call to function FUNC.
SEQUENCE is a string of concatenated event
patterns. An event pattern is of the form
<MODIFIER-MODIFIER-TYPE-DETAIL> where MODIFIER is one
of Control, Mod2, M2, Shift, Mod3, M3, Lock, Mod4, M4,
Button1, B1, Mod5, M5 Button2, B2, Meta, M, Button3,
B3, Alt, Button4, B4, Double, Button5, B5 Triple,
Mod1, M1. TYPE is one of Activate, Enter, Map,
ButtonPress, Button, Expose, Motion, ButtonRelease
FocusIn, MouseWheel, Circulate, FocusOut, Property,
Colormap, Gravity Reparent, Configure, KeyPress, Key,
Unmap, Deactivate, KeyRelease Visibility, Destroy,
Leave and DETAIL is the button number for ButtonPress,
ButtonRelease and DETAIL is the Keysym for KeyPress and
KeyRelease. Examples are
<Control-Button-1> for pressing Control and mouse button 1 or
<Alt-A> for pressing A and the Alt key (KeyPress can be omitted).
An event pattern can also be a virtual event of the form
<<AString>> where AString can be arbitrary. This
event can be generated by event_generate.
If events are concatenated they must appear shortly
after each other.
FUNC will be called if the event sequence occurs with an
instance of Event as argument. If the return value of FUNC is
"break" no further bound function is invoked.
An additional boolean parameter ADD specifies whether FUNC will
be called additionally to the other bound function or whether
it will replace the previous function.
Bind will return an identifier to allow deletion of the bound function with
unbind without memory leak.
If FUNC or SEQUENCE is omitted the bound function or list
of bound events are returned.
- bind_all(self, sequence=None, func=None, add=None)
- Bind to all widgets at an event SEQUENCE a call to function FUNC.
An additional boolean parameter ADD specifies whether FUNC will
be called additionally to the other bound function or whether
it will replace the previous function. See bind for the return value.
- bind_class(self, className, sequence=None, func=None, add=None)
- Bind to widgets with bindtag CLASSNAME at event
SEQUENCE a call of function FUNC. An additional
boolean parameter ADD specifies whether FUNC will be
called additionally to the other bound function or
whether it will replace the previous function. See bind for
the return value.
- bindtags(self, tagList=None)
- Set or get the list of bindtags for this widget.
With no argument return the list of all bindtags associated with
this widget. With a list of strings as argument the bindtags are
set to this list. The bindtags determine in which order events are
processed (see bind).
- cget(self, key)
- Return the resource value for a KEY given as string.
- clipboard_append(self, string, **kw)
- Append STRING to the Tk clipboard.
A widget specified at the optional displayof keyword
argument specifies the target display. The clipboard
can be retrieved with selection_get.
- clipboard_clear(self, **kw)
- Clear the data in the Tk clipboard.
A widget specified for the optional displayof keyword
argument specifies the target display.
- colormodel(self, value=None)
- Useless. Not implemented in Tk.
- columnconfigure = grid_columnconfigure(self, index, cnf={}, **kw)
- Configure column INDEX of a grid.
Valid resources are minsize (minimum size of the column),
weight (how much does additional space propagate to this column)
and pad (how much space to let additionally).
- config = configure(self, cnf=None, **kw)
- Configure resources of a widget.
The values for resources are specified as keyword
arguments. To get an overview about
the allowed keyword arguments call the method keys.
- configure(self, cnf=None, **kw)
- Configure resources of a widget.
The values for resources are specified as keyword
arguments. To get an overview about
the allowed keyword arguments call the method keys.
- deletecommand(self, name)
- Internal function.
Delete the Tcl command provided in NAME.
- event_add(self, virtual, *sequences)
- Bind a virtual event VIRTUAL (of the form <<Name>>)
to an event SEQUENCE such that the virtual event is triggered
whenever SEQUENCE occurs.
- event_delete(self, virtual, *sequences)
- Unbind a virtual event VIRTUAL from SEQUENCE.
- event_generate(self, sequence, **kw)
- Generate an event SEQUENCE. Additional
keyword arguments specify parameter of the event
(e.g. x, y, rootx, rooty).
- event_info(self, virtual=None)
- Return a list of all virtual events or the information
about the SEQUENCE bound to the virtual event VIRTUAL.
- focus = focus_set(self)
- Direct input focus to this widget.
If the application currently does not have the focus
this widget will get the focus if the application gets
the focus through the window manager.
- focus_displayof(self)
- Return the widget which has currently the focus on the
display where this widget is located.
Return None if the application does not have the focus.
- focus_force(self)
- Direct input focus to this widget even if the
application does not have the focus. Use with
caution!
- focus_get(self)
- Return the widget which has currently the focus in the
application.
Use focus_displayof to allow working with several
displays. Return None if application does not have
the focus.
- focus_lastfor(self)
- Return the widget which would have the focus if top level
for this widget gets the focus from the window manager.
- focus_set(self)
- Direct input focus to this widget.
If the application currently does not have the focus
this widget will get the focus if the application gets
the focus through the window manager.
- getboolean(self, s)
- Return 0 or 1 for Tcl boolean values true and false given as parameter.
- getvar(self, name='PY_VAR')
- Return value of Tcl variable NAME.
- grab_current(self)
- Return widget which has currently the grab in this application
or None.
- grab_release(self)
- Release grab for this widget if currently set.
- grab_set(self)
- Set grab for this widget.
A grab directs all events to this and descendant
widgets in the application.
- grab_set_global(self)
- Set global grab for this widget.
A global grab directs all events to this and
descendant widgets on the display. Use with caution -
other applications do not get events anymore.
- grab_status(self)
- Return None, "local" or "global" if this widget has
no, a local or a global grab.
- grid_bbox(self, column=None, row=None, col2=None, row2=None)
- Return a tuple of integer coordinates for the bounding
box of this widget controlled by the geometry manager grid.
If COLUMN, ROW is given the bounding box applies from
the cell with row and column 0 to the specified
cell. If COL2 and ROW2 are given the bounding box
starts at that cell.
The returned integers specify the offset of the upper left
corner in the master widget and the width and height.
- grid_columnconfigure(self, index, cnf={}, **kw)
- Configure column INDEX of a grid.
Valid resources are minsize (minimum size of the column),
weight (how much does additional space propagate to this column)
and pad (how much space to let additionally).
- grid_location(self, x, y)
- Return a tuple of column and row which identify the cell
at which the pixel at position X and Y inside the master
widget is located.
- grid_propagate(self, flag=['_noarg_'])
- Set or get the status for propagation of geometry information.
A boolean argument specifies whether the geometry information
of the slaves will determine the size of this widget. If no argument
is given, the current setting will be returned.
- grid_rowconfigure(self, index, cnf={}, **kw)
- Configure row INDEX of a grid.
Valid resources are minsize (minimum size of the row),
weight (how much does additional space propagate to this row)
and pad (how much space to let additionally).
- grid_size(self)
- Return a tuple of the number of column and rows in the grid.
- grid_slaves(self, row=None, column=None)
- Return a list of all slaves of this widget
in its packing order.
- image_names(self)
- Return a list of all existing image names.
- image_types(self)
- Return a list of all available image types (e.g. phote bitmap).
- keys(self)
- Return a list of all resource names of this widget.
- lift = tkraise(self, aboveThis=None)
- Raise this widget in the stacking order.
- lower(self, belowThis=None)
- Lower this widget in the stacking order.
- mainloop(self, n=0)
- Call the mainloop of Tk.
- nametowidget(self, name)
- Return the Tkinter instance of a widget identified by
its Tcl name NAME.
- option_add(self, pattern, value, priority=None)
- Set a VALUE (second parameter) for an option
PATTERN (first parameter).
An optional third parameter gives the numeric priority
(defaults to 80).
- option_clear(self)
- Clear the option database.
It will be reloaded if option_add is called.
- option_get(self, name, className)
- Return the value for an option NAME for this widget
with CLASSNAME.
Values with higher priority override lower values.
- option_readfile(self, fileName, priority=None)
- Read file FILENAME into the option database.
An optional second parameter gives the numeric
priority.
- pack_propagate(self, flag=['_noarg_'])
- Set or get the status for propagation of geometry information.
A boolean argument specifies whether the geometry information
of the slaves will determine the size of this widget. If no argument
is given the current setting will be returned.
- pack_slaves(self)
- Return a list of all slaves of this widget
in its packing order.
- place_slaves(self)
- Return a list of all slaves of this widget
in its packing order.
- propagate = pack_propagate(self, flag=['_noarg_'])
- Set or get the status for propagation of geometry information.
A boolean argument specifies whether the geometry information
of the slaves will determine the size of this widget. If no argument
is given the current setting will be returned.
- quit(self)
- Quit the Tcl interpreter. All widgets will be destroyed.
- register = _register(self, func, subst=None, needcleanup=1)
- Return a newly created Tcl function. If this
function is called, the Python function FUNC will
be executed. An optional function SUBST can
be given which will be executed before FUNC.
- rowconfigure = grid_rowconfigure(self, index, cnf={}, **kw)
- Configure row INDEX of a grid.
Valid resources are minsize (minimum size of the row),
weight (how much does additional space propagate to this row)
and pad (how much space to let additionally).
- selection_clear(self, **kw)
- Clear the current X selection.
- selection_get(self, **kw)
- Return the contents of the current X selection.
A keyword parameter selection specifies the name of
the selection and defaults to PRIMARY. A keyword
parameter displayof specifies a widget on the display
to use.
- selection_handle(self, command, **kw)
- Specify a function COMMAND to call if the X
selection owned by this widget is queried by another
application.
This function must return the contents of the
selection. The function will be called with the
arguments OFFSET and LENGTH which allows the chunking
of very long selections. The following keyword
parameters can be provided:
selection - name of the selection (default PRIMARY),
type - type of the selection (e.g. STRING, FILE_NAME).
- selection_own(self, **kw)
- Become owner of X selection.
A keyword parameter selection specifies the name of
the selection (default PRIMARY).
- selection_own_get(self, **kw)
- Return owner of X selection.
The following keyword parameter can
be provided:
selection - name of the selection (default PRIMARY),
type - type of the selection (e.g. STRING, FILE_NAME).
- send(self, interp, cmd, *args)
- Send Tcl command CMD to different interpreter INTERP to be executed.
- setvar(self, name='PY_VAR', value='1')
- Set Tcl variable NAME to VALUE.
- size = grid_size(self)
- Return a tuple of the number of column and rows in the grid.
- slaves = pack_slaves(self)
- Return a list of all slaves of this widget
in its packing order.
- tk_bisque(self)
- Change the color scheme to light brown as used in Tk 3.6 and before.
- tk_focusFollowsMouse(self)
- The widget under mouse will get automatically focus. Can not
be disabled easily.
- tk_focusNext(self)
- Return the next widget in the focus order which follows
widget which has currently the focus.
The focus order first goes to the next child, then to
the children of the child recursively and then to the
next sibling which is higher in the stacking order. A
widget is omitted if it has the takefocus resource set
to 0.
- tk_focusPrev(self)
- Return previous widget in the focus order. See tk_focusNext for details.
- tk_menuBar(self, *args)
- Do not use. Needed in Tk 3.6 and earlier.
- tk_setPalette(self, *args, **kw)
- Set a new color scheme for all widget elements.
A single color as argument will cause that all colors of Tk
widget elements are derived from this.
Alternatively several keyword parameters and its associated
colors can be given. The following keywords are valid:
activeBackground, foreground, selectColor,
activeForeground, highlightBackground, selectBackground,
background, highlightColor, selectForeground,
disabledForeground, insertBackground, troughColor.
- tk_strictMotif(self, boolean=None)
- Set Tcl internal variable, whether the look and feel
should adhere to Motif.
A parameter of 1 means adhere to Motif (e.g. no color
change if mouse passes over slider).
Returns the set value.
- tkraise(self, aboveThis=None)
- Raise this widget in the stacking order.
- unbind(self, sequence, funcid=None)
- Unbind for this widget for event SEQUENCE the
function identified with FUNCID.
- unbind_all(self, sequence)
- Unbind for all widgets for event SEQUENCE all functions.
- unbind_class(self, className, sequence)
- Unbind for a all widgets with bindtag CLASSNAME for event SEQUENCE
all functions.
- update_idletasks(self)
- Enter event loop until all idle callbacks have been called. This
will update the display of windows but not process events caused by
the user.
- wait_variable(self, name='PY_VAR')
- Wait until the variable is modified.
A parameter of type IntVar, StringVar, DoubleVar or
BooleanVar must be given.
- wait_visibility(self, window=None)
- Wait until the visibility of a WIDGET changes
(e.g. it appears).
If no parameter is given self is used.
- wait_window(self, window=None)
- Wait until a WIDGET is destroyed.
If no parameter is given self is used.
- waitvar = wait_variable(self, name='PY_VAR')
- Wait until the variable is modified.
A parameter of type IntVar, StringVar, DoubleVar or
BooleanVar must be given.
- winfo_atom(self, name, displayof=0)
- Return integer which represents atom NAME.
- winfo_atomname(self, id, displayof=0)
- Return name of atom with identifier ID.
- winfo_cells(self)
- Return number of cells in the colormap for this widget.
- winfo_children(self)
- Return a list of all widgets which are children of this widget.
- winfo_class(self)
- Return window class name of this widget.
- winfo_colormapfull(self)
- Return true if at the last color request the colormap was full.
- winfo_containing(self, rootX, rootY, displayof=0)
- Return the widget which is at the root coordinates ROOTX, ROOTY.
- winfo_depth(self)
- Return the number of bits per pixel.
- winfo_exists(self)
- Return true if this widget exists.
- winfo_fpixels(self, number)
- Return the number of pixels for the given distance NUMBER
(e.g. "3c") as float.
- winfo_geometry(self)
- Return geometry string for this widget in the form "widthxheight+X+Y".
- winfo_height(self)
- Return height of this widget.
- winfo_id(self)
- Return identifier ID for this widget.
- winfo_interps(self, displayof=0)
- Return the name of all Tcl interpreters for this display.
- winfo_ismapped(self)
- Return true if this widget is mapped.
- winfo_manager(self)
- Return the window mananger name for this widget.
- winfo_name(self)
- Return the name of this widget.
- winfo_parent(self)
- Return the name of the parent of this widget.
- winfo_pathname(self, id, displayof=0)
- Return the pathname of the widget given by ID.
- winfo_pixels(self, number)
- Rounded integer value of winfo_fpixels.
- winfo_pointerx(self)
- Return the x coordinate of the pointer on the root window.
- winfo_pointerxy(self)
- Return a tuple of x and y coordinates of the pointer on the root window.
- winfo_pointery(self)
- Return the y coordinate of the pointer on the root window.
- winfo_reqheight(self)
- Return requested height of this widget.
- winfo_reqwidth(self)
- Return requested width of this widget.
- winfo_rgb(self, color)
- Return tuple of decimal values for red, green, blue for
COLOR in this widget.
- winfo_rootx(self)
- Return x coordinate of upper left corner of this widget on the
root window.
- winfo_rooty(self)
- Return y coordinate of upper left corner of this widget on the
root window.
- winfo_screen(self)
- Return the screen name of this widget.
- winfo_screencells(self)
- Return the number of the cells in the colormap of the screen
of this widget.
- winfo_screendepth(self)
- Return the number of bits per pixel of the root window of the
screen of this widget.
- winfo_screenheight(self)
- Return the number of pixels of the height of the screen of this widget
in pixel.
- winfo_screenmmheight(self)
- Return the number of pixels of the height of the screen of
this widget in mm.
- winfo_screenmmwidth(self)
- Return the number of pixels of the width of the screen of
this widget in mm.
- winfo_screenvisual(self)
- Return one of the strings directcolor, grayscale, pseudocolor,
staticcolor, staticgray, or truecolor for the default
colormodel of this screen.
- winfo_screenwidth(self)
- Return the number of pixels of the width of the screen of
this widget in pixel.
- winfo_server(self)
- Return information of the X-Server of the screen of this widget in
the form "XmajorRminor vendor vendorVersion".
- winfo_toplevel(self)
- Return the toplevel widget of this widget.
- winfo_viewable(self)
- Return true if the widget and all its higher ancestors are mapped.
- winfo_visual(self)
- Return one of the strings directcolor, grayscale, pseudocolor,
staticcolor, staticgray, or truecolor for the
colormodel of this widget.
- winfo_visualid(self)
- Return the X identifier for the visual for this widget.
- winfo_visualsavailable(self, includeids=0)
- Return a list of all visuals available for the screen
of this widget.
Each item in the list consists of a visual name (see winfo_visual), a
depth and if INCLUDEIDS=1 is given also the X identifier.
- winfo_vrootheight(self)
- Return the height of the virtual root window associated with this
widget in pixels. If there is no virtual root window return the
height of the screen.
- winfo_vrootwidth(self)
- Return the width of the virtual root window associated with this
widget in pixel. If there is no virtual root window return the
width of the screen.
- winfo_vrootx(self)
- Return the x offset of the virtual root relative to the root
window of the screen of this widget.
- winfo_vrooty(self)
- Return the y offset of the virtual root relative to the root
window of the screen of this widget.
- winfo_width(self)
- Return the width of this widget.
- winfo_x(self)
- Return the x coordinate of the upper left corner of this widget
in the parent.
- winfo_y(self)
- Return the y coordinate of the upper left corner of this widget
in the parent.
Data and non-method functions inherited from Tkinter.Misc:
- _noarg_ = ['_noarg_']
- _subst_format = ('%#', '%b', '%f', '%h', '%k', '%s', '%t', '%w', '%x', '%y', '%A', '%E', '%K', '%N', '%W', '%T', '%X', '%Y', '%D')
- _subst_format_str = '%# %b %f %h %k %s %t %w %x %y %A %E %K %N %W %T %X %Y %D'
- _tclCommands = None
- getdouble = <type 'float'>
- float(x) -> floating point number
Convert a string or number to a floating point number, if possible.
- getint = <type 'int'>
- int(x[, base]) -> integer
Convert a string or number to an integer, if possible. A floating point
argument will be truncated towards zero (this does not include a string
representation of a floating point number!) When converting a string, use
the optional base. It is an error to supply a base when converting a
non-string.
Methods inherited from Tkinter.Pack:
- forget = pack_forget(self)
- Unmap this widget and do not use it for the packing order.
- info = pack_info(self)
- Return information about the packing options
for this widget.
- pack = pack_configure(self, cnf={}, **kw)
- Pack a widget in the parent widget. Use as options:
after=widget - pack it after you have packed widget
anchor=NSEW (or subset) - position widget according to
given direction
before=widget - pack it before you will pack widget
expand=1 or 0 - expand widget if parent size grows
fill=NONE or X or Y or BOTH - fill widget if widget grows
in=master - use master to contain this widget
ipadx=amount - add internal padding in x direction
ipady=amount - add internal padding in y direction
padx=amount - add padding in x direction
pady=amount - add padding in y direction
side=TOP or BOTTOM or LEFT or RIGHT - where to add this widget.
- pack_configure(self, cnf={}, **kw)
- Pack a widget in the parent widget. Use as options:
after=widget - pack it after you have packed widget
anchor=NSEW (or subset) - position widget according to
given direction
before=widget - pack it before you will pack widget
expand=1 or 0 - expand widget if parent size grows
fill=NONE or X or Y or BOTH - fill widget if widget grows
in=master - use master to contain this widget
ipadx=amount - add internal padding in x direction
ipady=amount - add internal padding in y direction
padx=amount - add padding in x direction
pady=amount - add padding in y direction
side=TOP or BOTTOM or LEFT or RIGHT - where to add this widget.
- pack_forget(self)
- Unmap this widget and do not use it for the packing order.
- pack_info(self)
- Return information about the packing options
for this widget.
Methods inherited from Tkinter.Place:
- place = place_configure(self, cnf={}, **kw)
- Place a widget in the parent widget. Use as options:
in=master - master relative to which the widget is placed.
x=amount - locate anchor of this widget at position x of master
y=amount - locate anchor of this widget at position y of master
relx=amount - locate anchor of this widget between 0.0 and 1.0
relative to width of master (1.0 is right edge)
rely=amount - locate anchor of this widget between 0.0 and 1.0
relative to height of master (1.0 is bottom edge)
anchor=NSEW (or subset) - position anchor according to given direction
width=amount - width of this widget in pixel
height=amount - height of this widget in pixel
relwidth=amount - width of this widget between 0.0 and 1.0
relative to width of master (1.0 is the same width
as the master)
relheight=amount - height of this widget between 0.0 and 1.0
relative to height of master (1.0 is the same
height as the master)
bordermode="inside" or "outside" - whether to take border width of master widget
into account
- place_configure(self, cnf={}, **kw)
- Place a widget in the parent widget. Use as options:
in=master - master relative to which the widget is placed.
x=amount - locate anchor of this widget at position x of master
y=amount - locate anchor of this widget at position y of master
relx=amount - locate anchor of this widget between 0.0 and 1.0
relative to width of master (1.0 is right edge)
rely=amount - locate anchor of this widget between 0.0 and 1.0
relative to height of master (1.0 is bottom edge)
anchor=NSEW (or subset) - position anchor according to given direction
width=amount - width of this widget in pixel
height=amount - height of this widget in pixel
relwidth=amount - width of this widget between 0.0 and 1.0
relative to width of master (1.0 is the same width
as the master)
relheight=amount - height of this widget between 0.0 and 1.0
relative to height of master (1.0 is the same
height as the master)
bordermode="inside" or "outside" - whether to take border width of master widget
into account
- place_forget(self)
- Unmap this widget.
- place_info(self)
- Return information about the placing options
for this widget.
Methods inherited from Tkinter.Grid:
- grid = grid_configure(self, cnf={}, **kw)
- Position a widget in the parent widget in a grid. Use as options:
column=number - use cell identified with given column (starting with 0)
columnspan=number - this widget will span several columns
in=master - use master to contain this widget
ipadx=amount - add internal padding in x direction
ipady=amount - add internal padding in y direction
padx=amount - add padding in x direction
pady=amount - add padding in y direction
row=number - use cell identified with given row (starting with 0)
rowspan=number - this widget will span several rows
sticky=NSEW - if cell is larger on which sides will this
widget stick to the cell boundary
- grid_configure(self, cnf={}, **kw)
- Position a widget in the parent widget in a grid. Use as options:
column=number - use cell identified with given column (starting with 0)
columnspan=number - this widget will span several columns
in=master - use master to contain this widget
ipadx=amount - add internal padding in x direction
ipady=amount - add internal padding in y direction
padx=amount - add padding in x direction
pady=amount - add padding in y direction
row=number - use cell identified with given row (starting with 0)
rowspan=number - this widget will span several rows
sticky=NSEW - if cell is larger on which sides will this
widget stick to the cell boundary
- grid_forget(self)
- Unmap this widget.
- grid_info(self)
- Return information about the options
for positioning this widget in a grid.
- grid_remove(self)
- Unmap this widget but remember the grid options.
- location = grid_location(self, x, y)
- Return a tuple of column and row which identify the cell
at which the pixel at position X and Y inside the master
widget is located.
| |


Hugo Web Development Workflow on Windows
As I mentioned in my first article on this blog, I’m now using Hugo, the static site generator to build my personal website. Due to the needs of my work environment (mostly because I need to use MS Word and certain MATLAB features on a regular basis), I’ve been primarily using Windows as my operating system for the past year or so. Having used Linux for a long time, I definitely missed the conveniences offered by shell scripting and other command line tools. However, while setting up a workflow in Windows for publishing content to my website I discovered that Windows’ scripting tools are not all that bad. In fact, for anyone familiar with scripting from Linux, moving to Powershell isn’t that hard.
Workflow
A typical Hugo website development folder looks like this:
I add new posts by creating new markown (.md) files in the post
folder. When the website is compiled using the hugo
command, the static website’s code is generated into the public
folder. The content inside this is what goes into the folder that is served by any webserver. Since I am hosting the website on Github Pages, I found it most convenient to set up a separate folder with a clone of the username.githug.io
repository. After article writing/editing is done, I can generate the website and copy the contents inside the public
folder to the repository folder to publish.
When I am editing an article, I can preview content locally by using the hugo server --watch
command in the top level directory. This sets up a local webserver on localhost:1313
so that you can preview the website.
To publish my website to Github pages after I’m done with development, I copy everything inside the public
folder into my local copy of the github repository and then commit all and push.
Batch Script Automation
Most of the the steps in the workflow can be automated away using batch scripts to save large amounts of time. I mean, who wants to spend time manually copying files and commiting after every small edit to the website? The build_on_laptop.bat
file in the top level directory handles everything. Diving into the source, I first delete everything inside the public
folder (Hugo does not automatically do this) and build a fresh version of the website.
rmdir /S /Q public
hugo
My Github pages repo has a few files that are not generated by Hugo. So I can’t just nuke the folder and delete everything. So I have a set of commands that delete all the Hugo generated files in the repository folder:
rmdir /S /Q "C:\Users\Ashwin Narayan\rationalash.github.io\categories"
rmdir /S /Q "C:\Users\Ashwin Narayan\rationalash.github.io\css"
rmdir /S /Q "C:\Users\Ashwin Narayan\rationalash.github.io\fonts"
rmdir /S /Q "C:\Users\Ashwin Narayan\rationalash.github.io\home"
rmdir /S /Q "C:\Users\Ashwin Narayan\rationalash.github.io\img"
rmdir /S /Q "C:\Users\Ashwin Narayan\rationalash.github.io\js"
rmdir /S /Q "C:\Users\Ashwin Narayan\rationalash.github.io\post"
rmdir /S /Q "C:\Users\Ashwin Narayan\rationalash.github.io\project"
rmdir /S /Q "C:\Users\Ashwin Narayan\rationalash.github.io\publication"
rmdir /S /Q "C:\Users\Ashwin Narayan\rationalash.github.io\publication_types"
rmdir /S /Q "C:\Users\Ashwin Narayan\rationalash.github.io\tags"
rmdir /S /Q "C:\Users\Ashwin Narayan\rationalash.github.io\talk"
del "C:\Users\Ashwin Narayan\rationalash.github.io\404.html"
del "C:\Users\Ashwin Narayan\rationalash.github.io\index.html"
del "C:\Users\Ashwin Narayan\rationalash.github.io\index.xml"
del "C:\Users\Ashwin Narayan\rationalash.github.io\sitemap.xml"
del "C:\Users\Ashwin Narayan\rationalash.github.io\site.webmanifest"
del "C:\Users\Ashwin Narayan\rationalash.github.io\styles.css"
Then comes the task of copying your updated website source into the folder. While it’s possible to use the cp
command, I found that the robocopy
command is in general much better for copying files around in Windows.
robocopy public "C:\Users\Ashwin Narayan\rationalash.github.io" /E
Finally, I need to commit the new version of the website and push to github. This is also easily done:
cd "C:\Users\Ashwin Narayan\rationalash.github.io"
set /p commitmsg="Enter a commit message: "
git add --all .
git commit -m "%commitmsg%"
git push origin master
So the end result is that when I run this script, it automatically deletes everything in the public folder and the repository folder, rebuilds and copies the new website over and then commits and pushes the new version to github to deploy the website.
Even More Automation with Visual Studio Code
I can shave even more time off the workflow by using Visual Studio Code. VS Code has a really well made task management system. It’s also a natural choice since I do most of my markdown editing inside VS Code anyway. VS Code has a tasks.json
file where you can bind custom tasks/commands to key combinations. In this case, I just bound the default build task mapped to Ctrl
+Alt
+B
to the batch script. I also created a compose task which creates the local preview webserver.
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "0.1.0",
"tasks": [
{
"taskName": "build",
"command": "build_on_laptop.bat",
"isShellCommand": true,
"showOutput": "always",
"echoCommand": true
},
{
"taskName": "compose",
"command": "hugo",
"args": ["server", "--watch"],
"isShellCommand": true,
"showOutput": "always",
"echoCommand": true
}
]
}
With most of the steps automated, writing and publishing new articles don’t take that long compared to off the shelf solutions like Wordpress or Medium. It also comes with the advantage that you have full control over the website’s source code.


WITNESS LIST Finance Committee March 8, 2005 - 9:00A SB 1 ON: Beck, Tina LBB Staff (LBB), Austin, TX John, Newton LBB Staff (LBB), Austin, TX Johnson, Shanique LBB Staff (LBB), Austin, TX Millard, Nancy LBB Staff (LBB), Austin, TX Owens, Greg LBB Staff (LBB), Austin, TX Priest, Paul LBB Staff (LBB), Austin, TX Shepperd, Val LBB Staff (LBB), Austin, TX Sherman, Susan LBB Staff (LBB), Austin, TX Wielmaker, John LBB Staff (LBB), Austin, TX Registering, but not testifying: On: Leo, Mike LBB Staff (LBB), Austin, TX McGready, John LBB Staff (LBB), Austin, TX Parks, Ursula LBB Staff (LBB), Austin, TX Ruiz, Roberto LBB Staff (LBB), Austin, TX Schiess, Jennifer LBB Staff (LBB), Austin, TX Wiles, Mark LBB Staff (LBB), Austin, TX


|
November 1992 William Jefferson Clinton elected President of the United
States May 1994 Paula Jones files lawsuit against President Clinton July 1995 Monica S. Lewinsky begins White House internship November 15, 1995 President begins sexual relationship with Lewinsky April 5, 1996 Lewinsky transferred from White House to Pentagon November 1996 President Clinton reelected March 29, 1997 Last intimate contact between President and Monica Lewinsky
December 5, 1997 Lewinsky appears on Jones Witness List December 19, 1997 Lewinsky served with subpoena to appear at deposition and
produce gifts from President Clinton December 24, 1998 Lewinsky's last day of work at the Pentagon December 28, 1997 Lewinsky meets with the President and receives gifts; later
gives box of gifts from the President to Betty Currie. January 7, 1998 Lewinsky signs affidavit intended for filing in Jones
case. January 13, 1998 Lewinsky accepts job offer at Revlon in New York January 16, 1998 Special Division appoints Independent Counsel Kenneth W.
Starr to investigate Lewinsky matter January 17, 1998 President deposed in Jones case January 18, 1998 President meets with Betty Currie to discuss President's
deposition January 21, 1998 Lewinsky matter reported in press; President denies
allegations of a sexual relationship and of suborning perjury April 1, 1998 Judge Wright grants summary judgment for President Clinton in
the Jones litigation July 17, 1998 President served with grand jury subpoena, later withdrawn in
return for testimony July 28, 1998 Immunity/Cooperation Agreement reached between Lewinsky and OIC
August 17, 1998 President testifies before the grand jury; later he publicly
acknowledges improper relationship September 9, 1998 OIC submits Referral to Congress pursuant to 28 U.S.C. ß
595(c) |


WITNESS LIST Corrections Committee (Subcommittee on County and Private Jails) September 1, 1998-1:00P County and Private Jails On: Allison, Jim (Co.Judges & Comm. Assn.) Bryan, Billy (CSC) Campbell, Craig (TCLEOSE) Fillmore, Debbie (Tx.Comm. Jail Standards) Shanblum, Laurie (CCA) White, Robert (Wackenhut Corr. Corp.)


{% extends "layout.html" %} {% block main %} A progressive webapp template
This is an amended copy of Flask-PWA @ https://github.com/umluizlima/flask-pwa


(NLP + HCI) × AI: Some Directions
NLP + HCI: A white canvas which NEEDS painting.
Synergy between NLP and HCI
Show them that white canvas, which is ready to be painted with the best colors.
AJ http://www.idc.iitb.ac.in/~anirudha/phdtopics.html
- Human-Centered Deep Learning.
Past:
http://www.spencegreen.com/about/ http://www.spencegreen.com/data/SpenceGreenCV.pdf https://www.youtube.com/watch?v=6aGVB-b3eqg
So this guys also, did it in Machine Translation. His initial paper says that purpose of NLP was to do task such as Translation and human intervention was necessary.
The first HCI conference was built by pshologist and Engineers.
http://repo.iitbhu.ac.in/db/2016/ir-2016-638/inucom_2016.pdf
https://halshs.archives-ouvertes.fr/halshs-00953658/document
https://cacm.acm.org/magazines/2015/9/191190-natural-language-translation-at-the-intersection-of-ai-and-hci/abstract
http://www.antonella_de_angeli.talktalk.net/files/Pdf/Bridging%20the%20gap%20between%20NLP%20and%20HCI%20A%20new%20synergy%20in%20the%20name%20of%20the%20user.pdf
https://www.rug.nl/research/portal/files/13577774/chi09_karamanis_etal.pdf
https://depts.washington.edu/hdsl/people/ ctrl + f
Present:
HCI can be used to create AI Datasets.
Crowdsourcing.
Trends from CHI
Trends from ACL
Talking about Human Centered AI.
Stanford’s lastest offering: Stanford CDDRL What is HumanCentered AI. https://youtu.be/UVOFOA9gO8I?t=678
How to Make A.I. That’s Good for People - Opinion article in NYTimes. Fe Fe Li. Computer Vision + HCI https://www.nytimes.com/2018/03/07/opinion/artificial-intelligence-human.html
MIT’s Human Centered AI lab. https://www.surveygizmo.com/s3/4319475/HCAI-Join-Our-Team https://hcai.mit.edu/?wppb_cpm_redirect=yes
Example of Human bias when you try to create a dataset. Short description of story during Summer School. (See video from Statistic course on Lynda.com)


EBD - Easton Bible DIctionary
Mahalaleel
MAHALALEEL
"MAHALALEEL "praise of God. (1.) The son of Cainan, of the line of Seth(
Genesis 5:12-17
); called Maleleel (
Luke 3:37
).
(2.)
Nehemiah 11:4
, a descendant of Perez.
"MAHALALEEL "praise of God. (1.) The son of Cainan, of the line of Seth(Genesis 5:12-17); called Maleleel (Luke 3:37).
(2.) Nehemiah 11:4, a descendant of Perez.


Prince Avalanche
Prince Avalanche is a movie starring Paul Rudd, Emile Hirsch, and Lance LeGault. Two highway road workers spend the summer of 1988 away from their city lives. The isolated landscape becomes a place of misadventure as the men find...


We're sorry, but something went wrong.
We've been notified about this issue and we'll take a look at it shortly. Please check your URL or click here to go home.
We've been notified about this issue and we'll take a look at it shortly. Please check your URL or click here to go home.


--- layout: post status: publish published: true title: Ryne Sandberg Interview author: display_name: Corey Fineran login: Corey email<EMAIL_ADDRESS>url: '' author_login: Corey author_email<EMAIL_ADDRESS>excerpt: "Nothing ground-breaking here. But it's Ryne Sandberg. \n\n" wordpress_id: 73 wordpress_url: http://ivyenvy.wordpress.com/?p=73 date: '2008-05-13 21:11:20 +0000' date_gmt: '2008-05-13 21:11:20 +0000' categories: - Minor Leagues - The Cubs tags: - Ryne Sandberg comments: [] ---
Nothing ground-breaking here. But it's Ryne Sandberg.
[youtube=http://www.youtube.com/watch?v=0KixRe2wL94]


--- layout: default nav: why ---
The primary advantage of Intercooler is simplicity.
Using simple, declarative attributes you can build rich, interactive user interfaces in your application while avoiding the overhead (and sometimes, overkill) of MVC frameworks.
With intercooler.js, you don't need client-side models, routing, validation, rendering, factories, dependency injection, etc, eliminating a major source of complexity, inconsistency and security problems in your application.
Intercooler is a Partial View Controller framework: it communicates with the server via AJAX, but rather than using JSON responses, it uses fragments of HTML (i.e. Partial Views), which are then loaded into the DOM directly.
This is in contrast with older, more traditional MVC frameworks such as Ember.js or Angular.js, which use JSON and client-side rendering.
Here is a diagram showing a PVC request:
The AJAX response content is a partial bit of HTML, and it is swapped into the DOM directly.
Examples of some PVC frameworks are Turbolinks and pjax.
Intercooler formalizes this pattern using simple, declarative attributes, making PVC-style programing easy, flexible and fun.


for blink(1) USB RGB LED notification devices.
Version:
For latest version: To report issues/bugs:
Config file:
Electron / Node / Chromium : : chrome://gpu/


| 016:106 Khan | : |
Whoever disbelieved in Allah after his belief, except him who is forced thereto and whose heart is at rest with Faith but such as open their breasts to disbelief, on them is wrath from Allah, and theirs will be a great torment. |
| 016:106 Maulana | : |
Whoso disbelieves in Allah after his belief -- not he who is compelled while his heart is content with faith, but he who opens (his) breast for disbelief -- on them is the wrath of Allah, and for them is a grievous chastisement. |
| 016:106 Pickthal | : |
Whoso disbelieveth in Allah after his belief - save him who is forced thereto and whose heart is still content with the Faith - but whoso findeth ease in disbelief: On them is wrath from Allah. Theirs will be an awful doom. |
| 016:106 Rashad | : |
Those who disbelieve in GOD, after having acquired faith, and become fully content with disbelief, have incurred wrath from GOD. The only ones to be excused are those who are forced to profess disbelief, while their hearts are full of faith. |
| 016:106 Sarwar | : |
No one verbally denounces his faith in God - unless he is forced - but his heart is confident about his faith. But those whose breasts have become open to disbelief will be subject to the wrath of God and will suffer a great torment. |
| 016:106 Shakir | : |
He who disbelieves in Allah after his having believed, not he who is compelled while his heart is at rest on account of faith, but he who opens (his) breast to disbelief-- on these is the wrath of Allah, and they shall have a grievous chastisement. |
| 016:106 Sherali | : |
Whoso disbelieves in ALLAH after he has believed - save him who is forced to make a declaration of disbelief while his heart finds peace in faith - but such as open their breast to disbelief, on them is ALLAH's wrath; and for them is decreed a severe punishment. |
| 016:106 Yusufali | : |
Any one who, after accepting faith in Allah, utters Unbelief,- except under compulsion, his heart remaining firm in Faith - but such as open their breast to Unbelief, on them is Wrath from Allah, and theirs will be a dreadful Penalty. |
Concepts/Themes Covered: أركان الإسلام > التوحيد > توحيد الله تعالي > إنذار من لا يعترف بتوحيد الله تعالي بالانتقام Pillars of Islam> Islamic> Oneness of Allah>A Warning to all who do not Acknowledge his Glory Oneness that He'll take Retribution from them أركان الإسلام > التوحيد > توحيد الله تعالي > غضبه Pillars of Islam> Islamic> Oneness of Allah> His Anger أركان الإسلام > التوحيد > توحيد الله تعالي > الوعد والوعيد Pillars of Islam> Islamic> Oneness of Allah> Promise and Threat أركان الإسلام > التوحيد > الكافرون > صفات الكفار Pillars of Islam> Islamic> The Disbelievers> The Characteristics of the Disbelievers العلاقات القضائية > أحكام قانونية > العفو > الاستثناء Judicial Relationships>Legal Rules>Forgiveness>The Exceptions
This tool uses eight English parallel translations for the Holy Quran imported from Mr. Clay Smith. You can also visit Qurany Concepts for browsing the Quran themes or topics. If you want to search the Holy Quran for keywords, please visit Qurany Keywords.


| URL | Methods | Endpoint | {% for route in routes %}
|---|---|---|
| {{route.uri}} | {% for m in route.methods %} {{m}}{% endfor %} | {{route.endpoint}} |
| URL | Methods | Endpoint | {% for route in routes %}
|---|---|---|
| {{route.uri}} | {% for m in route.methods %} {{m}}{% endfor %} | {{route.endpoint}} |


PLANET SICK-BOY: http://www.sick-boy.com "We Put the SIN in Cinema"
Lightning doesn't strike twice. It doesn't even come close. Book of Shadows, the sequel to 1999's much-hyped hit The Blair Witch Project, pales in comparison to its predecessor. In fact, they're apples and oranges.
The first film was good because it was believable. Even after the relentless media coverage, some viewers still weren't sure if the film was real or fake (believe me – I got dozens of dopey e-mail messages asking if I knew the real truth). Part of the original's believability was in the acting, or perhaps the lack thereof. Josh, Heather and Mike weren't acting so much as reacting to what was happening to them. There was no score, and the fact that the film was shot using two handheld cameras (which were operated by the actors) added to Blair Witch's realism.
The best part about the original is that it didn't rely on special effects or even anything visually disturbing to freak people out. The visions were mostly in your head, and we all know that what you can imagine can be 1000 times more frightening than anything Hollywood can create (Battlefield Earth aside). In 30 years, it will still be scary. People won't laugh at the dated technology like they're doing with the re-release of The Exorcist. Regrettably, the sequel doesn't follow the same formula for terror.
Shadows ups the character count from three to five, and while none of the new kids have much acting experience, each tries really hard to do a good job. (Too hard, actually - none of them do particularly well.) And the actor-wielding, handheld cameras were discarded in favor of more traditional filming techniques (using a film crew complete with director and cinematographer). The lack of score has been replaced with a slew of "hot" modern rock tracks.
Director Joe Berlinger (Paradise Lost) explains away the differences at the beginning of the film via a title card that points out the fact that Shadows is a fictionalized version of the actual events that transpired following the release of the first film. Shadows begins promisingly, using documentary-style clips of interviews with Burkittsville, Maryland residents explaining the effects the success of the first film had on their community and, more specifically, themselves.
Things begin to go astray once the real action starts to take place. Shadows is about Jeffrey Donovan, a former mental patient who creates an adventure tour of the supposedly haunted wooded area of Burkittsville. His first expedition includes a Wiccan girl (Kim Director), a couple doing research on a Blair Witch book (Tristine Skyler and Stephen Barker Turner), and a psychic who looks like a goth version of Debi Mazar (Erica Leerhsen). Like the first film, the real names of each actor are used for their characters.
The group's first stop is at the ruins of Rustin Parr's home, where they spend the night and wake up to untold horrors that aren't really that horrifying. The fab five even run into a group of sightseers from a rival tour group, and their fate becomes so obvious it's almost laughable. There are occasional flashes of what we're supposed to assume are the murders described in the first film, but other than that, Shadows offers nothing too frightening. There's no whopper ending that leaves things unresolved, but there are about a half-dozen times when characters shout `What the f--- is going on?' Call me crazy, but I'd rather have the former than the latter.
Berlinger, who has no previous non-documentary feature work under his belt (he did direct episodes of Homicide and the short-lived WB drama D.C.), co-wrote Shadows' script with Dick Beebe (House on Haunted Hill). The film was executive-produced by Blair Witch's Daniel Myrick and Eduardo Sánchez, who surround themselves with some quality behind-the-camera talent, including editor Sarah Flack (The Limey), cinematographer Nancy Schreiber (Your Friends and Neighbors) and musical maestro Carter Burwell (Three Kings). Unfortunately, Shadows will never be able to get out of the shadow of The Blair Witch Project. As horror sequels go, it's still better than the rest of the slop out there (aside from Scream 2), but compared to the original, it's a whopping disappointment.
1:32 - R for adult language, nudity, drug use and drinking
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


its great that kmd started going sideways not just going lower and lower(edited)
hopefully it soon turn into a uptrend
Markus31-Aug-19 04:40 PM
also looking at weekly we can see that 7k sats look like its building a nice support atm, this might be the bottom we will have to see but its a possibility i think
2/3
Here are few FACTS about #COMEX #Gold Paper trading. Paper determines price of physical and its trading 165 times the physical stock #COT101
Markus31-Aug-19 06:54 PM
so something similar to centralized exchanges
they can use fake money to trade aswell
or Tether, they can just print 100 mil, buy btc worth 100m. sell the bitcoins at a higher price then they paid for it, cash out in usd and say that they have the cash backing the printed Tether
its interesting when alts just keeps loosing sats value when btc goes down and never recovers
btc goes 9600 to 9500 and alts lose 2% and recovers nothing while btc goes back and forth
i quess things can get interesting, some ppl say btc can go below 8k....what about alts another -40% ?
Sdunbar31-Aug-19 09:23 PM
close to zero would be the end point i would assume
people assume they cant just keep goin down but i dont see why they can't
tolken31-Aug-19 10:02 PM
There’s always booty for someone.
blackjok3r31-Aug-19 10:16 PM
-ve intrest rates... should mean that crypto will go higher... but ppl are stupid...
Crabby Paddy31-Aug-19 10:30 PM
If Komodo goes under 20c, I’ll sell my spare kidney and testicle
blackjok3r31-Aug-19 10:32 PM
yes but will there be enough others doing the same..,...
Dont mean jsut for KMD... for everything(edited)
yes. Tether is liek the USD of cryto right? If you can print as much money as you liek, you can control the price of anything(edited)
actionslacks31-Aug-19 10:44 PM
then make tether erc20 and use it to clog up eth's chain. It's a pretty versatile weapon. I'm sure there are some people who are enjoying this a great deal.
1
Markus31-Aug-19 10:44 PM
and its not likely to end
blackjok3r31-Aug-19 10:45 PM
lets assume tether ios legit... What stops any certral bank just buying as much tether as they want?
tolken31-Aug-19 10:45 PM
So crypto is just a scam.
blackjok3r31-Aug-19 10:46 PM
The japanese central bank owns 90%+ of all japenese stocks at this point right?
actionslacks31-Aug-19 10:47 PM
the fact that tether's operators have been allowed continue this circus can only mean that some very well connected people are behind it.
1
1
blackjok3r31-Aug-19 10:49 PM
BTC only stops inflation if it is the only coin
actionslacks31-Aug-19 10:51 PM
well it's causing some cognitive dissonance in the crypto space, and people losing real money are starting to understand that even "real money" is a bit of a scam. So it's kind of doing a public service in a really sadistic way. much like xrp hodlers realizing that the founders can just issue as much as they want. hmmm maybe that's why people call xrp a shitcoin?
blackjok3r31-Aug-19 10:57 PM
fiat be usless... you cant save it or spend it
put in bank.... lose money
take it out of the bank and buy something worth over $X and go to jail
actionslacks31-Aug-19 10:59 PM
yes and of you do decide to dabble in scary, dangerous crypto... make sure and register your addresses according to govt guidelines.
I think that the general population is being dumbed down at such a precipitous rate that it's like a race to educate the masses before all is lost.
blackjok3r31-Aug-19 11:01 PM
just gave them my drivers license and they have never asked me single question.... BUt I assume that is onyl to gather evidence for enough suckers before they shut it all down..(edited)
hopefully they are too slow
and everyone refuses
I mean what if 2000 perople all go buy a $10,000 car with cash on the same day
how cant they jail that many people
it just doenst work
actionslacks31-Aug-19 11:04 PM
govt power is based on convincing people to voluntarily submit to govt control. all people have to do is literally say no.
blackjok3r31-Aug-19 11:04 PM
Cash is easier to make people use than crypto... and they still dont use it
exactly...
they old "they cant punish everyone, because there wouldnt be anyone at work/school/etc "(edited)
but even at a school its hard to get ppl to just say "no we are not doing that:"
Well you didnt go to school with me
I made the entire year 7 refues to submit a head boy because there was no payment
so they made ehr guy who won in year 6 get it bydefault
he was pissed
actionslacks31-Aug-19 11:08 PM
There's always something false offered in return for giving up sovereignty like safety, security, moral virtue, saving the children. always.
meanwhile those you're giving your rights to literally get away with murder
I'm just trying to think of an elevator pitch for crypto adoption. I think everyone is really starting to wake up. but I'm perhaps being too optimistic.
the philosophically inclined crypto adopters are being rekt by those who are only in it for the greed.
i think in any case crypto is just a demontration that free markets really are a joke in era of fiat currencies
blackjok3r31-Aug-19 11:16 PM
Markets are too manipulated to allow average joe to become rich overnight.
Its much worse than this really... They dont allow anyone to even live...
Markus31-Aug-19 11:18 PM
what if this is actually banks buying up btc to then dump and pump it to get all alts rekt until they control majority of btc supply available?
blackjok3r31-Aug-19 11:20 PM
It very well could be.
actionslacks31-Aug-19 11:21 PM
I think the goal is to crush all crypto. btc is just the easiest attack vector.
blackjok3r31-Aug-19 11:22 PM
if "they" wanted BTC gone it would already be gone....
2017 hurt a lot of noobs... but it didbnt crash BTC to $0.
1
actionslacks31-Aug-19 11:24 PM
they outlawed it in India. seems like "they"wanted it gone there. but it didn't work
blackjok3r31-Aug-19 11:24 PM
ytes but they banned cash at same time...
see the pattern here
actionslacks31-Aug-19 11:25 PM
yeah that was some straight up tyranny. what a show.
blackjok3r31-Aug-19 11:25 PM
my mum was there sometime around it... had to drive though massive riot to get to airport... I told her not to go there but she didnt believe me
actionslacks31-Aug-19 11:27 PM
so what's the sentiment like in Australia? are these cash controls gonna backfire? you see any backlash?
blackjok3r31-Aug-19 11:31 PM
I dont see it working myself
that said... not many people have that kind of money at this point sooo ....


1519 Avonmore Sq., Pickering ON, L1V 7H2
(416) 986 8402
<EMAIL_ADDRESS>of Mathematics: Major in Applied Math(with Engineering Option in Communication and Control)
Academics : A in Algebra, Calculus 1, Mechanics. B+ in Calculus 2 and Computer Science 1
Honors : University of Waterloo’s President’s Scholarship, Faculty of Mathematics Entrance Scholarship
Leadership : A in Public Speaking
Notable Courses : Mechanics, Electrical Engineering(Circuits), Calculus 1 and 2, Computer Science 1 and 2
Senior Volunteer and Former Member of Board of Directors
Helped start the Math Circles portion of the program.
Designed and implemented a curriculum for kids in grades 6 through 8. Taught kids various concepts as well as discuss their progress with their parents.
Oversaw the education of around 29 kids, with the help of 10 others, during peak months.
Recruited over 19 volunteers during a 2-year period.
Co-Founder of Math Club and Physics Club
Helped fellow students understand difficult concepts in Math and Physics
Helped 7 students prepare for Math and Physics contests taken place at the end of the school year.
Tutored 7 kids during peak days of the week.
Coded the classic game in JavaScript using HTML Canvas
The computer paddle uses a follower algorithm to play the game
Similarly, built my own version of Brick Breaker in JavaScript using the HTML canvas
Utilized arrays to build and randomize all the colors of the bricks
Created a personal website using HTML, CSS and Bootstrap. In previous versions, I have used animate.css
Coded this Resumé using HTML and CSS
Currently working with the Robotics Club to develop an algorithm that will recognize traffic lights and will tell our autonomous car when to start the race.
Will eventually learn ROS to do other tasks.
I have been accepted to the Velocity Residence at the University of Waterloo. As a result, I will get an opportunity to work with students who are trying to establish a start-up. Thus, I will gain more experience in the coming months.
Familiar with and Currently Learning: C++, C, Racket, HTML, JavaScript, CSS, Node.js
My 2A(3rd semester) courses are: Logic and Computation, Linear Algebra 2, Calculus 3, Signals and Systems(ECE), Intro to Differential Equations
For a PDF version of my Resumé, click here