From 7e11c68b8060f51b5178a71202e51b445d028ef5 Mon Sep 17 00:00:00 2001 From: Norbert Moutarde Date: Tue, 4 Nov 2014 16:05:49 +0100 Subject: [PATCH] maxline is now limitating the number of clabel printed on each screen --- mainwindow.cpp | 33 +++++++++++++++++++++++++++------ mainwindow.h | 5 +++-- 2 files changed, 30 insertions(+), 8 deletions(-) diff --git a/mainwindow.cpp b/mainwindow.cpp index ec3a577..aa8ec40 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -52,6 +52,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) conf->setValue(QString("first"), 1); }; deb=0; + page=0; //currenttype=conf->value(QString("currenttype"), QString("buttons")).toString(); screen=new QWidget(this); screen->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum); @@ -149,17 +150,29 @@ void MainWindow::quit(){ qDebug()<<"quit() way.last()="<~MainWindow(); } -const CLabel* MainWindow::addWidget(const QString &key, const CLabel *a){ +int unsigned MainWindow::addWidget(const QString &key, const CLabel *a){ qDebug()<<"addWidget("<text()); } - int c=grid->count(); - int maxc=conf->value(QString("maxcolumn")).toInt(); + int c=grid->count(), maxc=conf->value(QString("maxcolumn")).toInt(), maxl=conf->value(QString("maxline")).toInt(); + //p*(ml*mc)+c nombre de boutons en tout osef, + if(grid->count()==((maxc*maxl)-1)){ + CLabel next(trUtf8("Next page"), conf, this); + addWidget(QString("nextpage"), next); + page++; + return 1; + } + + /*if(c=(maxc*maxl)-1){ + page++; + addWidget(QString("nextpage"), CLabel(trUtf8("Next page"))); + return page; + }*/ grid->addWidget(a, c/maxc, c%maxc, 1, 1, Qt::AlignJustify| Qt::AlignVCenter | Qt::AlignHCenter); QObject::connect(a, SIGNAL(released()), signalmap, SLOT(map())); signalmap->setMapping(a, key); - return a; + return 0; } void MainWindow::action(const QString &a){ qDebug()<<"action("<first(); while(q->isValid()){ @@ -638,14 +654,19 @@ void MainWindow::get(const QString & d, const QString &b){ int actCol = 1;//r.indexOf("action"); int i=0; qDebug()<<"bcl to add buttons"; + int maxc=conf->value(QString("maxcolumn")).toInt(), maxl=conf->value(QString("maxline")).toInt(); + if((page)&&(!grid->count())){ + addWidget(QString("prevpage"), new CLabel(trUtf8("Previous page"))); + } + //grid->count()%(maxl*maxc)!=0) here while(q->next()){ - addWidget(q->value(actCol).toString(), new CLabel(q->value(labCol).toString(), *conf)); + if(!addWidget(q->value(actCol).toString(), new CLabel(q->value(labCol).toString(), *conf)))break; i++; }; grid->update(); //scroll->updateGeometry(); screen->updateGeometry(); - qDebug()<<"end getButtons : "<