diff options
| -rw-r--r-- | src/mainwindow.cc | 56 | ||||
| -rw-r--r-- | src/mainwindow.h | 12 | 
2 files changed, 46 insertions, 22 deletions
| diff --git a/src/mainwindow.cc b/src/mainwindow.cc index 43268e1..fa2287a 100644 --- a/src/mainwindow.cc +++ b/src/mainwindow.cc @@ -31,6 +31,9 @@  /*   * $Log$ + * Revision 1.36  2005/07/23 09:09:24  deva + * *** empty log message *** + *   * Revision 1.35  2005/07/22 19:20:28  deva   * *** empty log message ***   * @@ -260,13 +263,23 @@ void MainWindow::createGui()    gb->setFlat(true);    g0->addWidget(gb, 0, 1); +  int output_width = this->width() -  +    (int)(BUTTON_WIDTH * unit) -  +    (gb->insideMargin() * 2) -  +    g1->margin() * 2 - +    g0->margin() * 2; + +  int output_height = this->height() -  +    (int)(3 * BUTTON_HEIGHT * unit) -  +    g1->margin() * 5 - +    g0->margin() * 3; +    img_recedge = new QLabel(this);    img_recedge->setBackgroundColor(QColor(160,160,160)); -  img_recedge->setFixedSize(video_width + 20, video_height + 20); +  img_recedge->setFixedSize(output_width, output_height);    img_live = new VideoWidget(img_recedge); -  //  img_live->setErasePixmap( *img_dummy ); -  img_live->setFixedSize(video_width, video_height); +  img_live->setFixedSize(output_width - 20, output_height - 20);    img_live->move(10,10);    g1->addMultiCellWidget ( img_recedge, 0, 0, 0, 2, Qt::AlignHCenter); @@ -274,7 +287,7 @@ void MainWindow::createGui()    lbl_cpr = createLabel("", 18, 3);    g1->addMultiCellWidget ( lbl_cpr, 1, 1, 0, 1); -  btn_cpr = createButton("", 8, 3); +  btn_cpr = createButton("");    btn_cpr->setFocus();    btn_cpr->setPixmap(*img_cpr);    QObject::connect( btn_cpr, SIGNAL(clicked()), this, SLOT(cpr_clicked()) ); @@ -284,48 +297,44 @@ void MainWindow::createGui()    lbl_name = createLabel("", 18, 2);    g1->addMultiCellWidget ( lbl_name, 2, 2, 0, 2);  /* -  btn_clear = createButton("Clear", 8, 3); -  //  btn_clear->setPixmap(*img_clear); +  btn_clear = createButton(""); +  btn_clear->setPixmap(*img_clear);    QObject::connect( btn_clear, SIGNAL(clicked()), this, SLOT(clear_clicked()) );    // Will also be connected in the MGUI code    g1->addWidget(btn_clear, 1, 2);  */    // Rec + Shot + Freeze buttons -  btn_rec = createButton("", 8, 3); +  btn_rec = createButton("");    btn_rec->setPixmap(*img_record);    QObject::connect( btn_rec, SIGNAL(clicked()), this, SLOT(rec_clicked()) );    g1->addWidget(btn_rec, 3, 0); -  btn_shoot = createButton("", 8, 3); +  btn_shoot = createButton("");    btn_shoot->setPixmap(*img_snapshot);    QObject::connect( btn_shoot, SIGNAL(clicked()), this, SLOT(shoot_clicked()) );    g1->addWidget(btn_shoot, 3, 1); -  btn_freeze = createButton("", 8, 3); +  btn_freeze = createButton("");    btn_freeze->setPixmap(*img_freeze);    QObject::connect( btn_freeze, SIGNAL(clicked()), this, SLOT(freeze_clicked()) );    g1->addWidget(btn_freeze, 3, 2);    // History widgets -  QImage dummy_resized = img_dummy->smoothScale(240, 192); +  int w = (int)(BUTTON_WIDTH * unit); +  int h = (int)(192.0f / (240.0f / ((float)BUTTON_WIDTH * unit))); + +  QImage dummy_resized = img_dummy->smoothScale(w, h);    for(int i = 0; i < NUM_HISTORY; i++) {      img_history[i] = new QLabel(gb);      img_history[i]->setPixmap(dummy_resized); -    img_history[i]->setFixedSize(240,192); -    //    g2->addWidget(img_history[i], i, 0, Qt::AlignHCenter & Qt::AlignVCenter); -    //    g2->addWidget(img_history[i]); +    img_history[i]->setFixedSize(w, h);    } -  // FIXME: Create button like the other buttons -  btn_clear = new QPushButton("Clear", gb); -  btn_clear->setFont( QFont( "Arial", (int)(unit * 3 / 2), QFont::Bold ) ); -  btn_clear->setFixedHeight((int)(unit * 3)); - +  // Clear button +  btn_clear = createButton("", gb);    btn_clear->setPixmap(*img_clear);    QObject::connect( btn_clear, SIGNAL(clicked()), this, SLOT(clear_clicked()) ); -  // Will also be connected in the MGUI code -    // Statusbar    status = new QStatusBar(this); @@ -393,7 +402,12 @@ void MainWindow::redraw_edge()  QPushButton *MainWindow::createButton(char *caption, int width, int height)  { -  QPushButton *btn = new QPushButton(caption, this); +  return createButton(caption, this, width, height); +} + +QPushButton *MainWindow::createButton(char *caption, QWidget *parent, int width, int height) +{ +  QPushButton *btn = new QPushButton(caption, parent);    btn->setFont( QFont( "Arial", (int)(unit * height / 2), QFont::Bold ) );    btn->setFixedHeight((int)(unit * height));    return btn; diff --git a/src/mainwindow.h b/src/mainwindow.h index 1a2b76d..5a5f99c 100644 --- a/src/mainwindow.h +++ b/src/mainwindow.h @@ -31,6 +31,9 @@  /*   * $Log$ + * Revision 1.18  2005/07/23 09:09:24  deva + * *** empty log message *** + *   * Revision 1.17  2005/07/22 19:20:28  deva   * *** empty log message ***   * @@ -93,7 +96,13 @@ using namespace std;  #include "info_gui.h" +/** + * First some GUI specs + */  #define NUM_HISTORY 3 +// Button sizes in cm (metric) +#define BUTTON_WIDTH 12 +#define BUTTON_HEIGHT 3  /**    * Textstrings @@ -204,7 +213,8 @@ private:    int video_width;    int video_height; -  QPushButton *createButton(char *caption, int width, int height); +  QPushButton *createButton(char *caption, int width = BUTTON_WIDTH, int height = BUTTON_HEIGHT); +  QPushButton *createButton(char *caption, QWidget *parent, int width = BUTTON_WIDTH, int height = BUTTON_HEIGHT);    QLabel *createLabel(char *caption, int width, int height);  }; | 
