Now successfully removes metadata
This commit is contained in:
parent
ddaf0549f7
commit
28608056cb
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorProject>
|
||||
<!-- Written by QtCreator 3.0.1, 2014-06-18T13:21:56. -->
|
||||
<!-- Written by QtCreator 3.0.1, 2014-06-18T14:39:43. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>ProjectExplorer.Project.ActiveTarget</variable>
|
||||
|
69
picture.cpp
69
picture.cpp
@ -5,57 +5,72 @@
|
||||
#include <iostream>
|
||||
#include <stdio.h>
|
||||
#include <QDebug>
|
||||
#include <QImageReader>
|
||||
|
||||
Picture::Picture(QWidget *parent) :
|
||||
QMainWindow(parent),
|
||||
ui(new Ui::Picture){
|
||||
QMainWindow(parent),
|
||||
ui(new Ui::Picture){
|
||||
ui->setupUi(this);
|
||||
connect(ui->actionOpen_Files,SIGNAL(triggered()),this,SLOT(changeDirectory()));
|
||||
changeDirectory();
|
||||
//changeDirectory();
|
||||
fillList();
|
||||
}
|
||||
}
|
||||
std::string exec(char* cmd) {
|
||||
FILE* pipe = popen(cmd, "r");
|
||||
if (!pipe) return "ERROR";
|
||||
char buffer[128];
|
||||
std::string result = "";
|
||||
while(!feof(pipe)) {
|
||||
if(fgets(buffer, 128, pipe) != NULL){
|
||||
result += buffer;
|
||||
}
|
||||
FILE* pipe = popen(cmd, "r");
|
||||
if (!pipe) return "ERROR";
|
||||
char buffer[128];
|
||||
std::string result = "";
|
||||
while(!feof(pipe)) {
|
||||
if(fgets(buffer, 128, pipe) != NULL){
|
||||
result += buffer;
|
||||
}
|
||||
pclose(pipe);
|
||||
return result;
|
||||
}
|
||||
pclose(pipe);
|
||||
return result;
|
||||
}
|
||||
Picture::~Picture(){
|
||||
delete ui;
|
||||
delete ui;
|
||||
}
|
||||
void Picture::changeDirectory(){
|
||||
QString path=QFileDialog::getExistingDirectory(this,tr("Directory"),directory.path());
|
||||
if(path.isNull()==false){
|
||||
directory.setPath(path);
|
||||
fillList();
|
||||
}
|
||||
//exec("which exiv2>>/tmp/log");
|
||||
QString path=QFileDialog::getExistingDirectory(this,tr("Directory"),directory.path());
|
||||
if(path.isNull()==false){
|
||||
directory.setPath(path);
|
||||
fillList();
|
||||
}
|
||||
//exec("which exiv2>>/tmp/log");
|
||||
}
|
||||
|
||||
void Picture::fillList() {
|
||||
ui->fileList->clear();
|
||||
ui->fileList->addItems(directory.entryList());
|
||||
ui->fileList->clear();
|
||||
ui->fileList->addItems(directory.entryList());
|
||||
}
|
||||
|
||||
void Picture::on_cd_clicked(){
|
||||
changeDirectory();
|
||||
changeDirectory();
|
||||
}
|
||||
|
||||
void Picture::on_erase_clicked(){
|
||||
foreach(const QString &str,directory.entryList()){
|
||||
QString tmp=QString("echo ");
|
||||
tmp+=str+">>/tmp/log";
|
||||
foreach(const QString &str,directory.entryList()){
|
||||
QString tmp=QString("exiv2 rm ");
|
||||
QImageReader reader(directory.absolutePath()+"/"+str);
|
||||
if(!reader.format().isEmpty()){
|
||||
tmp+=directory.absolutePath()+"/"+str+">>/tmp/log";
|
||||
std::string tmp2=tmp.toStdString();
|
||||
char* a=new char[tmp2.size()+1];
|
||||
a[tmp2.size()]=0;
|
||||
memcpy(a,tmp2.c_str(),tmp2.size());
|
||||
exec(a);
|
||||
}else{
|
||||
tmp="echo "+directory.absolutePath()+"/"+str+">>/tmp/log";
|
||||
std::string tmp2=tmp.toStdString();
|
||||
char* a=new char[tmp2.size()+1];
|
||||
a[tmp2.size()]=0;
|
||||
memcpy(a,tmp2.c_str(),tmp2.size());
|
||||
exec(a);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Picture::on_refresh_clicked(){
|
||||
fillList();
|
||||
}
|
||||
|
@ -25,6 +25,8 @@ private slots:
|
||||
|
||||
void on_erase_clicked();
|
||||
|
||||
void on_refresh_clicked();
|
||||
|
||||
private:
|
||||
Ui::Picture *ui;
|
||||
QDir directory;
|
||||
|
17
picture.ui
17
picture.ui
@ -37,9 +37,9 @@
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="erase">
|
||||
<widget class="QPushButton" name="refresh">
|
||||
<property name="text">
|
||||
<string>Erase Metadata</string>
|
||||
<string>Refresh Directory</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@ -47,6 +47,19 @@
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="erase">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>270</x>
|
||||
<y>10</y>
|
||||
<width>124</width>
|
||||
<height>27</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Erase Metadata</string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QMenuBar" name="menuBar">
|
||||
<property name="geometry">
|
||||
|
Loading…
Reference in New Issue
Block a user