What is the restriction for using Qt2?
What is the restriction for using Qt2?
==========================signature=============== ==================
S.O.L.I.D principles (use them!):
https://en.wikipedia.org/wiki/SOLID_...iented_design)
Do you write clean code? - if you are TDD'ing then maybe, if not, your not writing clean code.
I have a friendlyARM device MINI2440 which gives QT2 designer and qtopia2.2.0. It compiles Qt applications for the device...so i have no choice but to use that only!!!!:
Try this (I didn't test it!):
Qt Code:
void Browser::setDir(QListViewItem* newItem) { MyListView->clear(); { QListViewItem *dirItem=new QListViewItem(MyListView); dirItem->setText(0,(*it)); MyListView->insertItem(dirItem); } }To copy to clipboard, switch view to plain text mode
==========================signature=============== ==================
S.O.L.I.D principles (use them!):
https://en.wikipedia.org/wiki/SOLID_...iented_design)
Do you write clean code? - if you are TDD'ing then maybe, if not, your not writing clean code.
Thanks.....It worked a bit....but it doesn't traverse the level of subfolder of subfoldrs...I am trying to use stack, to push path and pop the path when up button is pressed. Lets see...i'll keep posting when i get something new...in this....
This is the code which i have written according to my understanding!!!. I am unable to understand why the runtime errors are coming as the code gets compiled fine. Though its not at all complete coz functionality for files is yet to be written...my problem is persisting in case of directories only....for example my code can traverse "bin" folder but not "dev" folder...It can traverse one level and come back to root when Up Button is pressed..its a run time error which i am unable to understand...plz guide...
This code is written using Qt2 designer/qtopia2.2.0.....
#include "filebrowser.h"
#include <qlistview.h>
#include <qdir.h>
#include <qfileinfo.h>
#include <qlabel.h>
#include <qpushbutton.h>
#include <stdio.h>
QDir dir=QDir::rootDirPath();
int i=0;
QString pathStack[100];
FileBrowser::FileBrowser(QWidget *parent, const char *name, WFlags fl):
FileBrowserForm(parent,name,fl)
{
QPixmap fp("/opt/FriendlyARM/mini2440/x86-qtopia/Browser1/FC.png");
QPixmap file("/opt/FriendlyARM/mini2440/x86-qtopia/Browser1/File.png");
push(dir.absPath());
TextLabel->setText(dir.dirName());
if(dir.exists())
{
QStringList dirList(dir.entryList());
MyListView->clear();
for(QStringList::Iterator it=dirList.begin();it!=dirList.end();++it)
{
QFileInfo d(dir,(const char*)(*it));
QListViewItem *dirItem=new QListViewItem(MyListView);
dirItem->setText(0,(const char*)(*it));
if(d.isDir())
{
dirItem->setPixmap(0,fp);
}
else
{
dirItem->setPixmap(0,file);
}
MyListView->insertItem(dirItem);
printf("\n%s",(const char*)(*it));
}
}
else
printf("Directroy does not exist");
connect(MyListView,SIGNAL(doubleClicked(QListViewI tem*)),this,SLOT(set_dir(QListViewItem*)));
connect(UpButton,SIGNAL(clicked()),this,SLOT(up_pa th()));
}
FileBrowser::~FileBrowser()
{
}
void FileBrowser::set_dir(QListViewItem* nItem)
{
QPixmap fp("/opt/FriendlyARM/mini2440/x86-qtopia/Browser1/FC.png");
QPixmap file("/opt/FriendlyARM/mini2440/x86-qtopia/Browser1/File.png");
dir.cd(nItem->text(0));
dir.convertToAbs();
TextLabel->setText(dir.dirName());
push(dir.absPath());
QStringList dirList(dir.entryList());
MyListView->clear();
for(QStringList::Iterator it=dirList.begin();it!=dirList.end();++it)
{
QFileInfo fi(dir,(const char*)(*it));
QListViewItem *dirItem=new QListViewItem(MyListView);
dirItem->setText(0,(const char*)(*it));
if(fi.isDir())
{
dirItem->setPixmap(0,fp);
}
else
{
dirItem->setPixmap(0,file);
}
MyListView->insertItem(dirItem);
printf("\n%s",(const char*)(*it));
}
}
void FileBrowser:: up_path()
{
QPixmap fp("/opt/FriendlyARM/mini2440/x86-qtopia/Browser1/FC.png");
QPixmap file("/opt/FriendlyARM/mini2440/x86-qtopia/Browser1/File.png");
dir.cdUp();
dir.convertToAbs();
TextLabel->setText(dir.dirName());
QStringList dirList(dir.entryList());
MyListView->clear();
for(QStringList::Iterator it=dirList.begin();it!=dirList.end();++it)
{
QListViewItem *dirItem=new QListViewItem(MyListView);
dirItem->setText(0,(const char*)(*it));
dirItem->setPixmap(0,fp);
MyListView->insertItem(dirItem);
}
}
void FileBrowser:: push(QString path)
{
pathStack[i++]=path;
}
QString FileBrowser:: pop()
{
if(i>=0)
{
QString returnPath=pathStack[--i];
return returnPath;
}
else
{
return("No such directory");
}
}
Bookmarks