I am a newbie to Qt and also have limited knowledge of C++. I am learning Qt using C++ GUI Programming with Qt4 and have some doubt on the Qt codes in creating a dialog. Here as follows is a function of flicked(): 
void FindDialog::findClicked()
{
    QString text = lineEdit->text();
    Qt::CaseSensitivity cs =
            caseCheckBox->isChecked() ? Qt::CaseSensitive
                                      : Qt::CaseInsensitive;
    if (backwardCheckBox->isChecked()) {
        emit findPrevious(text, cs);
    } else {
        emit findNext(text, cs);
    }
}
The source of the code is at finddialog.cpp 
I don't understand the meaning of the two operators ? and : above. Anyone can explain to me what are they used for? 
 
    