Esempio n. 1
0
 private void updateUI() {
   lblLastFrameProcessed.setText(Integer.toString(framesProcessed.get()));
   lblFramesProcessedPerSecond.setText(framesProcessRate.getFormattedRate());
   lblLastFrameSaved.setText(Integer.toString(framesSaved.get()));
   if (previewEnabled) {
     previewPicture.updatePicture();
   }
   if (audioBufferInUse && parent.isAudioBufferInUse()) {
     switch (audioBufferStatus) {
       case REGULAR:
         audioBuffer.setMaximum(audioBufferTotal);
         audioBuffer.setValue(audioBufferOccupied);
         lblAudioBuffer1.setText(
             (audioBufferOccupied / 1024)
                 + Strings.lblRenderAudioBuffer1
                 + (audioBufferOccupied * 100 / audioBufferTotal)
                 + Strings.lblRenderAudioBuffer2);
         lblAudioBuffer2.setText(
             Strings.lblRenderAudioBuffer3
                 + (audioBufferTotal / 1024)
                 + Strings.lblRenderAudioBuffer4);
         btnFlushAudioBuffer.setText(Strings.btnRenderAudioBufferFlush);
         enabledAudioWidgets(audioBufferOccupied > 0 && audioBufferTotal > 0);
         break;
       case FLUSHING:
       case DESTROYED:
         audioBuffer.setMaximum(1);
         audioBuffer.setValue(0);
         btnFlushAudioBuffer.setEnabled(false);
         break;
     }
   } else {
     enabledAudioWidgets(false);
   }
 }
  public HttpServerExample(QWidget parent) {
    server = new HttpServer(this);
    if (!server.start()) {
      QMessageBox.critical(
          this, tr("HTTP Server"), tr("Unable to start the server: ") + server.errorString());
      close();
    }

    QPushButton publishButton = new QPushButton(this);
    publishButton.setText("Publish");
    editor = new QTextEdit(this);

    editor.setPlainText(
        "<h1>Server is up and running!</h1>"
            + "You should be able to view it in a normal web browser."
            + " Try this address: http://localhost:"
            + server.serverPort());

    QGridLayout layout = new QGridLayout(this);
    setLayout(layout);
    layout.addWidget(publishButton);
    layout.addWidget(editor);

    publishButton.clicked.connect(this, "publish()");

    setWindowTitle(tr("Simple HTTP Server"));
    setWindowIcon(new QIcon("classpath:com/trolltech/images/qt-logo.png"));
  }
  public void setupUi(QWidget AnalisisForm) {
    AnalisisForm.setObjectName("AnalisisForm");
    AnalisisForm.resize(new QSize(568, 351).expandedTo(AnalisisForm.minimumSizeHint()));
    gridLayout_3 = new QGridLayout(AnalisisForm);
    gridLayout_3.setObjectName("gridLayout_3");
    horizontalLayout = new QHBoxLayout();
    horizontalLayout.setObjectName("horizontalLayout");
    tableWidget = new QTableWidget(AnalisisForm);
    tableWidget.setObjectName("tableWidget");

    horizontalLayout.addWidget(tableWidget);

    verticalLayout_2 = new QVBoxLayout();
    verticalLayout_2.setObjectName("verticalLayout_2");
    groupBox = new QGroupBox(AnalisisForm);
    groupBox.setObjectName("groupBox");
    groupBox.setMinimumSize(new QSize(0, 0));
    gridLayout = new QGridLayout(groupBox);
    gridLayout.setObjectName("gridLayout");
    verticalLayout = new QVBoxLayout();
    verticalLayout.setObjectName("verticalLayout");
    pasosButton = new QPushButton(groupBox);
    pasosButton.setObjectName("pasosButton");

    verticalLayout.addWidget(pasosButton);

    completoButton = new QPushButton(groupBox);
    completoButton.setObjectName("completoButton");

    verticalLayout.addWidget(completoButton);

    gridLayout.addLayout(verticalLayout, 0, 0, 1, 1);

    verticalLayout_2.addWidget(groupBox);

    groupBox_2 = new QGroupBox(AnalisisForm);
    groupBox_2.setObjectName("groupBox_2");
    groupBox_2.setMaximumSize(new QSize(16777215, 80));
    gridLayout_2 = new QGridLayout(groupBox_2);
    gridLayout_2.setObjectName("gridLayout_2");
    cerrarButton = new QPushButton(groupBox_2);
    cerrarButton.setObjectName("cerrarButton");

    gridLayout_2.addWidget(cerrarButton, 0, 0, 1, 1);

    verticalLayout_2.addWidget(groupBox_2);

    horizontalLayout.addLayout(verticalLayout_2);

    gridLayout_3.addLayout(horizontalLayout, 0, 0, 1, 1);

    retranslateUi(AnalisisForm);
    cerrarButton.clicked.connect(AnalisisForm, "close()");

    AnalisisForm.connectSlotsByName();
  } // setupUi
Esempio n. 4
0
  public void retranslateUi(QWidget Form) {
    this.expandButton.connectSlotsByName();
    this.deleteButton.connectSlotsByName();

    this.expandButton.clicked.connect(this, "big()");
    this.deleteButton.clicked.connect(this, "delete()");

    expand = false;

    this.expandButton.raise();
    this.deleteButton.raise();
    holder.lower();

    fNameLabel.setText(
        com.trolltech.qt.core.QCoreApplication.translate("Form", "First name:", null));
    lNameLabel.setText(
        com.trolltech.qt.core.QCoreApplication.translate("Form", "Last name:", null));
    tLatesLabel.setText(
        com.trolltech.qt.core.QCoreApplication.translate("Form", "Total Lates:", null));
    tAbsentLabel.setText(
        com.trolltech.qt.core.QCoreApplication.translate("Form", "Total Absents:", null));
    cStatusLabel.setText(
        com.trolltech.qt.core.QCoreApplication.translate("Form", "Current Status:", null));
    deleteButton.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", " X", null));
    fname.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "TextLabel", null));
    lname.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "TextLabel", null));
    cStatus.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "TextLabel", null));
    lates.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "TextLabel", null));
    absents.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "TextLabel", null));
    expandButton.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "\\/", null));
    timeLabel.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "Timetable:", null));
    idLabel.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "Student ID:", null));
    id.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "TextLabel", null));
    curLoclabel.setText(
        com.trolltech.qt.core.QCoreApplication.translate("Form", "Current location:", null));
    curLocation.setText(
        com.trolltech.qt.core.QCoreApplication.translate("Form", "TextLabel", null));
    curclaslab.setText(
        com.trolltech.qt.core.QCoreApplication.translate("Form", "Current class:", null));
    currClass.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "TextLabel", null));

    entryLabel.setText(
        com.trolltech.qt.core.QCoreApplication.translate("Form", "Entry Time:", null));
    exitLabel.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "Exit Time:", null));
    entryTime.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "Text Label", null));
    exitTime.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "Text Label", null));
    p1.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "TextLabel", null));
    p2.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "TextLabel", null));
    p3.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "TextLabel", null));
    p4.setText(com.trolltech.qt.core.QCoreApplication.translate("Form", "TextLabel", null));
  } // retranslateUi
Esempio n. 5
0
 @SuppressWarnings("unused")
 private void onFlushAudioBuffer() {
   audioBufferStatus = AudioBufferStatus.FLUSHING;
   enabledAudioWidgets(false);
   btnFlushAudioBuffer.setText(Strings.btnRenderAudioBufferFlushing);
   parent.flushAudioBuffer(false);
 }
 void retranslateUi(QWidget AnalisisForm) {
   AnalisisForm.setWindowTitle(
       com.trolltech.qt.core.QCoreApplication.translate("AnalisisForm", "Form", null));
   tableWidget.clear();
   tableWidget.setColumnCount(0);
   tableWidget.setRowCount(0);
   groupBox.setTitle(
       com.trolltech.qt.core.QCoreApplication.translate("AnalisisForm", "Acciones", null));
   pasosButton.setText(
       com.trolltech.qt.core.QCoreApplication.translate("AnalisisForm", "Pasos", null));
   completoButton.setText(
       com.trolltech.qt.core.QCoreApplication.translate("AnalisisForm", "Completo", null));
   groupBox_2.setTitle("");
   cerrarButton.setText(
       com.trolltech.qt.core.QCoreApplication.translate("AnalisisForm", "Cerrar", null));
 } // retranslateUi
Esempio n. 7
0
 public void big() {
   if (!expand) {
     holder.setFixedHeight(215);
     this.tAbsentLabel.show();
     this.tLatesLabel.show();
     this.absents.show();
     this.lates.show();
     expandButton.setText("/\\");
     expandButton.setGeometry(expandButton.x(), 170, expandButton.width(), expandButton.height());
     expand = true;
   } else {
     holder.setFixedHeight(101);
     this.tAbsentLabel.hide();
     this.tLatesLabel.hide();
     this.absents.hide();
     this.lates.hide();
     expandButton.setText("\\/");
     expandButton.setGeometry(expandButton.x(), 60, expandButton.width(), expandButton.height());
     expand = false;
   }
 }
 void retranslateUi(QDialog AboutTextRecognition) {
   textEdit.setHtml(
       com.trolltech.qt.core.QCoreApplication.translate(
           "AboutTextRecognition",
           "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
               + "<html><head><meta name=\"qrichtext\" content=\"1\" /><title>Image Viewer</title><style type=\"text/css\">\n"
               + "p, li { white-space: pre-wrap; }\n"
               + "</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
               + "<p align=\"center\" style=\" margin-top:16px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:10pt; font-weight:600;\"><span style=\" font-size:x-large;\">TextRecognition</span></p>\n"
               + "<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:10pt;\">This application was written to show the various aspects of TextRecognition library.</p></body></html>"));
   okButton.setText(
       com.trolltech.qt.core.QCoreApplication.translate("AboutTextRecognition", "OK"));
 } // retranslateUi
  public void setupUi(QDialog AboutTextRecognition) {
    AboutTextRecognition.setObjectName("AboutTextRecognition");
    AboutTextRecognition.resize(
        new QSize(622, 412).expandedTo(AboutTextRecognition.minimumSizeHint()));
    AboutTextRecognition.setAutoFillBackground(false);
    gridLayout = new QGridLayout(AboutTextRecognition);
    gridLayout.setObjectName("gridLayout");
    gridLayout1 = new QGridLayout();
    gridLayout1.setObjectName("gridLayout1");
    textEdit = new QTextEdit(AboutTextRecognition);
    textEdit.setObjectName("textEdit");
    QPalette palette = new QPalette();
    palette.setColor(
        QPalette.ColorGroup.Active, QPalette.ColorRole.Base, new QColor(224, 223, 227));
    palette.setColor(
        QPalette.ColorGroup.Inactive, QPalette.ColorRole.Base, new QColor(224, 223, 227));
    palette.setColor(
        QPalette.ColorGroup.Disabled, QPalette.ColorRole.Base, new QColor(224, 223, 227));
    textEdit.setPalette(palette);
    textEdit.setAcceptDrops(true);
    textEdit.setFrameShape(com.trolltech.qt.gui.QFrame.Shape.Box);
    textEdit.setUndoRedoEnabled(false);
    textEdit.setReadOnly(true);

    gridLayout1.addWidget(textEdit, 0, 1, 2, 1);

    spacerItem =
        new QSpacerItem(
            20,
            221,
            com.trolltech.qt.gui.QSizePolicy.Policy.Minimum,
            com.trolltech.qt.gui.QSizePolicy.Policy.Expanding);

    gridLayout1.addItem(spacerItem, 1, 0, 1, 1);

    gridLayout.addLayout(gridLayout1, 0, 0, 1, 3);

    spacerItem1 =
        new QSpacerItem(
            40,
            20,
            com.trolltech.qt.gui.QSizePolicy.Policy.Expanding,
            com.trolltech.qt.gui.QSizePolicy.Policy.Minimum);

    gridLayout.addItem(spacerItem1, 1, 0, 1, 1);

    okButton = new QPushButton(AboutTextRecognition);
    okButton.setObjectName("okButton");

    gridLayout.addWidget(okButton, 1, 1, 1, 1);

    spacerItem2 =
        new QSpacerItem(
            40,
            20,
            com.trolltech.qt.gui.QSizePolicy.Policy.Expanding,
            com.trolltech.qt.gui.QSizePolicy.Policy.Minimum);

    gridLayout.addItem(spacerItem2, 1, 2, 1, 1);

    retranslateUi(AboutTextRecognition);
    okButton.clicked.connect(AboutTextRecognition, "accept()");

    AboutTextRecognition.connectSlotsByName();
  } // setupUi
Esempio n. 10
0
 private void initUI() {
   final QHBoxLayout mainHbox = new QHBoxLayout();
   {
     final QGroupBox videoBox = new QGroupBox(Strings.grpRenderingVideoFrames);
     final QVBoxLayout videoVbox = new QVBoxLayout();
     {
       final QHBoxLayout hbox = new QHBoxLayout();
       hbox.addWidget(new QLabel(Strings.lblLastFrameProcessed));
       lblLastFrameProcessed = new QLabel(Strings.lblLastFrameProcessedDefault);
       lblLastFrameProcessed.setAlignment(AlignmentFlag.AlignRight);
       hbox.addWidget(lblLastFrameProcessed);
       videoVbox.addLayout(hbox, 0);
     }
     {
       final QHBoxLayout hbox = new QHBoxLayout();
       hbox.addWidget(new QLabel(Strings.lblFramesProcessedPerSecond));
       lblFramesProcessedPerSecond = new QLabel(Strings.lblFramesProcessedPerSecondDefault);
       lblFramesProcessedPerSecond.setAlignment(AlignmentFlag.AlignRight);
       hbox.addWidget(lblFramesProcessedPerSecond);
       videoVbox.addLayout(hbox, 0);
     }
     {
       final QHBoxLayout hbox = new QHBoxLayout();
       hbox.addWidget(new QLabel(Strings.lblLastFrameSaved));
       lblLastFrameSaved = new QLabel(Strings.lblLastFrameSavedDefault);
       lblLastFrameSaved.setAlignment(AlignmentFlag.AlignRight);
       hbox.addWidget(lblLastFrameSaved);
       videoVbox.addLayout(hbox, 0);
     }
     {
       previewPicture =
           new UpdatablePicture(
               Files.iconRenderingDefault, maximumPreviewWidth, maximumPreviewHeight);
       videoVbox.addWidget(previewPicture, 1);
     }
     {
       previewEnabledCheckbox = new QCheckBox(Strings.lblEnablePreview);
       previewEnabledCheckbox.stateChanged.connect(this, "updatePreviewEnabled()");
       previewEnabled = getSettings().getPreviewEnabled();
       previewEnabledCheckbox.setChecked(previewEnabled);
       videoVbox.addWidget(previewEnabledCheckbox, 0, AlignmentFlag.AlignHCenter);
     }
     videoBox.setLayout(videoVbox);
     mainHbox.addWidget(videoBox, 1);
   }
   {
     final QGroupBox audioBox = new QGroupBox(Strings.grpRenderingAudioBuffer);
     final QVBoxLayout audioVbox = new QVBoxLayout();
     {
       audioBuffer = new QProgressBar();
       audioBuffer.setOrientation(Orientation.Vertical);
       audioBuffer.setSizePolicy(Policy.Expanding, Policy.Expanding);
       audioVbox.addWidget(audioWidget(audioBuffer), 1, AlignmentFlag.AlignHCenter);
       lblAudioBuffer1 = new QLabel();
       audioVbox.addWidget(audioWidget(lblAudioBuffer1), 0, AlignmentFlag.AlignCenter);
       lblAudioBuffer2 = new QLabel();
       audioVbox.addWidget(audioWidget(lblAudioBuffer2), 0, AlignmentFlag.AlignCenter);
       btnFlushAudioBuffer = new QPushButton(Strings.btnRenderAudioBufferFlush);
       btnFlushAudioBuffer.clicked.connect(this, "onFlushAudioBuffer()");
       btnFlushAudioBuffer.setEnabled(false);
       audioVbox.addWidget(audioWidget(btnFlushAudioBuffer), 0, AlignmentFlag.AlignCenter);
     }
     audioBox.setLayout(audioVbox);
     mainHbox.addWidget(audioBox, 0);
   }
   setLayout(mainHbox);
 }
Esempio n. 11
0
  public void setupUi(QWidget Form) {
    expand = false;
    holder = new QWidget(Form);
    Form.layout().addWidget(holder);
    holder.setObjectName("holder");
    holder.setGeometry(new QRect(0, 0, 621, 101));

    QSizePolicy sizePolicy =
        new QSizePolicy(
            com.trolltech.qt.gui.QSizePolicy.Policy.Minimum,
            com.trolltech.qt.gui.QSizePolicy.Policy.Fixed);
    sizePolicy.setHorizontalStretch((byte) 0);
    sizePolicy.setVerticalStretch((byte) 0);
    sizePolicy.setHeightForWidth(holder.sizePolicy().hasHeightForWidth());
    holder.setSizePolicy(sizePolicy);
    holder.setMinimumSize(new QSize(621, 101));

    holder.setStyleSheet(
        "QWidget#holder{\n"
            + "	background-color:  rgba(52, 52, 52, 255);\n"
            + "    border-style: solid;\n"
            + "	border-color: rgba(255, 255, 255, 150);\n"
            + "    border-width: 3px;\n"
            + "}\n"
            + "\n"
            + "QLabel{\n"
            + "	font: 16pt \"Calibri\";\n"
            + "    color: white;\n"
            + "}\n"
            + "\n"
            + "#fNameLabel, #lNameLabel, #tLatesLabel, #tAbsentLabel, #cStatusLabel, #timeLabel, #idLabel, #curclaslab, #curLoclabel, #entryLabel, #exitLabel{\n"
            + "font: 12pt \"Calibri\";\n"
            + "    color: white;\n"
            + "}\n"
            + "QPushButton{\n"
            + "    background-color: white;\n"
            + "	border-radius: 10px;\n"
            + "}\n"
            + "\n"
            + "QPushButton:hover{\n"
            + "	background-color: rgb(220, 220, 220); }\n"
            + "#holder:hover{\n"
            + "	    border-width: 4px; background-color:rgba(30, 30, 30, 255);\n"
            + "}\n"
            + "\n"
            + "#p1, #p2, #p3, #p4{\n"
            + "	border-style: solid;\n"
            + "	border-color: rgba(0,0,0,0);\n"
            + "    border-width: 3px;\n"
            + "    background-color: white;\n"
            + "    color: black;\n"
            + "}\n"
            + "\n"
            + "#p1, #p2, #p3{\n"
            + "	border-right-color: rgb(0, 0, 0);\n"
            + "\n"
            + "}");
    fNameLabel = new QLabel(holder);
    fNameLabel.setObjectName("fNameLabel");
    fNameLabel.setGeometry(new QRect(10, 0, 101, 31));
    lNameLabel = new QLabel(holder);
    lNameLabel.setObjectName("lNameLabel");
    lNameLabel.setGeometry(new QRect(10, 30, 81, 31));
    tLatesLabel = new QLabel(holder);
    tLatesLabel.setObjectName("tLatesLabel");
    tLatesLabel.setGeometry(new QRect(10, 130, 111, 31));
    tAbsentLabel = new QLabel(holder);
    tAbsentLabel.setObjectName("tAbsentLabel");
    tAbsentLabel.setGeometry(new QRect(270, 130, 111, 31));
    cStatusLabel = new QLabel(holder);
    cStatusLabel.setObjectName("cStatusLabel");
    cStatusLabel.setGeometry(new QRect(270, 0, 111, 31));

    deleteButton = new QPushButton(holder);
    deleteButton.setObjectName("deleteButton");
    deleteButton.setGeometry(new QRect(580, 10, 31, 31));

    fname = new QLabel(holder);
    fname.setObjectName("fname");
    fname.setGeometry(new QRect(120, 0, 131, 31));

    lname = new QLabel(holder);
    lname.setObjectName("lname");
    lname.setGeometry(new QRect(120, 30, 131, 31));

    cStatus = new QLabel(holder);
    cStatus.setObjectName("cStatus");
    cStatus.setGeometry(new QRect(390, 0, 101, 31));

    lates = new QLabel(holder);
    lates.setObjectName("lates");
    lates.setGeometry(new QRect(120, 130, 111, 31));

    absents = new QLabel(holder);
    absents.setObjectName("absents");
    absents.setGeometry(new QRect(390, 130, 111, 31));
    absents.setStyleSheet("");

    expandButton = new QPushButton(holder);
    expandButton.setObjectName("expandButton");
    expandButton.setGeometry(new QRect(580, 60, 31, 31));

    timeLabel = new QLabel(holder);
    timeLabel.setObjectName("timeLabel");
    timeLabel.setGeometry(new QRect(10, 170, 111, 31));

    idLabel = new QLabel(holder);
    idLabel.setObjectName("idLabel");
    idLabel.setGeometry(new QRect(10, 60, 111, 31));
    id = new QLabel(holder);
    id.setObjectName("id");
    id.setGeometry(new QRect(120, 60, 131, 31));

    curLoclabel = new QLabel(holder);
    curLoclabel.setObjectName("curLoclabel");
    curLoclabel.setGeometry(new QRect(270, 100, 111, 31));
    curLocation = new QLabel(holder);
    curLocation.setObjectName("curLocation");
    curLocation.setGeometry(new QRect(390, 100, 121, 31));
    curLocation.setStyleSheet("");

    curclaslab = new QLabel(holder);
    curclaslab.setObjectName("curclaslab");
    curclaslab.setGeometry(new QRect(10, 100, 111, 31));
    currClass = new QLabel(holder);
    currClass.setObjectName("currClass");
    currClass.setGeometry(new QRect(120, 100, 121, 31));
    currClass.setStyleSheet("");

    entryLabel = new QLabel(holder);
    entryLabel.setObjectName("entryLabel");
    entryLabel.setGeometry(new QRect(270, 30, 121, 31));

    exitLabel = new QLabel(holder);
    exitLabel.setObjectName("exitLabel");
    exitLabel.setGeometry(new QRect(270, 60, 111, 31));

    entryTime = new QLabel(holder);
    entryTime.setObjectName("entryTime");
    entryTime.setGeometry(new QRect(390, 30, 71, 31));

    exitTime = new QLabel(holder);
    exitTime.setObjectName("exitTime");
    exitTime.setGeometry(new QRect(390, 60, 71, 31));

    p1 = new QLabel(holder);
    p1.setObjectName("p1");
    p1.setGeometry(new QRect(120, 170, 101, 31));
    p2 = new QLabel(holder);
    p2.setObjectName("p2");
    p2.setGeometry(new QRect(220, 170, 101, 31));
    p3 = new QLabel(holder);
    p3.setObjectName("p3");
    p3.setGeometry(new QRect(320, 170, 101, 31));
    p4 = new QLabel(holder);
    p4.setObjectName("p4");
    p4.setGeometry(new QRect(420, 170, 101, 31));

    /*
    label = new QLabel(holder);
    label.setObjectName("label");
    label.setGeometry(new QRect(480, 10, 81, 71));
    label.setPixmap(new QPixmap(("classpath:admin_resource/logout.png")));
    label.setScaledContents(true);
    */

    this.expandButton.raise();
    this.deleteButton.raise();

    retranslateUi(Form);
  } // setupUi