Let's get to the point with code.
Code:
#include <qapplication.h>
#include <qpushbutton.h>
#include <iostream>
#include "FileWindow.h"
class QFileViewer : public QWidget
{
FileInfo fi;
QPushButton* bup;
QListView* lv;
public:
QFileViewer();
virtual void resizeEvent(QResizeEvent* re);
void populate();
public slots:
void upper();
};
QFileViewer::QFileViewer()
{
lv = new QListView(this);
lv->addColumn( "File" );
lv->addColumn( "Owner" );
lv->addColumn( "Group" );
lv->addColumn( "Permissions" );
populate();
bup = new QPushButton("Up", this);
connect(bup, SIGNAL(clicked()), this, SLOT(upper()));
}
void QFileViewer::resizeEvent(QResizeEvent* re)
{
lv->move(0, bup->height() );
lv->resize(re->size().width(), re->size().height() - bup->height() );
}
void QFileViewer::populate()
{
fi.open();
while( fi.nextFile())
{
if ( !fi.isHidden() )
new QListViewItem( lv, fi.getName().c_str(), fi.getOwner().c_str(), fi.getGroup().c_str(), fi.getPermissions().c_str() );
}
fi.close();
}
void QFileViewer::upper()
{
fi.up();
lv->clear();
populate();
}
int main( int argc, char ** argv ) {
QApplication a( argc, argv );
QFileViewer* mw = new QFileViewer();
//mw->setCaption( "Install Script Maker" );
mw->show();
a.connect( &a, SIGNAL(lastWindowClosed()), &a, SLOT(quit()) );
return a.exec();
}
Why does my program complain that slot upper does not exist? I get a message saying no such slot QWidget::upper().