Exemplo n.º 1
0
// ----------------------------------------------------------------------
// ----------------------------------------------------------------------
void QmvTable::activateNextCell()
{
    
    int col = currentColumn() + 1;
    int row = currentRow();

    bool eot = false;
    
    if ( col >= numCols() )
        if ( row >= numRows() )
            col--;
        else
        {
            col = 0;
            if ( row < (numRows() - 1) )
                row++;
            else
                eot = true;
        }

    setCurrentCell( row, col );
        // if we are in the last cell of table, the edit will not
        // automatically end the edit.
    if ( eot )
        editCompleted();
    
    ensureCellVisible( row, col );
}
void FoursquareVenueSelectionPage::createContent(void)
{
	m_location = new LabeledTextEdit(tr("Search"),
					 LabeledTextEdit::SingleLineEditOnly);
	m_location->setPrompt(tr("Enter location"));
	connect(m_location, SIGNAL(editCompleted()),
		this, SLOT(searchLocation(void)));

	m_here = new MButton(tr("Nearby venues"));
	m_here->setEnabled(false);
	connect(m_here, SIGNAL(clicked()),
		this, SLOT(searchNearby(void)));

	QGraphicsLinearLayout *sub_layout = 
		new QGraphicsLinearLayout(Qt::Vertical);
	sub_layout->setSizePolicy(QSizePolicy::Preferred, 
				  QSizePolicy::Preferred);
	sub_layout->addItem(m_location);
	sub_layout->setAlignment(m_location, Qt::AlignCenter);
	sub_layout->addItem(m_here);
	sub_layout->setAlignment(m_here, Qt::AlignCenter);

	createCommonContent(m_model,
			    _getCreator,
			    tr(""),
			    tr("Select venue"),
			    true,
			    false,
			    sub_layout);

	connect(m_list, SIGNAL(itemClicked(const QModelIndex &)),
		this, SLOT(venueSelected(const QModelIndex &)));

	Q_EMIT(created());
}
Exemplo n.º 3
0
void MainWindow::SetupTables()
{
    /*
    for(int i=0;i<XD::NUM_TAB;i++)
    {
        for(int j=0;j<XD::NUM_TABLE;j++)
        {
            // set column num, row num
            m_Atable[i][j]->setColumnCount(CMainWindow::COUNT_COLUMN_TABLE);
            m_Atable[i][j]->setRowCount(1);

             // set column width
            int width_col = CMainWindow::MIN_WIDTH_LEFT_DOCK / CMainWindow::COUNT_COLUMN_TABLE - 4;
            for(int m=0;m<CMainWindow::COUNT_COLUMN_TABLE;m++)
            {
                m_Atable[i][j]->setColumnWidth(m, width_col);
            }
            // set default table header
            m_Atable[i][j]->setHorizontalHeaderItem(0,new QTableWidgetItem("Index",0));
            m_Atable[i][j]->setHorizontalHeaderItem(1,new QTableWidgetItem("ID",1));
            m_Atable[i][j]->setHorizontalHeaderItem(2,new QTableWidgetItem("X",2));
            m_Atable[i][j]->setHorizontalHeaderItem(3,new QTableWidgetItem("Y",3));
            m_Atable[i][j]->setHorizontalHeaderItem(4,new QTableWidgetItem("Width",4));
            m_Atable[i][j]->setHorizontalHeaderItem(5,new QTableWidgetItem("Height",5));
        }
    }

    //setup default first row value
    m_Atable[XD::T_MODULE][XD::TABLE1]->setItem(0,0,new QTableWidgetItem("0",0));
    m_Atable[XD::T_MODULE][XD::TABLE1]->setItem(0,1,new QTableWidgetItem("1000",1));
    m_Atable[XD::T_MODULE][XD::TABLE1]->setItem(0,2,new QTableWidgetItem("0",2));
    m_Atable[XD::T_MODULE][XD::TABLE1]->setItem(0,3,new QTableWidgetItem("0",3));
    m_Atable[XD::T_MODULE][XD::TABLE1]->setItem(0,4,new QTableWidgetItem("32",4));
    m_Atable[XD::T_MODULE][XD::TABLE1]->setItem(0,5,new QTableWidgetItem("32",5));

    */

    m_moduleTableModel = new ModuleTableModel(this);
    ui->mt_tableView1->setModel(m_moduleTableModel);
    ui->mt_tableView1->setSelectionBehavior(QTableView::SelectRows);

    int width_col = CMainWindow::MIN_WIDTH_LEFT_DOCK / CMainWindow::COUNT_COLUMN_TABLE - 4;
    for(int m=0;m<CMainWindow::COUNT_COLUMN_TABLE;m++)
    {
        ui->mt_tableView1->setColumnWidth(m, width_col);
    }
    connect(ui->mt_tableView1, SIGNAL(clicked(const QModelIndex&)), this, SLOT(tableRowSelected(QModelIndex)));
    connect(ui->mt_tableView1->model(),SIGNAL(dataChanged(QModelIndex,QModelIndex)),this,SLOT(UpdateDataCell(QModelIndex,QModelIndex)));
    //editCompleted
    connect(ui->mt_tableView1->model(),SIGNAL(editCompleted(QString)),this,SLOT(TableEditCompleted(QString)));

    editWindow->imageLabel->m_table = ui->mt_tableView1;
}
Exemplo n.º 4
0
bool MyModel::setData(const QModelIndex & index, const QVariant & value, int role)
{
    if (role == Qt::EditRole)
    {
        //save value from editor to member m_gridData
        m_gridData[index.row()][index.column()] = value.toString();
        //for presentation purposes only: build and emit a joined string
        QString result;
        for (int row= 0; row < nRows; row++)
        {
            for(int col= 0; col < 4; col++)
            {
                result += m_gridData[row][col] + ' ';
            }
        }
        emit editCompleted( result );
    }
    return true;
}
bool ArgumentsModel::setData(const QModelIndex & index, const QVariant & value, int role)
{
    if (role == Qt::EditRole) {
        QString result = value.toString();
        QByteArray result2 = result.toLatin1();
        char *v = rsString(result2.data());
        bool insertedRow = false;
        vector<rsArgument*> args = job->getArguments();
        
        if ( index.row() >= (int)args.size() ) {
            
            //beginInsertRows(index, 0, 1);
            
            rsArgument* arg = (rsArgument*)rsMalloc(sizeof(rsArgument));
            arg->key = rsString("<empty>");
            arg->value = rsString("");
            job->addArgument(arg);

            insertedRow = true;
                
            //endInsertRows();
        }
        
        args = job->getArguments();
        rsArgument* arg = args[index.row()];
        
        if ( index.column() == 0 ) {
            arg->key = v;
        } else {
            arg->value = v;
        }
                
        if ( insertedRow ) {
            beginResetModel();
            endResetModel();
        } else {
            emit editCompleted(result);    
        }
    }
    return true;
}
Exemplo n.º 6
0
// ----------------------------------------------------------------------
// ----------------------------------------------------------------------
void QmvTable::keyPressEvent( QKeyEvent *ke )
{
#ifdef QMVTABLE_DEBUG
    int ktype = ke ? ke->key() : -9999;
    qDebug( "%-20.20s::keyPressEvent::%6d", "QmvTable", ktype );
#endif

        // finish and move to next cell
    if ( ke->key() == Key_Return || ke->key() == Key_Enter )
        activateNextCell();

        // Finish
    if ( ke->key() == Key_Escape )
    {
        editCompleted();
        ke->accept();   // finish here.
    }
    
        // navigation, in-place editing etc
    QTable::keyPressEvent ( ke );
}
Exemplo n.º 7
0
 bool csv_connectionModel::setData(const QModelIndex & index, const QVariant & value, int role)
 {
     if (role == Qt::EditRole)
     {
         if (index.row() == currentConnection->getNumRows()) {
                beginInsertRows(this->createIndex(currentConnection->getNumRows()-1, 0).parent(),currentConnection->getNumRows(),currentConnection->getNumRows());
                    currentConnection->setNumRows(currentConnection->getNumRows()+1);
                    for (int i = 0; i < currentConnection->getNumCols(); ++i) {
                        currentConnection->setData(this->createIndex(currentConnection->getNumRows()-1,i), 0);
                    }
                endInsertRows();
                setSpinBoxVal(currentConnection->getNumRows());
         }
         //save value from editor
         this->currentConnection->setData(index, value.toFloat());
         //for presentation purposes only: build and emit a joined string
         QString result = value.toString();
         emit editCompleted( result );

     }
     emit dataChanged(index, index);

     return true;
 }
Exemplo n.º 8
0
// ----------------------------------------------------------------------
// ----------------------------------------------------------------------
void QmvTable::editCompleted()
{
    editCompleted( currentRow(), currentColumn() );
}