Changeset 4655

Show
Ignore:
Timestamp:
03/01/10 12:46:30 (4 years ago)
Author:
douglask
Message:

Tcl/Tk code modifications for Blackmagic DeckLink? grabber panel

Location:
vic/branches/mpeg4/tcl
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • vic/branches/mpeg4/tcl/ui-ctrlmenu.tcl

    r4632 r4655  
    712712                unset grabberPanel 
    713713        } 
    714         if { [info procs build.$devname] != "" } { 
     714        init_grabber_panel 
     715        if {[info procs build.$devname] != "" } { 
    715716                if ![winfo exists $w] { 
    716717                        frame $w 
     
    16161617                        close_device 
    16171618                } 
    1618  
    1619         } 
     1619        } 
     1620        set_software_scale_buttons_state 
    16201621} 
    16211622 
     
    16331634                [device_supports $videoDevice size large] } { 
    16341635                $sizeButtons.b2 configure -state normal 
     1636        } 
     1637} 
     1638 
     1639proc set_software_scale_buttons_state { } { 
     1640        global inputSize softwareScaleButtons 
     1641        if { [info exists softwareScaleButtons] } { 
     1642                if { $inputSize == 1 } { 
     1643                        $softwareScaleButtons.b0 configure -state normal 
     1644                        $softwareScaleButtons.b1 configure -state normal 
     1645                        $softwareScaleButtons.b2 configure -state normal 
     1646                        $softwareScaleButtons.b3 configure -state normal 
     1647                        $softwareScaleButtons.b4 configure -state normal 
     1648                } else { 
     1649                        $softwareScaleButtons.b0 configure -state disabled 
     1650                        $softwareScaleButtons.b1 configure -state disabled 
     1651                        $softwareScaleButtons.b2 configure -state disabled 
     1652                        $softwareScaleButtons.b3 configure -state disabled 
     1653                        $softwareScaleButtons.b4 configure -state disabled 
     1654                } 
    16351655        } 
    16361656} 
  • vic/branches/mpeg4/tcl/ui-grabber.tcl

    r4447 r4655  
    2828# 
    2929 
     30# init_grabber_panel if invoked ensures ui-grabber.tcl gets sourced 
     31proc init_grabber_panel {} { 
     32} 
     33 
    3034proc build.dc10 w { 
    3135    build.v4l $w 
     
    188192    pack $w.f.left $w.f.right -side left -expand 1 -fill x 
    189193    pack $w.f -expand 1 -fill x 
     194} 
     195 
     196proc build.decklink w { 
     197    global setSoftwareScale softwareScaleButtons 
     198 
     199    label $w.title -text "Blackmagic DeckLink-Grabber" 
     200    frame $w.f -relief sunken -borderwidth 2 
     201 
     202    label $w.f.scaling -text "Software Scaling : " 
     203 
     204    if {$::tk_version > 8.4 && [windowingsystem] != "x11"} { 
     205        ttk::radiobutton $w.f.b0 -text "none" -command "grabber setSoftwareScale none" \ 
     206           -variable setSoftwareScale -value "none" 
     207        ttk::radiobutton $w.f.b1 -text "960p" -command "grabber setSoftwareScale 960p" \ 
     208            -variable setSoftwareScale -value "9600p" 
     209        ttk::radiobutton $w.f.b2 -text "720p" -command "grabber setSoftwareScale 720p" \ 
     210            -variable setSoftwareScale -value "720p" 
     211        ttk::radiobutton $w.f.b3 -text "576p" -command "grabber setSoftwareScale 576p" \ 
     212            -variable setSoftwareScale -value "576p" 
     213        ttk::radiobutton $w.f.b4 -text "480p" -command "grabber setSoftwareScale 480p" \ 
     214            -variable setSoftwareScale -value "480p" 
     215    } else { 
     216        set f [smallfont] 
     217        radiobutton $w.f.b0 -text "none" -command "grabber setSoftwareScale none" \ 
     218            -padx 0 -pady 0 \ 
     219            -anchor w -variable setSoftwareScale -font $f -relief flat -value "none" 
     220        radiobutton $w.f.b1 -text "960p" -command "grabber setSoftwareScale 960p" \ 
     221            -padx 0 -pady 0 \ 
     222            -anchor w -variable setSoftwareScale -font $f -relief flat -value "9600p" 
     223        radiobutton $w.f.b2 -text "720p" -command "grabber setSoftwareScale 720p" \ 
     224            -padx 0 -pady 0 \ 
     225            -anchor w -variable setSoftwareScale -font $f -relief flat -value "720p" 
     226        radiobutton $w.f.b3 -text "576p" -command "grabber setSoftwareScale 576p" \ 
     227            -padx 0 -pady 0 \ 
     228            -anchor w -variable setSoftwareScale -font $f -relief flat -value "576p" 
     229        radiobutton $w.f.b4 -text "480p" -command "grabber setSoftwareScale 480p" \ 
     230            -padx 0 -pady 0 \ 
     231            -anchor w -variable setSoftwareScale -font $f -relief flat -value "480p" 
     232    } 
     233    pack $w.f.scaling $w.f.b0 $w.f.b1 $w.f.b2 $w.f.b3 $w.f.b4 -fill x -side left 
     234 
     235    pack $w.title $w.f -fill x -expand 1 
     236 
     237    set setSoftwareScale "none" 
     238    set softwareScaleButtons $w.f 
     239    set_software_scale_buttons_state 
    190240} 
    191241