{"id":21,"date":"2007-03-03T14:48:31","date_gmt":"2007-03-03T12:48:31","guid":{"rendered":"http:\/\/www.kosmala.pl\/?p=21"},"modified":"2008-03-08T16:59:20","modified_gmt":"2008-03-08T14:59:20","slug":"tkolor","status":"publish","type":"post","link":"http:\/\/www.kosmala.pl\/?p=21","title":{"rendered":"<!--:pl-->tKolor.tk<!--:-->"},"content":{"rendered":"<p><!--:pl-->Tkolor to ma\u0142y programik napisany w Tcl\/tk, kt\u00f3ry pozwala w prosty spos\u00f3b dobiera\u0107 odpowiadaj\u0105ce nam kolory t\u0142a i prezentowanego na tym tle tekstu. Warto\u015bci kolor\u00f3w ustawia si\u0119 przy pomocy sze\u015bciu suwak\u00f3w, nad kt\u00f3rymi wy\u015bwietlane s\u0105 szesnastkowe oznaczenia. <!--:--><!--more--><!--:pl-->Programik powsta\u0142 na wz\u00f3r innej zabawki tego typu (r\u00f3wnie\u017c opartej na Tcl\/Tk), kt\u00f3r\u0105 znalaz\u0142em kiedy\u015b w sieci, potem zgubi\u0142em, a gdy znowu sta\u0142a si\u0119 potrzebna stwierdzi\u0142em, \u017ce o wiele szybsze (i zabawniejsze \ud83d\ude09 ni\u017c grzebanie w necie b\u0119dzie napisanie czego\u015b takiego samemu.<\/p>\n<p>Uruchomienie poni\u017cszego skryptu sprowadza si\u0119 do przekopiowania kodu do pojedynczego pliku, kt\u00f3remu nadajemy prawo do wykonywania. Poprawki mo\u017ce wymaga\u0107 pierwsza linia ze \u015bcie\u017ck\u0105 do interpretera Tcl\/Tk, gdzie nale\u017cy wpisa\u0107 \u015bcie\u017ck\u0119 odpowiedni\u0105 dla swojego OS-a. Ja korzystam z niego pod GNU\/Linux-em, ale r\u00f3wnie\u017c pod Windowsem (z zainstalowanym interpreterem Tcl\/Tk) powinien si\u0119 odpala\u0107 z cmokni\u0119ciem w joystick.<\/p>\n<p align=\"center\"><img decoding=\"async\" src=\"http:\/\/www.kosmala.pl\/wp-content\/uploads\/2008\/03\/tkolor.png\" alt=\"tkolor\" \/><\/p>\n<p align=\"left\"> <font color=\"blue\">#!\/usr\/bin\/wish -f<br \/>\n#<br \/>\n# tKolor ver. 1.0 &#8211; program do koloryzowania rzeczywisto\u015bci WWW<br \/>\n#<br \/>\n# Autor: Miros\u0142aw Kosmala<br \/>\n# Data: 12.01.2005r godz.: 01:00 AM<br \/>\n#<br \/>\n# Powered by VIM 6.2<br \/>\n#<\/font><\/p>\n<p><font color=\"blue\">wm title . &#8222;tKolor ver. 1.0&#8221;<br \/>\nwm resizable . no no<\/font><\/p>\n<p><font color=\"blue\">set kolor_tla(0) &#8222;00&#8221;<br \/>\nset kolor_tla(1) &#8222;00&#8221;<br \/>\nset kolor_tla(2) &#8222;00&#8221;<\/font><\/p>\n<p><font color=\"blue\">set kolor_tekstu(0) &#8222;00&#8221;<br \/>\nset kolor_tekstu(1) &#8222;00&#8221;<br \/>\nset kolor_tekstu(2) &#8222;00&#8221;<\/font><\/p>\n<p><font color=\"blue\">###<br \/>\n## PROCEDURY<br \/>\n#<br \/>\nproc maluj {} {<\/font><\/p>\n<p><font color=\"blue\">global kolor_tla kolor_tekstu<\/font><\/p>\n<p><font color=\"blue\">.d.e config -background &#8222;#$kolor_tla(0)$kolor_tla(1)$kolor_tla(2)&#8221; \\<br \/>\n-foreground &#8222;#$kolor_tekstu(0)$kolor_tekstu(1)$kolor_tekstu(2)&#8221;<br \/>\n}<\/font><\/p>\n<p><font color=\"blue\">proc dawaj_wartosc {label numer typ kolor} {<\/font><\/p>\n<p><font color=\"blue\">global kolor_tla kolor_tekstu<\/font><\/p>\n<p><font color=\"blue\"># Zamiana dziesietnego na szesnastkowy<br \/>\nset kolor [format %02x $kolor]<\/font><\/p>\n<p><font color=\"blue\"># Wy\u015bwietlenie warto\u015bci<br \/>\nif {$typ == &#8222;t&#8221;} {<br \/>\nset kolor_tla($numer) $kolor<br \/>\n$label config -text &#8222;#$kolor_tla(0)$kolor_tla(1)$kolor_tla(2)&#8221;<br \/>\n}<\/font><\/p>\n<p><font color=\"blue\">if {$typ == &#8222;e&#8221;} {<br \/>\nset kolor_tekstu($numer) $kolor<br \/>\n$label config -text &#8222;#$kolor_tekstu(0)$kolor_tekstu(1)$kolor_tekstu(2)&#8221;<br \/>\n}<\/font><\/p>\n<p><font color=\"blue\"># Uwzgl\u0119dnij zmiany<br \/>\nmaluj<\/font><\/p>\n<p><font color=\"blue\">}<br \/>\n###<\/font><\/p>\n<p><font color=\"blue\">frame .g<br \/>\npack .g -fill both -expand 1<\/font><\/p>\n<p><font color=\"blue\">###<br \/>\n## T\u0142o<br \/>\n#<br \/>\nframe .g.tlo -borderwidth 1 -relief groove<br \/>\npack .g.tlo -expand 1 -fill both -side left<\/font><\/p>\n<p><font color=\"blue\">label .g.tlo.w -relief sunken<br \/>\npack .g.tlo.w -expand 1 -fill x -side top<\/font><\/p>\n<p><font color=\"blue\">scale .g.tlo.s1 -orient vertical -length 300 -width 11 -from 255 -to 0 -showvalue 0 -command &#8222;dawaj_wartosc .g.tlo.w 0 t&#8221;<br \/>\nscale .g.tlo.s2 -orient vertical -width 11 -from 255 -to 0 -showvalue 0 -command &#8222;dawaj_wartosc .g.tlo.w 1 t&#8221;<br \/>\nscale .g.tlo.s3 -orient vertical -width 11 -from 255 -to 0 -showvalue 0 -command &#8222;dawaj_wartosc .g.tlo.w 2 t&#8221;<br \/>\npack .g.tlo.s1 .g.tlo.s2 .g.tlo.s3 -expand 1 -fill both -side left<\/font><\/p>\n<p><font color=\"blue\">####<br \/>\n## Tre\u015b\u0107<br \/>\n#<br \/>\nframe .g.tr -borderwidth 1 -relief groove<br \/>\npack .g.tr -expand 1 -fill both -side left<\/font><\/p>\n<p><font color=\"blue\">label .g.tr.w -relief sunken<br \/>\npack .g.tr.w -expand 1 -fill x -side top<\/font><\/p>\n<p><font color=\"blue\">scale .g.tr.s1 -orient vertical -length 300 -width 11 -from 255 -to 0 -showvalue 0 -command &#8222;dawaj_wartosc .g.tr.w 0 e&#8221;<br \/>\nscale .g.tr.s2 -orient vertical -width 11 -from 255 -to 0 -showvalue 0 -command &#8222;dawaj_wartosc .g.tr.w 1 e&#8221;<br \/>\nscale .g.tr.s3 -orient vertical -width 11 -from 255 -to 0 -showvalue 0 -command &#8222;dawaj_wartosc .g.tr.w 2 e&#8221;<br \/>\npack .g.tr.s1 .g.tr.s2 .g.tr.s3 -expand 1 -fill both -side left<\/font><\/p>\n<p><font color=\"blue\">####<br \/>\n## Wyniki<br \/>\n#<br \/>\nframe .d<br \/>\npack .d -side top -expand 1 -fill x<\/font><\/p>\n<p><font color=\"blue\">label .d.e -text &#8222;\\nNapis \u0107wiczebny\\n&#8221;<br \/>\npack .d.e -expand 1 -fill x<br \/>\nmaluj<\/font><!--:--><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Tkolor to ma\u0142y programik napisany w Tcl\/tk, kt\u00f3ry pozwala w prosty spos\u00f3b dobiera\u0107 odpowiadaj\u0105ce nam kolory t\u0142a i prezentowanego na tym tle tekstu. Warto\u015bci kolor\u00f3w ustawia si\u0119 przy pomocy sze\u015bciu suwak\u00f3w, nad kt\u00f3rymi wy\u015bwietlane s\u0105 szesnastkowe oznaczenia.<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14,13],"tags":[419,418],"class_list":["post-21","post","type-post","status-publish","format-standard","hentry","category-programy","category-tcltk","tag-programy","tag-tcltk"],"_links":{"self":[{"href":"http:\/\/www.kosmala.pl\/index.php?rest_route=\/wp\/v2\/posts\/21","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.kosmala.pl\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.kosmala.pl\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.kosmala.pl\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"http:\/\/www.kosmala.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=21"}],"version-history":[{"count":0,"href":"http:\/\/www.kosmala.pl\/index.php?rest_route=\/wp\/v2\/posts\/21\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.kosmala.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=21"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.kosmala.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=21"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.kosmala.pl\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=21"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}