made message table fit the width of the screen
[ptas] / zouba / messagetable.cpp
1 #include "messagetable.h"
2
3 #include <QHeaderView>
4 #include <QString>
5 #include <QStringList>
6 #include <QDebug>
7
8 MessageTable::MessageTable( QWidget *parent ) :
9   QTableWidget( NumberOfRows, OneColumn, parent )
10 {
11   setHorizontalHeaderLabels( QStringList() << "Messages" );
12   verticalHeader()->hide();
13   //setMinimumSize( 800,0 );
14   //setMaximumSize( 800,480 );
15   //setSizePolicy(
16       //QSizePolicy::Fixed, 
17       //QSizePolicy::Expanding
18       //);
19
20   for ( int row=0; row<NumberOfRows; ++row ) {
21     QTableWidgetItem *newRow = new QTableWidgetItem();
22     setItem( row,0, newRow );
23   }
24
25   horizontalHeader()->setStretchLastSection(true);
26 }
27
28 /*
29 QSize MessageTable::minimumSizeHint() const
30 {
31         QSize size( QTableWidget::sizeHint() );
32
33         size.setWidth( 800 );
34         return size;
35 }
36
37 QSize MessageTable::sizeHint() const
38 {
39         return minimumSizeHint();
40 }
41 */
42
43 MessageTable::~MessageTable()
44 {
45 }
46
47 void MessageTable::displayMessage( const QString &message )
48 {
49   // scroll items down from bottom to top
50   for ( int row=NumberOfRows-1; row>0; --row ) {
51     QTableWidgetItem *fromItem = item(0,row-1);
52     QTableWidgetItem *toItem = item(0,row);
53     QString text=fromItem->text();
54     toItem->setText( text );
55   }
56
57   itemAt(0,0)->setText( message );
58 }