Seite 1 von 1

Tarbälle per Drag&Drop entpacken...

Verfasst: 18. April 2011 09:53
von huckleberry
Hallo Foristen,

ich möchte nun Tarbälle (also *.tar.gz *.tar.bz2 ...) per Drag&Drop auf meine Applikation ziehen und automatisch entpacken. Textdateien "text/plain" habe ich mit den Beispielcodes hinbekommen.

Code: Alles auswählen

void myLineEdit::dragEnterEvent(QDragEnterEvent *event)
{
    // accept just text/uri-list mime format
    if (event->mimeData()->hasFormat("application/zip") || event->mimeData()->hasFormat("application/x-tar") || event->mimeData()->hasFormat("application/x-gtar") || event->mimeData()->hasFormat("application/x-compress") ||
event->mimeData()->hasFormat("application/gzip")) 
    {     
        event->acceptProposedAction();
    }
}
 
 
void myLineEdit::dropEvent(QDropEvent *event)
{
// Hä?
 
    if (event->mimeData()->??)
    {
        InputStream pp = event->mimeData()->??; //     
        // 
    }
    
    event->acceptProposedAction();
}
Was mache ich allerdings mit den gedroppten Daten? per data() als QByteArray einlesen und dann mit qUncompress() entpacken?

Danke für alle Hinweise!

Mfg Huck

Verfasst: 18. April 2011 11:12
von Christian81
Erstmal solltest Du schauen was überhaupt ankommt. Bin mir ziemlich sicher dass es nicht die Daten sind sondern nur einen URL-Liste mit der URL zur Datei ...

Verfasst: 27. Mai 2011 08:26
von huckleberry
Jo, ich hab den Code geändert, also mit QString uri-list. Die Datei hat er nun, per Drag&Drop - jedoch unentpackt.
Mit dem entpacken hab ich noch meine Probs. Ich post hier bald den Code..