示例#1
0
void Table::setSelection(int row, int column, bool suppressSignals)
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    bool oldSignalsState = tablewidget->blockSignals(suppressSignals);
    tablewidget->setCurrentCell(row, column);
    tablewidget->blockSignals(oldSignalsState);
}
示例#2
0
void Table::clear(bool suppressSignals)
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    bool oldSignalsState = tablewidget->blockSignals(suppressSignals);
    tablewidget->clear(); // or clearContents() ?
    tablewidget->blockSignals(oldSignalsState);
}
示例#3
0
  int addChildGuiWidget(GWEN_WIDGET *wChild) {
    QTabWidget *qw;
    QWidget *qChild;
    const char *s;
    QString text;

    qw=(QTabWidget*) GWEN_Widget_GetImplData(_widget, QT4_DIALOG_WIDGET_REAL);
    assert(qw);

    if (GWEN_Widget_GetType(wChild)!=GWEN_Widget_TypeTabPage) {
      DBG_ERROR(GWEN_LOGDOMAIN, "You can only add TabPages to a TabBook");
      return GWEN_ERROR_INVALID;
    }

    qChild=getQWidget(wChild);
    assert(qChild);

    s=GWEN_Widget_GetText(wChild, 0);
    if (s)
      text=QString::fromUtf8(s);

    qw->addTab(qChild, text);

    return 0;
  }
示例#4
0
void Tabs::setCurrentTab(int index, bool suppressSignals)
{
    QTabWidget *qtabwidget = static_cast<QTabWidget*>(getQWidget());
    bool oldSignalsState = qtabwidget->blockSignals(suppressSignals);
    qtabwidget->setCurrentIndex(index);
    qtabwidget->blockSignals(oldSignalsState);
}
示例#5
0
void Label::setText(std::string text, bool suppressSignals)
{
    QLabel *qlabel = static_cast<QLabel*>(getQWidget());
    bool oldSignalsState = qlabel->blockSignals(suppressSignals);
    qlabel->setText(QString::fromStdString(text));
    qlabel->blockSignals(oldSignalsState);
}
示例#6
0
void Table::setColumnCount(int count, bool suppressSignals)
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    bool oldSignalsState = tablewidget->blockSignals(suppressSignals);
    tablewidget->setColumnCount(count);
    tablewidget->blockSignals(oldSignalsState);
}
示例#7
0
void Table::setItemEditable(int row, int column, bool editable)
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    if(editable)
        tablewidget->item(row, column)->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled | Qt::ItemIsEditable);
    else
        tablewidget->item(row, column)->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled);
}
示例#8
0
void Table::setItem(int row, int column, std::string text, bool suppressSignals)
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    bool oldSignalsState = tablewidget->blockSignals(suppressSignals);
    QTableWidgetItem *item = tablewidget->item(row, column);
    if(!item) item = new QTableWidgetItem;
    item->setText(QString::fromStdString(text));
    tablewidget->setItem(row, column, item);
    tablewidget->blockSignals(oldSignalsState);
}
示例#9
0
std::string Table::saveState()
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    QByteArray hhState = tablewidget->horizontalHeader()->saveState();
    QByteArray vhState = tablewidget->verticalHeader()->saveState();
    size_t len1 = hhState.length(), len2 = vhState.length();
    std::string hh(hhState.constData(), hhState.length()), vh(vhState.constData(), vhState.length());
    std::string state = boost::lexical_cast<std::string>(len1) + ":" + boost::lexical_cast<std::string>(len2) + ":" + hh + vh;
    return state;
}
示例#10
0
void Table::setEditable(bool editable)
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    if(editable)
    {
        // TODO
    }
    else
    {
        tablewidget->setEditTriggers(QAbstractItemView::NoEditTriggers);
    }
}
示例#11
0
void Table::setItemImage(int row, int column, std::string data, int width, int height, bool suppressSignals)
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    bool oldSignalsState = tablewidget->blockSignals(suppressSignals);
    QTableWidgetItem *item = tablewidget->item(row, column);
    if(!item) item = new QTableWidgetItem;
    QImage::Format format = QImage::Format_RGB888;
    int bpp = 3; // bytes per pixel
    QImage image((unsigned char *)data.data(), width, height, bpp * width, format);
    item->setData(Qt::DecorationRole, QPixmap::fromImage(image.mirrored()));
    tablewidget->setItem(row, column, item);
    tablewidget->blockSignals(oldSignalsState);
}
示例#12
0
bool Table::restoreState(std::string state)
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    size_t d1 = state.find(":"), d2 = state.find(":", d1 + 1);
    std::string slen1 = state.substr(0, d1), slen2 = state.substr(d1 + 1, d2 - d1);
    size_t len1 = boost::lexical_cast<size_t>(slen1), len2 = boost::lexical_cast<size_t>(slen2);
    const char *s = state.c_str() + d2 + 1;
    QByteArray hhState(s, len1), vhState(s + len1, len2);
    bool ret = true;
    ret = ret && tablewidget->horizontalHeader()->restoreState(hhState);
    ret = ret && tablewidget->verticalHeader()->restoreState(vhState);
    return ret;
}
示例#13
0
  int addChildGuiWidget(GWEN_WIDGET *wChild) {
    QWidget *qw;
    QBoxLayout *qLayout;
    QWidget *qChild;

    qw=(QT4_DialogBox*) GWEN_Widget_GetImplData(_widget, QT4_DIALOG_WIDGET_REAL);
    assert(qw);

    qLayout=(QBoxLayout*) GWEN_Widget_GetImplData(_widget, QT4_DIALOG_WIDGET_LAYOUT);
    assert(qLayout);

    qChild=getQWidget(wChild);
    assert(qChild);

    qChild->setParent(qw);
    qLayout->addWidget(qChild);

    return 0;
  }
示例#14
0
std::string Label::getText()
{
    QLabel *qlabel = static_cast<QLabel*>(getQWidget());
    return qlabel->text().toStdString();
}
示例#15
0
int Table::getRowCount()
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    return tablewidget->rowCount();
}
示例#16
0
int Tabs::getCurrentTab()
{
    QTabWidget *qtabwidget = static_cast<QTabWidget*>(getQWidget());
    return qtabwidget->currentIndex();
}
示例#17
0
int Table::getColumnCount()
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    return tablewidget->columnCount();
}
示例#18
0
std::string Table::getItem(int row, int column)
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    QTableWidgetItem *item = tablewidget->item(row, column);
    return item ? item->text().toStdString() : "";
}
示例#19
0
void Table::setColumnWidth(int column, int min_size, int max_size)
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    tablewidget->horizontalHeader()->setMinimumSectionSize(min_size);
    tablewidget->horizontalHeader()->setMaximumSectionSize(max_size);
}
示例#20
0
void Table::setRowHeight(int row, int min_size, int max_size)
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    tablewidget->verticalHeader()->setMinimumSectionSize(min_size);
    tablewidget->verticalHeader()->setMaximumSectionSize(max_size);
}
示例#21
0
void Table::setRowHeaderText(int row, std::string text)
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    return tablewidget->setVerticalHeaderItem(row, new QTableWidgetItem(QString::fromStdString(text)));
}
示例#22
0
void Table::setColumnHeaderText(int column, std::string text)
{
    QTableWidget *tablewidget = static_cast<QTableWidget*>(getQWidget());
    return tablewidget->setHorizontalHeaderItem(column, new QTableWidgetItem(QString::fromStdString(text)));
}