abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    včera 12:22 | IT novinky

    V březnu byla oznámena spolupráce GrapheneOS s Motorolou. Nejnovější vlajka Motorola Signature 27 je první Motorola s oficiální podporou GrapheneOS. GrapheneOS (Wikpedie) je varianta Androidu zaměřující se na bezpečnost a soukromí.

    Ladislav Hagara | Komentářů: 0
    včera 04:55 | Nová verze

    Omarchy (Wikipedie) je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové verzi 4.5.0. Nově také pro Apple Silicon, konkrétně pro M1/M2/M3/Neo MacBooky.

    Ladislav Hagara | Komentářů: 3
    včera 03:22 | Nová verze

    Byla vydána nová stabilní verze 8.3 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 156 s bezpečnostními opravami z Chromia 157. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    5.11. 19:53 | Bezpečnostní upozornění
    V Xenu objevena zranitelnost. Chyba v mechanismu grant copy umožňuje škodlivému virtuálnímu stroji číst a přepisovat libovolnou paměť jiných VM včetně privilegované domény Dom0. Dotčené verze jsou Xen 4.6 a novější. V upstreamu jsou dostupné patche pro Xen 4.17 až 4.19 a vývojovou větev. Pro starší nepodporované verze 4.6–4.16 nejsou v XSA-523 přiloženy opravy.
    vencour | Komentářů: 1
    5.11. 16:55 | Nová verze

    Multimediální přehrávač mpv byl vydán ve verzi 0.42.0. Jde o větší balík změn po bezmála roce. Mimo jiné se lépe integruje s Waylandem nebo rozšiřuje podporu DVD/Blu-ray, např. umožňuje přehrávat rovnou obrazy médií (soubory iso).

    ʚĭɞ 🍉 | Komentářů: 0
    5.11. 12:22 | Nová verze

    Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.5.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    5.11. 12:11 | Nová verze

    Byla vydána (𝕏) nová verze 8.0 LTS open source monitorovacího systému Zabbix (Wikipedie). Přehled novinek v oznámení na webu, v poznámkách k vydání a v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    5.11. 04:22 | Nová verze

    Byla vydána verze R14.1.7 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.

    JZD | Komentářů: 4
    5.11. 00:33 | Nová verze

    Bazzite (Wikipedie), tj. linuxová distribuce vycházející z Fedora Linuxu a optimalizována pro hraní počítačových her, byla vydána ve verzi 45. S Open Gaming Collective (OGC) jádrem a novým Easy Anti-Cheatem pro Linux (EAC Linux v2).

    Ladislav Hagara | Komentářů: 0
    4.11. 22:11 | Bezpečnostní upozornění

    MikroTik zveřejnil vlastní bezpečnostní upozornění potvrzující, že zranitelnost linuxového jádra postihuje také RouterOS 7. Jde o use-after-free při zpracování IPv4 TCP spojení s IP options. Zranitelnost se týká provozu směřujícího na TCP službu samotného routeru, nikoli paketů, které router pouze přeposílá. Opraveno v long-term od 7.24.6, v stable od 7.25.1 a devel od 7.26beta5.

    vencour | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2992 hlasů
     Komentářů: 35, poslední včera 23:27
    Rozcestník

    Dotaz: Úplne jednoduchý browser (qtwebkit)

    17.10.2014 08:53 Peter
    Úplne jednoduchý browser (qtwebkit)
    Přečteno: 936×
    Čaute.

    S Qt nemám prakticky žiadne skúsenosti. Potrebujem pre jeden mini projekt úplne "blbý" browser a rozhodol som sa ho vyrobiť pomocou qtwebkit

    browser.pro
    QT += webkit
    SOURCES = browser.cpp
    
    browser.cpp
    #include <QtGui>
    #include <QtWebKit>
    
    int main(int argc, char** argv) {
        QApplication app(argc, argv);
        QWebView view;
        view.show();
        view.setUrl(QUrl("http://localhost:10000/"));
        return app.exec();
    }
    
    Všetko funguje perfektne až na jednu vec - sťahovanie súboru. Tá aplikácia ktorá bude v tom browseri bežať totižto generuje CSV súbor, ktorý ponúkne na stiahnutie. Zaujímavé je, že upload funguje úplne v pohode, ale pri downloade sa nedeje absolútne nič.

    Za pomoc vám vopred veľmi pekne ďakujem.

    Řešení dotazu:


    Odpovědi

    17.10.2014 11:33 tm
    Rozbalit Rozbalit vše Re: Úplne jednoduchý browser (qtwebkit)
    http://stackoverflow.com/questions/16346219/how-to-download-files-from-qwebview
    Beda0 avatar 17.10.2014 11:47 Beda0 | skóre: 29
    Rozbalit Rozbalit vše Re: Úplne jednoduchý browser (qtwebkit)
    Podle tohodle to vypadá, že se to musí udělat ručně - při stahování to vyhodí signál kterej se musí spárovat s nějakym slotem a obsloužit ho.
    17.10.2014 12:46 Peter
    Rozbalit Rozbalit vše Re: Úplne jednoduchý browser (qtwebkit)
    Takže momentálny stav je nasledovný

    main.pro
    QT     += gui network webkit
    HEADERS = mainwindow.h
    SOURCES = main.cpp \
              mainwindow.cpp
    
    main.cpp
    #include <QtGui>
    #include <QtNetwork>
    #include <QtWebKit>
    #include "mainwindow.h"
    
    int main(int argc, char * argv[]) {
        QApplication app(argc, argv);
        MainWindow browser;
        browser.setWindowTitle("Data");
        browser.show();
        return app.exec();
    }
    
    mainwindow.cpp
    #include <QtGui>
    #include <QtNetwork>
    #include <QtWebKit>
    #include "mainwindow.h"
    
    MainWindow::MainWindow() {
        QWebView * view = new QWebView(this);
        view->load(QUrl("http://localhost:10000/"));
        view->page()->setForwardUnsupportedContent(true);
        connect(view->page(),SIGNAL(unsupportedContent(QNetworkReply*)),this,SLOT(unsupportedContent(QNetworkReply*)));
        setCentralWidget(view);
    }
    
    void MainWindow::unsupportedContent(QNetworkReply * reply) {
        qDebug("Download Requested");
    }
    
    mainwindow.h
    #include <QtGui>
    #include <QtNetwork>
    #include <QtWebKit>
    
    class MainWindow : public QMainWindow {
        Q_OBJECT
        public:
    	MainWindow();
        public slots:
    	void unsupportedContent(QNetworkReply * reply);
    };
    
    Po kliknutí na odkaz, ktorý má spustiť sťahovanie mi qDebug do konzoli vypíše "Download Request", čiže to znamená, že slot ako taký funguje. Teraz už len potrebujem poriešiť samotné stiahnutie súboru, ale zatial sa mi nedarí nájsť žiaden príklad. Ak ma niekto navedie, tak mu budem veľmi zaviazaný. Apropo, S Qt a C++ teraz robím úplne po prvý krát, tak poprosím pomaly na mna. :-D
    17.10.2014 13:53 nobody
    Rozbalit Rozbalit vše Re: Úplne jednoduchý browser (qtwebkit)
    mozna najdes inspiraci v Otter Browser ?
    20.10.2014 11:23 hanzz | skóre: 19 | blog: hanzz
    Rozbalit Rozbalit vše Re: Úplne jednoduchý browser (qtwebkit)
    http://qt-project.org/wiki/Download_Data_from_URL
    Josef Kufner avatar 20.10.2014 21:50 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Úplne jednoduchý browser (qtwebkit)
    Stahovaný soubor dostaneš jako parametr reply slotu unsupportedContent. Zkus si vypsat reply->readAll(), mělo by to vrátit obsah staženého souboru. Více viz dokumentace.
    Hello world ! Segmentation fault (core dumped)

    Založit nové vlákno • Nahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.