Beispiel #1
0
 void onToggleDisabled(Event& ev)
 {
   bool state = !m_disableButton.isSelected();
   m_button.setEnabled(state);
   m_toggleButton.setEnabled(state);
   m_checkBox.setEnabled(state);
   m_radioButton1.setEnabled(state);
   m_radioButton2.setEnabled(state);
   m_radioButton3.setEnabled(state);
   m_radioButton4.setEnabled(state);
 }
Beispiel #2
0
  MainFrame()
    : Frame(L"WebCam")
    , m_driverLabel(L"Driver:", this)
    , m_driver(this)
    , m_webcam(this)
    , m_start(L"Start", this)
    , m_capture(L"Capture", this)
    , m_copy(L"Copy", this)
    , m_rateLabel(L"Preview Rate (milliseconds):", this)
    , m_rate(1, 1000, 100, this)
    , m_rateEdit(L"", this, TextEdit::Styles::Default +
			    TextEdit::Styles::ReadOnly)
  {
    setLayout(Bix::parse(L"Y[X[%,f%],X[fX[],%,fX[]],X[fX[],%,%,%,fX[]],%,X[f%,%]]",
			 &m_driverLabel, &m_driver,
			 &m_webcam,
			 &m_start, &m_capture, &m_copy,
			 &m_rateLabel,
			 &m_rate, &m_rateEdit));

    m_start.setEnabled(m_driver.isEnabled());
    m_capture.setEnabled(m_driver.isEnabled());
    m_copy.setEnabled(m_driver.isEnabled());
    m_rate.setEnabled(m_driver.isEnabled());

    m_rateEdit.setPreferredSize(Size(64, m_rateEdit.getPreferredSize().h));

    m_start.Click.connect(Bind(&MainFrame::onStart, this));
    m_capture.Click.connect(Bind(&MainFrame::onCapture, this));
    m_copy.Click.connect(Bind(&WebCam::copy, &m_webcam));
    m_rate.Change.connect(Bind(&MainFrame::onChangeRate, this));

    // update m_rateEdit text
    onChangeRate();

    setSize(getPreferredSize());
  }