From cf5278a0f4ef8b418f653802e6a245a26c1f8772 Mon Sep 17 00:00:00 2001 From: Leonardo Robol Date: Sat, 20 Jun 2009 18:49:58 +0200 Subject: [PATCH] =?UTF-8?q?Icone=20per=20il=20men=C3=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- songbook-editor.py | 37 +++++++++++++++++++++++++++++++++++++ ui/images/apri.png | Bin 0 -> 1113 bytes ui/images/esci.png | Bin 0 -> 1034 bytes ui/images/save.png | Bin 0 -> 1009 bytes ui/interface.py | 18 +++++++++++++++--- ui/interface.ui | 21 +++++++++++++++++++-- 6 files changed, 71 insertions(+), 5 deletions(-) create mode 100644 ui/images/apri.png create mode 100644 ui/images/esci.png create mode 100644 ui/images/save.png diff --git a/songbook-editor.py b/songbook-editor.py index 34f3299..a457a8f 100755 --- a/songbook-editor.py +++ b/songbook-editor.py @@ -39,6 +39,8 @@ class interface(QtGui.QMainWindow): self.connect(self.ui.list_songs, QtCore.SIGNAL("currentTextChanged ( QString )"), self.item_selected) self.connect(self.ui.btn_new_song, QtCore.SIGNAL("clicked()"), self.new_song) self.connect(self.ui.btn_delete_song, QtCore.SIGNAL("clicked()"), self.delete_item_from_list) + self.connect(self.ui.btn_list_move_down, QtCore.SIGNAL("clicked()"), self.list_move_down) + self.connect(self.ui.btn_list_move_up, QtCore.SIGNAL("clicked()"), self.list_move_up) # Menu File self.connect(self.ui.actionSalva, QtCore.SIGNAL("activated()"), self.save_songbook) @@ -92,6 +94,12 @@ class interface(QtGui.QMainWindow): return newsong + def get_active_song_in_list(self): + newsong = self.get_active_song() + for song in self.song_db: + if( (song.title == newsong.title) ): + return song + # Add a new song in the db, and update the list def add_song_to_db(self, song): self.song_db.append(song) @@ -112,6 +120,33 @@ class interface(QtGui.QMainWindow): if(need_new_song): self.add_song_to_db(song_to_save) + def get_item_from_song(self, song): + self.list_update() + ind = self.song_db.index(song) + return self.ui.list_songs.item(ind) + + def list_move_up(self): + song = self.get_active_song_in_list() + ind = self.song_db.index(song) + if(ind == 0): + return + self.song_db.pop(ind) + self.song_db.insert(ind-1, song) + self.list_update() + self.ui.list_songs.setItemSelected(self.get_item_from_song(song), 1) + + def list_move_down(self): + song = self.get_active_song_in_list() + ind = self.song_db.index(song) + if(ind == len(self.song_db)): + return + self.song_db.pop(ind) + self.song_db.insert(ind+1, song) + self.list_update() + self.ui.list_songs.setItemSelected(self.get_item_from_song(song), 1) + + + # Export song to a rcs file def save_song_to_file(self): filename = QtGui.QFileDialog.getSaveFileName(self, "Salva Canzone", "", "Canzoni di RobolCanzoniere (*.rcs)") @@ -140,6 +175,8 @@ class interface(QtGui.QMainWindow): handle = open(filename, 'r') buf = handle.read().decode("utf-8") handle.close() + else: + return song_list = buf.split(self.sep_song) self.song_db = [] for raw_song in song_list: diff --git a/ui/images/apri.png b/ui/images/apri.png new file mode 100644 index 0000000000000000000000000000000000000000..8872ebefd2ec1658cb32b20e44efb59be2845c15 GIT binary patch literal 1113 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE%y{W;-5-!(S%G6ZkOu2#h&i_QFarZ~lc$Sgh{fsNo@k%wQik^W=a()QMR>nw zjY`nj&?#+U?#85(R3o6A>@jDPMEa&9GbSEAlDUk3-;SJ*Qt>iUbGh{Ua?_-4IvJU@ z<*l*cYFT*U9n)Ql)w~_xb+d)#ac0UwneIt3%M4xD)^>iu?~n?khAd4|pCIS_byZL$KbhORPV!lSMf1iKv58wGs>n_`GUV5qEKIgT6iL>19 z=Qp`oZJ2Q5#WZ1q8D=4s>67(8@XeOgo@zhUK05q^*XPUYw3geZ`+GOLuFyH(9QWYf zufC#^4UbPqn7j?vQ85qdbeLC~wf)b+?s#68-8*|yp1qQOeJgri;rorVzV4je-TOzr zJn6#of*Y~9kGEGGTdn=+_v|ATCiA^mX0rR8l~xe9dl_H(e(~OO)@wFC+c_)u>9ty$ z^~S1~Tds0EICuW=f%kze&z&kZ{+e@8ul@52okpA20ecxQef~K0#O~v>WiOk~w`GWr zNvOK~_)@O#+EsUcS+PnqJeIInD_!t2N?@68UWh^1l6Tw|#$f_~e!2Z|N%j0$^7nZ- zBSTDdbm;6p&V1R~N zTpDaFYGheiAUz4~+;q@A& za1R@vJ6EcsMAt3VtJ}TA;B9(DX}i9{t+Q&%hq;wDX*om+?wP=SNJ5b3>E?*=kN}1jrUhCZ zhaQDoKfCnf!gu_eiswF;Jjlk!Q1?~y#oHo9;aHAcvYPu9GH%!YlWEtOB@rjEFhz6P zVo9H0@Ady$);ybG^}klV;ZSk*1|tIlOI-sqT_b}KLklYt6DvbQZ381K1B2TEp&c*{x%nxXX_W*t Uv^-Sa1JuCa>FVdQ&MBb@0O<7X@Bjb+ literal 0 HcmV?d00001 diff --git a/ui/images/esci.png b/ui/images/esci.png new file mode 100644 index 0000000000000000000000000000000000000000..7ea55ccfb7ab6d54c92b82a6cafc80d4e65b152f GIT binary patch literal 1034 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSpS?+AQ#RTNDC3(BM zF#HF>1$&oI28wVNctjQhX%8@VJDF_<5-cllOb60n^B7`|tv$@Zz^v@);uvCa+I5m| z#+*=z*7?89@1IFAn(OyRt)cEeP)#$!57te%=%nkI5BTFq5@Ur%H@qvoa7?uONR zBD%4jD-v3DqC#{ymx{D3n{C$SHfP2Wlb3(e{u$jbe_uMWq5JT|*g5T=4+-vzc=9~^ zdYrtB^ly!+=i9xqmt6B$8W5#C#Yt|*1ff04BemA9xwqf`di|3VeLL(-OW*VsKhI0y zYTZ6H=tc8_5H3X)FU={2zrQoOWaO@nj=q03cJHs1eQRpXZ{4k3ovRzAxn+vR(hH6b zWhElfs|DAtSDyMye$m!NarO2xGJ6(o4-fy{$H%`~f#;*sgC#BuRy>udHFLh*l8W}9 z-!$d-`pjOFwsW6~KK;BD6jt`SbWspz{QAdPraoq;7j|+^5qMy$)aNfYooWkySKDFrNu?!k=Xl%8&|Zr z&0=o2IP1>~jo#z^EAQ-VzI|iC&J7OFA37iTW;XZs_K#1EPCk6x;jpk+a>~UQTZ%i} zm{WDt<}TZ~ukZfNgV|@hZ$=6=_r;5g%Ie)qOmB`MQ znUB`$#%$zxYSg0m^1Pk<)1s34|DuXERt6H9{8De;KK%CWM|#<`Hzz0Wu`+hfO=>## zNJ(w#qUU=vgC6H!`uUN4*Y`R{Ha1?Br4H#mA5TRsDK6=D4bzWJdhschFMfwZUKZD! z!|T>w{PBtV+p~Hn0p(4$8j3YR*+*jR{ugQ-{kkIPEXy?^22ahGnj#+JTp8~dgf*_{ zedD{>C^JOw@cuaa-*uT!nLqZ0Jybs)H(QdUiJw=6H-X{poqa71YCJ{;6AXSF2>8Bl z&xU`0UTfFe{dTJ{mH3pq@|O9}pgNn$UUHwD6d3lfKR;;MQYsKVr}RjLS=8IJ_h+45 z8kg~x-7+w!OMi;t3t-++Epd$~NiIrFEJ@W(0TK*G1_qY824=cO1|fzPRwkxa2FBV3 mMpgy}`OEbgVH$GtQ!>*k31~17i!=plVDNPHb6Mw<&;$Uj`^J+1 literal 0 HcmV?d00001 diff --git a/ui/images/save.png b/ui/images/save.png new file mode 100644 index 0000000000000000000000000000000000000000..47c6fc294126724162bd8f134261da2bfd1d8ecc GIT binary patch literal 1009 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSpS?+AQ#RTNDC3(BM zF#HF>1$&oI28wVNctjQhX%8@VJDF_<5-cllOb60n^B7`|tv$@Zz|7_8;uvCax_6Ry z#^O+h*7JM+|Bd(kWk2hd)1@s!R+p#g@u)1l)O*g!vGC!sxe;z|GmkcC@RTSv?aC+( zl#fjbbSzZVa7mF7e<#Yqe%!_2#x$vV&5e?i&F0QJUb{=`;MFsc^WV!@$TYEExPHH; z+ght@egR+EvAW*}E5Bcz`~0!{vLDCZn%(&O!0)e=&ew}SIxFA2z2*4po1Tu9S<-aY&MS)0ehof z#l{jmb%{M&*_s(oT)QS#R$hKTB0j!;bBLCvm*y6!#HRXGu{*QAPOqQ&X0Gj-t<&5% z9AAC4S{t_dy}4BH>lT3xy}i7f_Uy3<*AUsTZCl#SX>G-yB#*=~7kw)|bIztWaa6x&(@NX&O(t)Z**s=e8}E z-E)${{PWF0T&v5)rvynPFPPGFP3o9L#@dUozZw`CPL%3(3*MI7tfQ+N%XRpJ_uA4Y zyY#}s!yo>((>cwQ%yUdaz)7LSVUo&=603}@QE3)3`y|>Ps_XPUUTM*1tEp;p-g#$? z+uAVajS((8W7v{;`W`>{^G9Z?7i*9ggTmf8{cx?R2W-xF8_ncdJVj})pR;Cb+UCxm zKPx>n6MGt`2>q>-?|XdUv(1fdyvGaEwr$^@sJS#n=D2wA&O13~vsI5K30}T@Swn=2 zqlv+5<^Qr5WxFp#N#FnOx&OZXitDe^F>(Qe}pKrREvt!eyLpAreyDb*9 zc>Z9{ed`JL?%x-GTXuWS+_@7UKYsjvlFH7X`aT{-R~0>LX9Kf{YKdz^NpewYVo9oQ z3XothGBB{zH89gPG6*rWure{UGBMINFtRc*a4GCEg=xsmPsvQHB%ne1z#m4S1_n=8 KKbLh*2~7Y;&9X%R literal 0 HcmV?d00001 diff --git a/ui/interface.py b/ui/interface.py index 1b252b3..8825455 100644 --- a/ui/interface.py +++ b/ui/interface.py @@ -2,7 +2,7 @@ # Form implementation generated from reading ui file 'interface.ui' # -# Created: Sat Jun 20 17:44:08 2009 +# Created: Sat Jun 20 18:49:32 2009 # by: PyQt4 UI code generator 4.4.4 # # WARNING! All changes made in this file will be lost! @@ -158,6 +158,9 @@ class Ui_MainWindow(object): self.horizontalLayout_2.addWidget(self.btn_create_pdf) self.gridLayout.addLayout(self.horizontalLayout_2, 2, 1, 2, 1) self.label_6 = QtGui.QLabel(self.gridLayoutWidget) + font = QtGui.QFont() + font.setPointSize(10) + self.label_6.setFont(font) self.label_6.setTextFormat(QtCore.Qt.RichText) self.label_6.setAlignment(QtCore.Qt.AlignCenter) self.label_6.setObjectName("label_6") @@ -180,12 +183,21 @@ class Ui_MainWindow(object): self.statusbar.setObjectName("statusbar") MainWindow.setStatusBar(self.statusbar) self.actionApri = QtGui.QAction(MainWindow) + icon2 = QtGui.QIcon() + icon2.addPixmap(QtGui.QPixmap("ui/images/apri.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) + self.actionApri.setIcon(icon2) self.actionApri.setObjectName("actionApri") self.actionEsci = QtGui.QAction(MainWindow) self.actionEsci.setObjectName("actionEsci") self.actionSalva = QtGui.QAction(MainWindow) + icon3 = QtGui.QIcon() + icon3.addPixmap(QtGui.QPixmap("ui/images/save.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) + self.actionSalva.setIcon(icon3) self.actionSalva.setObjectName("actionSalva") self.actionEsci_2 = QtGui.QAction(MainWindow) + icon4 = QtGui.QIcon() + icon4.addPixmap(QtGui.QPixmap("ui/images/esci.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) + self.actionEsci_2.setIcon(icon4) self.actionEsci_2.setObjectName("actionEsci_2") self.actionSalva_canzone = QtGui.QAction(MainWindow) self.actionSalva_canzone.setObjectName("actionSalva_canzone") @@ -231,12 +243,12 @@ class Ui_MainWindow(object): self.label_6.setText(QtGui.QApplication.translate("MainWindow", "\n" "\n" +"\n" "

Lista Canzoni

", None, QtGui.QApplication.UnicodeUTF8)) self.label_7.setText(QtGui.QApplication.translate("MainWindow", "\n" "\n" +"\n" "

Canzone selezionata

", None, QtGui.QApplication.UnicodeUTF8)) self.menuFile.setTitle(QtGui.QApplication.translate("MainWindow", "File", None, QtGui.QApplication.UnicodeUTF8)) self.menuCanzoniere.setTitle(QtGui.QApplication.translate("MainWindow", "Canzoniere", None, QtGui.QApplication.UnicodeUTF8)) diff --git a/ui/interface.ui b/ui/interface.ui index 9e8b503..8fe0a64 100644 --- a/ui/interface.ui +++ b/ui/interface.ui @@ -242,11 +242,16 @@ + + + 10 + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Lista Canzoni</span></p></body></html> @@ -263,7 +268,7 @@ p, li { white-space: pre-wrap; } <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Canzone selezionata</span></p></body></html> @@ -311,6 +316,10 @@ p, li { white-space: pre-wrap; } + + + ui/images/apri.pngui/images/apri.png + Apri @@ -321,11 +330,19 @@ p, li { white-space: pre-wrap; } + + + ui/images/save.pngui/images/save.png + Salva + + + ui/images/esci.pngui/images/esci.png + Esci -- 2.1.4