亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? notebook.tcl

?? The BWidget Toolkit is a high-level Widget Set for Tcl/Tk built using native Tcl/Tk 8.x namespaces.
?? TCL
?? 第 1 頁 / 共 3 頁
字號:
            incr idx
        }
        if { $idx != $data(base) } {
            set data(base) $idx
            _redraw $path
        }
    }
}


# ---------------------------------------------------------------------------
#  Command NoteBook::page
# ---------------------------------------------------------------------------
proc NoteBook::page { path first {last ""} } {
    variable $path
    upvar 0  $path data

    if { $last == "" } {
        return [lindex $data(pages) $first]
    } else {
        return [lrange $data(pages) $first $last]
    }
}


# ---------------------------------------------------------------------------
#  Command NoteBook::pages
# ---------------------------------------------------------------------------
proc NoteBook::pages { path {first ""} {last ""}} {
    variable $path
    upvar 0  $path data

    if { ![string length $first] } {
	return $data(pages)
    }

    if { ![string length $last] } {
        return [lindex $data(pages) $first]
    } else {
        return [lrange $data(pages) $first $last]
    }
}


# ---------------------------------------------------------------------------
#  Command NoteBook::index
# ---------------------------------------------------------------------------
proc NoteBook::index { path page } {
    variable $path
    upvar 0  $path data

    return [lsearch -exact $data(pages) $page]
}


# ---------------------------------------------------------------------------
#  Command NoteBook::_destroy
# ---------------------------------------------------------------------------
proc NoteBook::_destroy { path } {
    variable $path
    upvar 0  $path data

    foreach page $data(pages) {
        Widget::destroy $path.f$page
    }
    Widget::destroy $path
    unset data
}


# ---------------------------------------------------------------------------
#  Command NoteBook::getframe
# ---------------------------------------------------------------------------
proc NoteBook::getframe { path page } {
    return $path.f$page
}


# ---------------------------------------------------------------------------
#  Command NoteBook::_test_page
# ---------------------------------------------------------------------------
proc NoteBook::_test_page { path page } {
    variable $path
    upvar 0  $path data

    if { [set pos [lsearch -exact $data(pages) $page]] == -1 } {
        return -code error "page \"$page\" does not exists"
    }
    return $pos
}

proc NoteBook::_getoption { path page option } {
    set value [Widget::cget $path.f$page $option]
    if {![string length $value]} {
        set value [Widget::cget $path $option]
    }
    return $value
}

# ---------------------------------------------------------------------------
#  Command NoteBook::_itemconfigure
# ---------------------------------------------------------------------------
proc NoteBook::_itemconfigure { path page lres } {
    variable $path
    upvar 0  $path data

    set res [Widget::configure $path.f$page $lres]
    if { [Widget::hasChanged $path.f$page -text foo] } {
        _compute_width $path
    } elseif  { [Widget::hasChanged $path.f$page -image foo] } {
        _compute_height $path
        _compute_width  $path
    }
    if { [Widget::hasChanged $path.f$page -state state] &&
         $state == "disabled" && $data(select) == $page } {
        set data(select) ""
    }
    return $res
}


# ---------------------------------------------------------------------------
#  Command NoteBook::_compute_width
# ---------------------------------------------------------------------------
proc NoteBook::_compute_width { path } {
    variable $path
    upvar 0  $path data

    set wmax 0
    set wtot 0
    set hmax $data(hpage)
    set font [Widget::cget $path -font]
    if { ![info exists data(textid)] } {
        set data(textid) [$path.c create text 0 -100 -font $font -anchor nw]
    }
    set id $data(textid)
    $path.c itemconfigure $id -font $font
    foreach page $data(pages) {
        $path.c itemconfigure $id -text [Widget::cget $path.f$page -text]
	# Get the bbox for this text to determine its width, then substract
	# 6 from the width to account for canvas bbox oddness w.r.t. widths of
	# simple text.
	foreach {x1 y1 x2 y2} [$path.c bbox $id] break
	set x2 [expr {$x2 - 6}]
        set wtext [expr {$x2 - $x1 + 20}]
        if { [set img [Widget::cget $path.f$page -image]] != "" } {
            set wtext [expr {$wtext + [image width $img] + 4}]
            set himg  [expr {[image height $img] + 6}]
            if { $himg > $hmax } {
                set hmax $himg
            }
        }
        set  wmax  [expr {$wtext > $wmax ? $wtext : $wmax}]
        incr wtot  $wtext
        set  data($page,width) $wtext
    }
    if { [Widget::cget $path -homogeneous] } {
        foreach page $data(pages) {
            set data($page,width) $wmax
        }
        set wtot [expr {$wmax * [llength $data(pages)]}]
    }
    set data(hpage) $hmax
    set data(wpage) $wtot
}


# ---------------------------------------------------------------------------
#  Command NoteBook::_compute_height
# ---------------------------------------------------------------------------
proc NoteBook::_compute_height { path } {
    variable $path
    upvar 0  $path data

    set font    [Widget::cget $path -font]
    set pady0   [Widget::_get_padding $path -tabpady 0]
    set pady1   [Widget::_get_padding $path -tabpady 1]
    set metrics [font metrics $font -linespace]
    set imgh    0
    set lines   1
    foreach page $data(pages) {
        set img  [Widget::cget $path.f$page -image]
        set text [Widget::cget $path.f$page -text]
        set len [llength [split $text \n]]
        if {$len > $lines} { set lines $len}
        if {$img != ""} {
            set h [image height $img]
            if {$h > $imgh} { set imgh $h }
        }
    }
    set height [expr {$metrics * $lines}]
    if {$imgh > $height} { set height $imgh }
    set data(hpage) [expr {$height + $pady0 + $pady1}]
}


# ---------------------------------------------------------------------------
#  Command NoteBook::_get_x_page
# ---------------------------------------------------------------------------
proc NoteBook::_get_x_page { path pos } {
    variable _warrow
    variable $path
    upvar 0  $path data

    set base $data(base)
    # notebook tabs start flush with the left side of the notebook
    set x 0
    if { $pos < $base } {
        foreach page [lrange $data(pages) $pos [expr {$base-1}]] {
            incr x [expr {-$data($page,width)}]
        }
    } elseif { $pos > $base } {
        foreach page [lrange $data(pages) $base [expr {$pos-1}]] {
            incr x $data($page,width)
        }
    }
    return $x
}


# ---------------------------------------------------------------------------
#  Command NoteBook::_xview
# ---------------------------------------------------------------------------
proc NoteBook::_xview { path inc } {
    variable $path
    upvar 0  $path data

    if { $inc == -1 } {
        set base [expr {$data(base)-1}]
        set dx $data([lindex $data(pages) $base],width)
    } else {
        set dx [expr {-$data([lindex $data(pages) $data(base)],width)}]
        set base [expr {$data(base)+1}]
    }

    if { $base >= 0 && $base < [llength $data(pages)] } {
        set data(base) $base
        $path.c move page $dx 0
        _draw_area   $path
        _draw_arrows $path
    }
}


# ---------------------------------------------------------------------------
#  Command NoteBook::_highlight
# ---------------------------------------------------------------------------
proc NoteBook::_highlight { type path page } {
    variable $path
    upvar 0  $path data

    if { [string equal [Widget::cget $path.f$page -state] "disabled"] } {
        return
    }

    switch -- $type {
        on {
            $path.c itemconfigure "$page:poly" \
		    -fill [_getoption $path $page -activebackground]
            $path.c itemconfigure "$page:text" \
		    -fill [_getoption $path $page -activeforeground]
        }
        off {
            $path.c itemconfigure "$page:poly" \
		    -fill [_getoption $path $page -background]
            $path.c itemconfigure "$page:text" \
		    -fill [_getoption $path $page -foreground]
        }
    }
}


# ---------------------------------------------------------------------------
#  Command NoteBook::_select
# ---------------------------------------------------------------------------
proc NoteBook::_select { path page } {
    variable $path
    upvar 0  $path data

    if {![string equal [Widget::cget $path.f$page -state] "normal"]} { return }

    set oldsel $data(select)

    if {[string equal $page $oldsel]} { return }

    if { ![string equal $oldsel ""] } {
	set cmd [Widget::cget $path.f$oldsel -leavecmd]
	if { ![string equal $cmd ""] } {
	    set code [catch {uplevel \#0 $cmd} res]
	    if { $code == 1 || $res == 0 } {
		return -code $code $res
	    }
	}
	set data(select) ""
	_draw_page $path $oldsel 0
    }

    set data(select) $page
    if { ![string equal $page ""] } {
	if { !$data($page,realized) } {
	    set data($page,realized) 1
	    set cmd [Widget::cget $path.f$page -createcmd]
	    if { ![string equal $cmd ""] } {
		uplevel \#0 $cmd
	    }
	}
	set cmd [Widget::cget $path.f$page -raisecmd]
	if { ![string equal $cmd ""] } {
	    uplevel \#0 $cmd
	}
	_draw_page $path $page 0
    }

    _draw_area $path
}


# -----------------------------------------------------------------------------
#  Command NoteBook::_redraw
# -----------------------------------------------------------------------------
proc NoteBook::_redraw { path } {
    variable $path
    upvar 0  $path data

    if { !$data(realized) } { return }

    _compute_height $path

    foreach page $data(pages) {
        _draw_page $path $page 0
    }
    _draw_area   $path
    _draw_arrows $path
}


# ----------------------------------------------------------------------------
#  Command NoteBook::_draw_page
# ----------------------------------------------------------------------------
proc NoteBook::_draw_page { path page create } {
    variable $path
    upvar 0  $path data

    # --- calcul des coordonnees et des couleurs de l'onglet ------------------
    set pos [lsearch -exact $data(pages) $page]
    set bg  [_getoption $path $page -background]

    # lookup the tab colors
    set fgt   $data(lbg)
    set fgb   $data(dbg)

    set h   $data(hpage)
    set xd  [_get_x_page $path $pos]
    set xf  [expr {$xd + $data($page,width)}]

    # Set the initial text offsets -- a few pixels down, centered left-to-right
    set textOffsetY [expr [Widget::_get_padding $path -tabpady 0] + 3]
    set textOffsetX 9

    # Coordinates of the tab corners are:
    #     c3        c4
    #
    # c2                c5
    #
    # c1                c6
    #
    # where
    # c1 = $xd,	  $h
    # c2 = $xd+$xBevel,	           $arcRadius+2
    # c3 = $xd+$xBevel+$arcRadius, $arcRadius
    # c4 = $xf+1-$xBevel,          $arcRadius
    # c5 = $xf+$arcRadius-$xBevel, $arcRadius+2
    # c6 = $xf+$arcRadius,         $h

    set top		2
    set arcRadius	[Widget::cget $path -arcradius]
    set xBevel		[Widget::cget $path -tabbevelsize]

    if { $data(select) != $page } {
	if { $pos == 0 } {
	    # The leftmost page is a special case -- it is drawn with its
	    # tab a little indented.  To achieve this, we incr xd.  We also
	    # decr textOffsetX, so that the text doesn't move left/right.
	    incr xd 2
	    incr textOffsetX -2
	}
    } else {
	# The selected page's text is raised higher than the others

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品996| 久久久久国产精品麻豆ai换脸| 日韩一本二本av| 日韩精品一二三区| 成人在线综合网| 日韩一区二区三区高清免费看看| 亚洲欧洲日本在线| 国产真实精品久久二三区| 欧美在线播放高清精品| 欧美激情一区二区| 精品亚洲aⅴ乱码一区二区三区| 色哟哟欧美精品| 成人免费小视频| 激情文学综合插| 欧美一区二区三区婷婷月色| 一区二区三区中文在线观看| 国产成a人亚洲| 精品国产免费一区二区三区香蕉| 亚洲国产欧美另类丝袜| 91福利视频在线| 国产精品久久久久久福利一牛影视 | 亚洲一区二区三区免费视频| 国产成a人无v码亚洲福利| 亚洲精品一区二区三区福利| 日本一道高清亚洲日美韩| 欧美夫妻性生活| 亚洲国产日韩av| 欧美体内she精高潮| 亚洲一区二区成人在线观看| 欧洲一区在线电影| 亚洲综合色婷婷| 欧美色综合天天久久综合精品| 狠狠色狠狠色合久久伊人| 91精品国产一区二区| 婷婷一区二区三区| 日韩一区二区高清| 久久国产夜色精品鲁鲁99| 日韩精品在线网站| 国产剧情一区二区三区| 中文成人综合网| www.亚洲精品| 一区二区三区日韩欧美精品| 欧美性三三影院| 日韩 欧美一区二区三区| 日韩一区国产二区欧美三区| 久久精品国产成人一区二区三区 | 国产精品久久二区二区| 99久久99久久精品免费观看| 亚洲女人的天堂| 欧美日韩在线直播| 理论片日本一区| 久久九九全国免费| 色综合久久66| 首页国产丝袜综合| 久久久久久久电影| 99精品欧美一区二区三区小说| 伊人色综合久久天天| 91精品国产综合久久久久久漫画| 精品无人码麻豆乱码1区2区| 国产精品麻豆网站| 91精品欧美一区二区三区综合在| 精品午夜久久福利影院| 国产精品成人在线观看| 欧美日韩日本视频| 国产成人自拍高清视频在线免费播放| 国产精品久久久久婷婷| 欧美日韩aaa| 国产一区二区不卡在线 | 日韩欧美你懂的| 成人免费毛片高清视频| 午夜伊人狠狠久久| 中文字幕成人av| 欧美日韩一区不卡| 成人a免费在线看| 日韩国产欧美在线观看| 国产精品每日更新在线播放网址| 欧美午夜电影一区| 国产精品一区二区视频| 亚洲风情在线资源站| 久久久久国产成人精品亚洲午夜| 91极品视觉盛宴| 国产一区二区在线电影| 久久激情五月激情| 亚洲日本韩国一区| 欧美日韩成人综合| 国产综合久久久久影院| 亚洲一区二区三区在线看| 久久久久久久久久看片| 欧美高清视频一二三区| 色哟哟一区二区在线观看| 国产一区二区三区综合| 免费精品视频在线| 亚洲一区二区偷拍精品| 国产精品免费av| 精品久久人人做人人爰| 欧美日韩亚洲综合在线| 99视频热这里只有精品免费| 国产精品白丝jk黑袜喷水| 日韩福利视频导航| 午夜在线电影亚洲一区| 亚洲激情网站免费观看| 国产精品久久99| 国产日韩v精品一区二区| 日韩一区二区三区在线观看| 欧美午夜一区二区三区免费大片| 91尤物视频在线观看| av在线综合网| 成人午夜激情影院| 国产一区在线观看视频| 狠狠色丁香婷婷综合| 麻豆精品一区二区av白丝在线| 亚洲成人动漫在线免费观看| 亚洲欧美另类小说视频| 最好看的中文字幕久久| 国产精品激情偷乱一区二区∴| 国产偷国产偷亚洲高清人白洁| 精品乱人伦一区二区三区| 91精品国产综合久久婷婷香蕉| 欧美日韩精品一区二区三区四区 | 91网站最新地址| 99re8在线精品视频免费播放| 国产成人一区二区精品非洲| 国产精品一区二区果冻传媒| 国产精品一区二区91| 粉嫩aⅴ一区二区三区四区| 粉嫩av一区二区三区在线播放| 成人看片黄a免费看在线| 成人性生交大片免费看在线播放| 国产ts人妖一区二区| 成人福利视频在线| 91久久久免费一区二区| 欧美乱妇15p| 日韩精品一区二| 亚洲国产精品成人综合色在线婷婷| 国产精品久久午夜夜伦鲁鲁| 亚洲色图都市小说| 亚洲大片一区二区三区| 日本视频在线一区| 国产成都精品91一区二区三| 欧美电视剧免费全集观看| 久久精品免费在线观看| 国产精品色婷婷久久58| 一区二区三区精品视频在线| 日韩成人一区二区| 国产福利一区二区三区视频| 色域天天综合网| 91精品欧美一区二区三区综合在| xvideos.蜜桃一区二区| 中文字幕一区在线观看视频| 一区二区三区不卡视频| 日本亚洲免费观看| 成人动漫一区二区三区| 欧美日韩在线播放一区| 精品国产免费人成在线观看| 国产精品久久久久久妇女6080| 午夜欧美视频在线观看| 国产精品中文字幕一区二区三区| 91麻豆国产福利在线观看| 欧美一区中文字幕| 国产精品乱码一区二区三区软件| 一区二区三区 在线观看视频| 麻豆国产一区二区| 色噜噜夜夜夜综合网| 久久夜色精品国产欧美乱极品| 亚洲免费电影在线| 国产精品一区二区三区乱码| 欧美日韩国产高清一区二区三区 | 亚洲一二三级电影| 国产成人啪午夜精品网站男同| 欧美人狂配大交3d怪物一区| 国产精品毛片高清在线完整版| 日本欧美在线观看| 91在线视频播放地址| 久久久激情视频| 卡一卡二国产精品| 精品国产乱子伦一区| 亚洲国产人成综合网站| 97精品国产露脸对白| 久久精品一区二区三区四区| 日本不卡123| 在线精品亚洲一区二区不卡| 国产农村妇女精品| 蜜桃精品视频在线观看| 欧美日本国产一区| 亚洲尤物在线视频观看| 波多野结衣中文一区| 2014亚洲片线观看视频免费| 奇米影视在线99精品| 欧美少妇bbb| 亚洲一区二区三区在线看| 91丨porny丨中文| 国产精品第一页第二页第三页| 国产乱一区二区| 久久婷婷国产综合精品青草| 日本人妖一区二区| 91精品国产欧美一区二区18| 亚洲国产日韩a在线播放| 欧美无乱码久久久免费午夜一区 | 亚洲日本乱码在线观看| 成人黄色av电影|