From 0fa42ce4822c7b7cdfde6d0fe93abb2d722bc230 Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Sun, 21 Sep 2014 21:22:39 +0200 Subject: indicate UI contains a "video feed" element --- facetracknoir/facetracknoir.cpp | 28 +++++++------ facetracknoir/facetracknoir.h | 13 +++--- facetracknoir/facetracknoir.ui | 74 +++++++++++++++++++++++------------ facetracknoir/main-facetracknoir.qrc | 1 + facetracknoir/uielements/no-feed.png | Bin 0 -> 20196 bytes 5 files changed, 72 insertions(+), 44 deletions(-) create mode 100644 facetracknoir/uielements/no-feed.png diff --git a/facetracknoir/facetracknoir.cpp b/facetracknoir/facetracknoir.cpp index 5f4a4e11..3f6d641e 100644 --- a/facetracknoir/facetracknoir.cpp +++ b/facetracknoir/facetracknoir.cpp @@ -94,10 +94,14 @@ FaceTrackNoIR::FaceTrackNoIR(QWidget *parent) : pProtocolDialog(NULL), pFilterDialog(NULL), kbd_quit(QKeySequence("Ctrl+Q"), this), - looping(0) + looping(0), + video_frame_layout(new QVBoxLayout()), + no_feed_pixmap(":/uielements/no-feed.png") { ui.setupUi(this); setFixedSize(size()); + ui.video_frame_label->setPixmap(no_feed_pixmap); + updateButtonState(false); _keyboard_shortcuts = 0; _curve_config = 0; @@ -163,6 +167,7 @@ FaceTrackNoIR::~FaceTrackNoIR() { save(); if (Libraries) delete Libraries; + delete video_frame_layout; } QFrame* FaceTrackNoIR::get_video_widget() { @@ -275,20 +280,17 @@ void FaceTrackNoIR::loadSettings() { void FaceTrackNoIR::updateButtonState(bool running) { - bool e = !running; - ui.iconcomboProfile->setEnabled ( e ); - ui.btnLoad->setEnabled ( e ); - ui.btnSaveAs->setEnabled ( e ); - ui.btnStartTracker->setEnabled ( e ); + bool not_running = !running; + ui.iconcomboProfile->setEnabled ( not_running ); + ui.btnStartTracker->setEnabled ( not_running ); ui.btnStopTracker->setEnabled ( running ); - ui.iconcomboProtocol->setEnabled ( e ); - ui.btnShowServerControls->setEnabled ( e ); - ui.iconcomboFilter->setEnabled ( e ); - ui.iconcomboTrackerSource->setEnabled(e); - ui.cbxSecondTrackerSource->setEnabled(e); - - ui.btnStartTracker->setEnabled(e); + ui.iconcomboProtocol->setEnabled ( not_running ); + ui.iconcomboFilter->setEnabled ( not_running ); + ui.iconcomboTrackerSource->setEnabled(not_running); + ui.cbxSecondTrackerSource->setEnabled(not_running); + ui.btnStartTracker->setEnabled(not_running); ui.btnStopTracker->setEnabled(running); + ui.video_frame_label->setVisible(not_running); } void FaceTrackNoIR::startTracker( ) { diff --git a/facetracknoir/facetracknoir.h b/facetracknoir/facetracknoir.h index 22a4363e..f005a9c1 100644 --- a/facetracknoir/facetracknoir.h +++ b/facetracknoir/facetracknoir.h @@ -32,13 +32,14 @@ #include #include #include +#include +#include +#include #if !defined(_WIN32) # include "qxt-mini/QxtGlobalShortcut" #else # include #endif -#include -#include #include "ui_facetracknoir.h" @@ -117,18 +118,20 @@ private: void createIconGroupBox(); void loadSettings(); - void updateButtonState(bool); + void updateButtonState(bool running); QList dlopen_filters; QList dlopen_trackers; QList dlopen_protocols; QShortcut kbd_quit; - + int looping; + + QLayout* video_frame_layout; + QPixmap no_feed_pixmap; #ifndef _WIN32 void bind_keyboard_shortcut(QxtGlobalShortcut&, key_opts& k); #endif void fill_profile_cbx(); - int looping; private slots: void open(); diff --git a/facetracknoir/facetracknoir.ui b/facetracknoir/facetracknoir.ui index ab332288..d2c78461 100644 --- a/facetracknoir/facetracknoir.ui +++ b/facetracknoir/facetracknoir.ui @@ -25,9 +25,9 @@ - 715 - 110 - 151 + 760 + 280 + 96 38 @@ -54,7 +54,7 @@ - 90 + 120 20 169 137 @@ -298,8 +298,8 @@ 345 - 260 - 256 + 255 + 246 65 @@ -343,7 +343,7 @@ 345 175 - 256 + 246 65 @@ -385,9 +385,9 @@ - 630 - 175 - 221 + 345 + 335 + 246 65 @@ -429,8 +429,8 @@ - 630 - 260 + 625 + 180 221 65 @@ -485,16 +485,38 @@ 0 - - 0 - + + + + 0 + 0 + 320 + 240 + + + + + 0 + 0 + + + + + NoAntialias + false + + + + + + - 450 + 525 40 - 256 + 311 111 @@ -565,9 +587,9 @@ - 715 - 60 - 151 + 615 + 280 + 141 38 @@ -586,8 +608,8 @@ - 80 - 22 + 60 + 37 @@ -610,9 +632,9 @@ - 520 - 340 - 190 + 635 + 335 + 201 65 @@ -685,7 +707,7 @@ - 270 + 320 20 169 137 diff --git a/facetracknoir/main-facetracknoir.qrc b/facetracknoir/main-facetracknoir.qrc index 6cb2e300..e37c2529 100644 --- a/facetracknoir/main-facetracknoir.qrc +++ b/facetracknoir/main-facetracknoir.qrc @@ -4,5 +4,6 @@ images/settings16.png uielements/curves.png images/facetracknoir.png + uielements/no-feed.png diff --git a/facetracknoir/uielements/no-feed.png b/facetracknoir/uielements/no-feed.png new file mode 100644 index 00000000..7c2f52bf Binary files /dev/null and b/facetracknoir/uielements/no-feed.png differ -- cgit v1.2.3