[07:42] <crismblog> `neața
[11:38] <sbivol> salut! dacă este cineva cu cunoştinţe de Qt prin preajmă, da-ţi-mi un ping vă rog 
[18:59] <sbivol> FlowRiser: salut. eşti?
[19:54] <FlowRiser> sbivol, da
[19:54] <FlowRiser> adormisem
[19:54] <sbivol> am cîteva întrebări ref. la Qt
[19:55] <FlowRiser> sbivol, pai zi
[19:59] <sbivol> fac o aplicaţie pentru lucrul cu ştiri. cînd folosesc model-view, am de reprezentat date sub formă de tabel: autorul, data creării, titlul, ş.a. ce fel de model trebuie să foloses pentru asta – QAbstractListModel sau QAbstractTableModel?
[20:00] <FlowRiser> ce versiune de Qt folosesti, mai intai?
[20:01] <sbivol> PyQt 4.10 cu Qt 4.8
[20:01] <FlowRiser> sunt nesigur daca poti folosi un TableView
[20:02] <FlowRiser> ah, e de la 5.1 in sus
[20:03] <FlowRiser> Ambele modele de care mi-ai zis sunt doar abstractizari
[20:03] <FlowRiser> Eu unul nu m-as incurca cu ele, decat daca as avea ceva foarte custom
[20:03] <sbivol> da, din ele mi-am făcut propriile modele
[20:04] <FlowRiser> oricare dintre ele e ok
[20:04] <sbivol> m-am descurcat cu vizualizările de creare şi redactare a obiectelor (de ex. utilizatori)
[20:04] <sbivol> nu înţeleg cum să reprezint o listă de utilizatori. cum trebuie să arate modelul şi view-ul
[20:05] <FlowRiser> pai sa iti dau un exemplu
[20:05] <FlowRiser> nu stiu cata experienta ai cu un MVC, dar in Qt e foarte misto sa folosesti asa ceva
[20:06] <FlowRiser> Modelul, gandeste-te ca numele coloanelor unui tabel; Nu trebuie sa fie neaparat QAbstractListModel sau QAbstractTableModel
[20:07] <sbivol> PS: folosesc SQLalchemy ca ORM
[20:08] <FlowRiser> Deobicei modelul depinde de cum vrei sa-l avisezi intr-un view
[20:09] <FlowRiser> Vrei sa poti modifica fiecare celula a fiecarui rand?
[20:11] <sbivol> nu. tabelul e numai pentru afişare. la dublu-clic pe un rînd al tabelului urmează să deschid ştirea în filă nouă, separat de table
[20:12] <sbivol> nici măcar de sortare sau filtrare n-am nevoie în tabel, deocamdată
[20:13] <FlowRiser> atunci foloseste un QAbstractListModel si reda contentul intr-un ListView
[20:13] <FlowRiser> dupa ce faci modelul, tot ce trebuie sa faci este sa il dai ca parametru la la ListView si o sa ti-l ia automat
[20:18] <sbivol> exact, dar aici încep problemele
[20:18] <FlowRiser> de ce?
[20:21] <sbivol> ca listă le pot afişa, dar ca tabel nu ştiu cum să le afişez. problema mea constă în extragerea atributelor modelului ca să le afişez în view.
[20:21] <sbivol> modelul are metoda data(), care întoarce date în funcţie de rol (Qt.DisplayRole...). momentan întorc doar titlul ştirii ca să-l afişez în ListView
[20:23] <sbivol> pentru TableView am nevoie de mai multe date. Să încerc să întorc un array sau un dicţionar în metoda data()?
[20:24] <sbivol> ListView îşi ia automat datele pentru DisplayRole, nu pot să-i zic care element al dicţionarului e titlul, care-i data creării
[20:25] <FlowRiser> parca puteai sa ii dai la listview setColumn() sau ceva
[20:26] <FlowRiser> asa da, se poate da ce coloana e vizibila cu setModelColumn(int column)
[20:27] <sbivol> nu găsesc aşa ceva
[20:28] <FlowRiser> http://qt-project.org/doc/qt-4.8/qlistview.html#modelColumn-prop
[20:28] <sbivol> aha
[20:28] <FlowRiser> Incearca daca tot ai nevoie decat de un rand cu ListView
[20:29] <FlowRiser> Daca faci cu tableview e putin cam incurcat cand o sa ajungi la sa selectezi tot randul
[20:30] <sbivol> mă descurc cu selectatul rîndului, am făcut asta într-o aplicaţie precedentă
[20:30]  * sbivol prelucrează informaţia
[20:39] <FlowRiser> sa fiu sincer nu am incercat niciodata PyQt-ul
[20:39] <FlowRiser> acum m-ai facut curios
[20:46] <sbivol> eu am făcut odată o aplicație Qt + MySQL, era folosită pentru a afișa rezultatele unui televoting în timp real. am rămas cu un gust amar de la C++
[20:46] <sbivol> în schimb mi-a plăcut foarte mult Qt
[20:47] <FlowRiser> Adevarul este ca te obisnuiesti cu C++-ul pana la urma
[20:47] <FlowRiser> si apoi devine super puternic
[20:48] <sbivol> nici nu mă îndoiesc
[20:49] <sbivol> pur și simplu mi-i mai ușor să iterez cu „for user in users do:” decît să fac iteratori în C++
[20:50] <sbivol> lenea e unul din factori :)
[20:50] <FlowRiser> ah vezi ca s-a bagat foreach(User user in Users){}
[20:50] <FlowRiser> e foarte tare xD
[20:53] <sbivol> mulțumesc pentru sfaturi, încerc să le folosesc imediat...
[20:55] <Anuska> hello
[20:56] <Anuska> ddf, still alive?