⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xptools.cpp

📁 天使工具,e6手机专用,大家都知道吧,狠狠好地东西,直接编译即可
💻 CPP
📖 第 1 页 / 共 3 页
字号:
#include "xptools.h"#include "xptext.h"#include "filedialog.h"#include "filebrowser.h"#include "back.h"#include "output.h"#include "dirview.h"#include "sysinfo.h"#include "dropin/config.h"#include "xpconfig.h"#include "login.h"//ezx#include <zapplication.h>#include <ezxres.h>#include <zmessagebox.h>#include "view.h"//qt#include <qvbox.h>#include <qfile.h>#include <qdir.h>#include <qpixmap.h>#include <qwallpaper.h>#include <qpushbutton.h>#include <qfont.h>#include <qmovie.h>#include <qtextstream.h>//#include <stddef.h>//#include <stdio.h>#include <stdlib.h>/*调用可执行文件用到的头文件*///#include <sys/types.h>//#include <sys/wait.h>//#include <sys/ioctl.h>//#include <sys/socket.h>#include <unistd.h>#include <fcntl.h>//mooviewQString ChineseAndEnglish(const char*ChineseString); 	XpTools::XpTools(const QString& fileName, QWidget *parent, char const *name, unsigned int flags)    : ZMainWidget(false,fileName, parent, name, flags/*(flags|WType_Modal)*/){  /*      if (QFile::exists("wallpaper.jpg")) {	QWallpaper wpp;	QPixmap *pix = new QPixmap("wallpaper.jpg");	wpp.setAppWallpaperMode(QWallpaper::UseAppWallpaper);	wpp.setAppWallpaper(pix);	// I can make E680i user confuse 加入背景;)	//wpp.setSysWallpaper(pix);	delete pix;    }        */ getTitleBarWidget()->setText(ChineseAndEnglish("高级文件管理"));//窗口菜单 current1 = fileName;   RES_ICON_Reader ir;     UTIL_PushButton* quit = new UTIL_PushButton(ir.getIcon("Call_Delete_Digit_Acti.gif",1),ir.getIcon("Call_Delete_Digit_Nor.gif",1), ChineseAndEnglish(""), this, 0, 30, 24);   quit->move(208, 1);	quit->show();	connect(quit, SIGNAL(clicked()), this, SLOT(cdUp()));    in_loop = FALSE;          QVBox *cw = new QVBox(this);    setContentWidget(cw);       QVBox *vb = (QVBox*)getContentWidget(0);          currentItem=0;    mBrowser = new FileBrowser("* config installedDB PlugCardDB", vb, "browser");    mBrowser->setDir("/mmc/mmca1");   // mBrowser->setFrameShape(QFrame::NoFrame);    //mBrowser->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding));        QObject::connect(mBrowser, SIGNAL(isFilePicked(bool)), SLOT(filePicked(bool)));    QObject::connect(mBrowser, SIGNAL(isDirPicked(bool)), SLOT(dirPicked(bool)));    QObject::connect(mBrowser, SIGNAL(isFileClicked(bool)), SLOT(fileClicked(bool)));    QObject::connect(mBrowser, SIGNAL(mouseEvent1(const QString &dirName)), SLOT(mouseEventClicked(const QString &dirName)));         UTIL_CST *cst = new UTIL_CST(this,ChineseAndEnglish("操作"));    setCSTWidget(cst);            mMiddleBtn = cst->getMidBtn();		pp = new QPopupMenu(cst, NULL);		QObject::connect(pp, SIGNAL(activated(int)), SLOT(menuSelect(int)));						//m_movefile = pp->insertItem(ChineseAndEnglish("移动文件"),0,0);		m_save_menu_id = pp->insertItem(ChineseAndEnglish("使用编辑器"),0,0);		m_save_id = pp->insertItem(ChineseAndEnglish("复制到..."),1,1);		m_renamefile = pp->insertItem(ChineseAndEnglish("重命名..."),2,2);		m_movefile= pp->insertItem(ChineseAndEnglish("移动到..."),3,3);		m_addfromrca_menu_id = pp->insertItem(ChineseAndEnglish("解压文件"),4,4);		m_addfromrcm_menu_id = pp->insertItem(ChineseAndEnglish("压缩文件"),5,5);				pp->indexOf(5);		mMiddleBtn->setPopup(pp);    mpp= new QPopupMenu(cst, NULL);    mpp ->insertItem(ChineseAndEnglish("系统设置"),passwordItem, passwordItem);    mpp->insertItem(ChineseAndEnglish("备份恢复"), backItem, backItem);    mpp->insertItem(ChineseAndEnglish("系统信息"), systeminfoItem, systeminfoItem);    //mpp->insertItem(ChineseAndEnglish("JAVA破解"), menuItem, menuItem);    mpp->insertItem(ChineseAndEnglish("操作说明"), readmeItem, readmeItem);   QObject::connect(mpp, SIGNAL(activated(int)), SLOT(selectMenu1(int)));   /*   rotmp= new QPopupMenu(cst, NULL);   rotmp ->insertItem(ChineseAndEnglish("不旋转"),1,1);   rotmp->insertItem(ChineseAndEnglish("90度"), 2,2);   rotmp ->insertItem(ChineseAndEnglish("180度"),3,3);   rotmp->insertItem(ChineseAndEnglish("270度"), 4,4);   QObject::connect(rotmp, SIGNAL(activated(int)), SLOT(selectMenurotmp(int)));   */       mPopup = new QPopupMenu(cst, NULL);        //insert menu item with unique id and index 输入菜单条有唯一的ID      mPopup->insertItem(ChineseAndEnglish("删除文件"), DeleteItem, DeleteItem);    mPopup->insertItem(ChineseAndEnglish("删除目录"), DelDirectoryItem, DelDirectoryItem);    mPopup->insertItem(ChineseAndEnglish("新建目录"), newDirectoryitem, newDirectoryitem);    mPopup->insertItem(ChineseAndEnglish("全屏"), showMaximizedItem, showMaximizedItem);       mPopup->insertSeparator(SeparatorItem);      // mPopup->insertItem(ChineseAndEnglish("手机内存"), PhoneItem, PhoneItem);    //mPopup->insertItem(ChineseAndEnglish("SD目录"), SDMMCItem, SDMMCItem);    //mPopup->insertItem(ChineseAndEnglish("图片方向"),rotmp,SetupItem, SetupItem);        mPopup->insertItem(ChineseAndEnglish("控制面板"),mpp, cmItem,cmItem);    mPopup->insertSeparator(SeparatorItem2);    mPopup->insertItem(ChineseAndEnglish("关于..."), AboutItem, AboutItem);      mPopup->setItemEnabled(DeleteItem, FALSE);    mPopup->setItemEnabled(DelDirectoryItem, FALSE);        QObject::connect(mPopup, SIGNAL(activated(int)), SLOT(selectMenu(int)));    mPopup->indexOf(1);    mBackBtn = cst->getLeftBtn();     mpop = new QPopupMenu(cst, NULL);   mpop->insertItem(ChineseAndEnglish("系统目录"), SystemItem, SystemItem);    mpop->insertItem(ChineseAndEnglish("手机内存"), PhoneItem, PhoneItem);    mpop->insertItem(ChineseAndEnglish("SD目录"), SDMMCItem, SDMMCItem);    mpop->insertItem(ChineseAndEnglish("设置目录"),SetupItem, SetupItem);   mpop->insertItem(ChineseAndEnglish("根目录"),bootItem, bootItem);   QObject::connect(mpop, SIGNAL(activated(int)), SLOT(selectMenupop(int)));      ZPushButton *bt1 = new ZPushButton(cst, 1, 0, 0);	ZPushButton *bt2 = new ZPushButton(cst, 1, 0, 0);	ZPushButton *bt3 = new ZPushButton(cst, 1, 0, 0);	ZPushButton *bt4 = new ZPushButton(cst, 1, 0, 0);			bt1->setGeometry(ZGlobal::mapFromGlobalR(bt1, ZGlobal::getCst4b_1R())); bt1->setResourceID("CST_Menu");	bt2->setGeometry(ZGlobal::mapFromGlobalR(bt2, ZGlobal::getCst4b_2R())); bt2->setText(ChineseAndEnglish("浏览"));	bt3->setGeometry(ZGlobal::mapFromGlobalR(bt3, ZGlobal::getCst4b_3R())); bt3->setText(ChineseAndEnglish("操作"));	bt4->setGeometry(ZGlobal::mapFromGlobalR(bt4, ZGlobal::getCst4b_4R())); bt4->setResourceID("CST_Exit");    bt1->setPopup(mPopup);	bt2->setPopup(mpop);	//QObject::connect(bt3, SIGNAL(clicked()), this, SLOT(showMainPopup()));	bt3->setPopup(pp);	QObject::connect(bt4, SIGNAL(clicked()), this, SLOT(close()));  Config cfg (current1+"/xptools.conf");  cfg.setGroup("Settings"); /*  if(!cfg.readBoolEntry("allowRotation")){  	rotmp->setItemChecked(1,TRUE);    	}else{            if (cfg.readNumEntry("rotation")==1){  	        rotmp->setItemChecked(2,true); 	  		 }else if (cfg.readNumEntry("rotation")==2){  	       rotmp->setItemChecked(3,true); 	  		 }else if (cfg.readNumEntry("rotation")==3){  	       rotmp->setItemChecked(4,true); 	  		}   }    */       cfg.setGroup( QString::number(1) );       if(cfg.readBoolEntry("showMaximized")){         showMaximized();  	         mPopup->setItemChecked(showMaximizedItem,true);                          }else{          showNormal();	          mPopup->setItemChecked(showMaximizedItem,false);          }  }XpTools::~XpTools(){  }int XpTools::exec(){    setResult(0);    show();    if (!in_loop) {        in_loop = TRUE;        qApp->enter_loop();    }       return result();}void XpTools::done( int r ){    hide();        if (in_loop) {        in_loop = FALSE;        qApp->exit_loop();    }        setResult(r);}void XpTools::accept(){   done(Accepted);         }void XpTools::reject(){    done(Rejected);}void XpTools::closeEvent(QCloseEvent *e){    e->accept();   reject();}void  XpTools::sltfwd(){	  int i=mBrowser->count();     currentItem = currentItem +1 ;      for( ;currentItem <i ; ++currentItem)        {             mBrowser->setCurrentItem(currentItem);	           QString fileName = mBrowser->getFileName();            if (QFileInfo(fileName).extension( FALSE ).upper()=="PNG"||QFileInfo(fileName).extension( FALSE ).upper()=="GIF"||QFileInfo(fileName).extension( FALSE ).upper()=="BMP"||QFileInfo(fileName).extension( FALSE ).upper()=="JPG"||QFileInfo(fileName).extension( FALSE ).upper()=="JPEG")			           {  	               ViewpicDialog *mEdit = new ViewpicDialog(fileName,this);                    mEdit->show();                    currentItem=mBrowser->currentItem(); 	         	        QObject::connect(mEdit, SIGNAL(keyup()), this, SLOT(sltrew()));         	        QObject::connect(mEdit, SIGNAL(keydown()), this, SLOT(sltfwd()));         	        return;         	        }                           }                  				}void XpTools::sltrew(){	  //int i=mBrowser->count();     currentItem = currentItem -1 ;      for( ;currentItem >0 ; --currentItem)        {             mBrowser->setCurrentItem(currentItem);	           QString fileName = mBrowser->getFileName();            if (QFileInfo(fileName).extension( FALSE ).upper()=="PNG"||QFileInfo(fileName).extension( FALSE ).upper()=="GIF"||QFileInfo(fileName).extension( FALSE ).upper()=="BMP"||QFileInfo(fileName).extension( FALSE ).upper()=="JPG"||QFileInfo(fileName).extension( FALSE ).upper()=="JPEG")			           {  	               ViewpicDialog *mEdit = new ViewpicDialog(fileName,this);                    mEdit->show();                    currentItem=mBrowser->currentItem(); 	         	        QObject::connect(mEdit, SIGNAL(keyup()), this, SLOT(sltrew()));         	        QObject::connect(mEdit, SIGNAL(keydown()), this, SLOT(sltfwd()));         	        return;         	        }                            }                  				}/*void XpTools::selectMenurotmp(int idx){   Config config(current1+"/xptools.conf");   config.setGroup("Settings");      if (idx == 1) {     rotmp->setItemChecked(1,TRUE);             rotmp->setItemChecked(2,FALSE);      rotmp->setItemChecked(3,FALSE);             rotmp->setItemChecked(4,FALSE);      config.writeEntry("allowRotation",false);         } else if (idx == 2) {     rotmp->setItemChecked(1,false);             rotmp->setItemChecked(2,true);      rotmp->setItemChecked(3,FALSE);             rotmp->setItemChecked(4,FALSE);     config.writeEntry("allowRotation", true);     config.writeEntry("rotation", 1);        }else if (idx == 3) {      rotmp->setItemChecked(1,false);            rotmp->setItemChecked(2,FALSE);      rotmp->setItemChecked(3,true);            rotmp->setItemChecked(4,FALSE);     config.writeEntry("allowRotation", true);     config.writeEntry("rotation", 2);        }else if (idx == 4) {     rotmp->setItemChecked(1,false);             rotmp->setItemChecked(2,FALSE);      rotmp->setItemChecked(3,FALSE);             rotmp->setItemChecked(4,true);     config.writeEntry("allowRotation", true);     config.writeEntry("rotation",3);         }         }*/void XpTools::selectMenu(int idx){ Config cfg (current1+"/xptools.conf");  cfg.setGroup( QString::number(1) );           if (idx == AboutItem){    	 showAboutDialog();     } else if (idx == DeleteItem) {        deleteFile();    } else if (idx == DelDirectoryItem) {        DelDirectory();    }else if (idx == newDirectoryitem){    	newDirectory();    }else if (idx==showMaximizedItem){    	  if(cfg.readBoolEntry("showMaximized")){          showNormal();	          mPopup->setItemChecked(showMaximizedItem,false);          cfg.writeEntry("showMaximized",0);                  }else{          showMaximized();  	           mPopup->setItemChecked(showMaximizedItem,true);         cfg.writeEntry("showMaximized",1);          	       }    	    	    	}    }void XpTools::selectMenu1(int idx){RES_ICON_Reader ir; Config cfg (current1+"/xptools.conf");  cfg.setGroup( QString::number(1) );if (idx == backItem){    	showNormal();	//切换到非全屏      mPopup->setItemChecked(showMaximizedItem,false);      cfg.writeEntry("showMaximized",0);    	    	Back *mEdit = new Back(this);//备份     mEdit->show();      }else if (idx == passwordItem){          showNormal();	          mPopup->setItemChecked(showMaximizedItem,false);          cfg.writeEntry("showMaximized",0);  	     ConfigWidget *mit = new ConfigWidget(current1,this);//设置           mit->show();       }else if(idx==systeminfoItem){          showNormal();	          mPopup->setItemChecked(showMaximizedItem,false);          cfg.writeEntry("showMaximized",0);                 SystemInfo *systeminfo=new SystemInfo();         systeminfo->show();   /* 	 	    }else if(idx==menuItem){//JAVA破解    	 MenuDialog*fileDlg;       fileDlg = new MenuDialog(this,tr("hhh"),true,0);       fileDlg->setjava();       fileDlg->exec();      if( fileDlg->result() == 1)           {          QString  filename = fileDlg->MView->currentItem()->text(2 );              int err=system("/bin/cp -rf \""+current1+"\"/permfile.txt \""+filename+"/\"");            if (err==0){                ZMessageBox::timerMessage(this,                 ir.getIcon(RES_ICON_DLG_COMPLETE,1),                 ChineseAndEnglish("软件成功破解..."), 2);                setDir(mBrowser->getFilePath());           }else {              	ZMessageBox::timerMessage(this,                  ir.getIcon(RES_ICON_DLG_COMPLETE,1),                  ChineseAndEnglish("软件没有破解成功..."), 2);            	           	  }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -