From d001770946053c4d60f9f9b9362f713287013079 Mon Sep 17 00:00:00 2001 From: Tarek Date: Tue, 23 Feb 2010 00:58:13 +0200 Subject: [PATCH] Initial Project Commit --- GUI/__init__.pyc | Bin 0 -> 147 bytes GUI/inbox.ui | 42 +++++ GUI/inbox_window.py | 42 +++++ GUI/inbox_window.pyc | Bin 0 -> 1698 bytes GUI/inbox_window.py~ | 42 +++++ GUI/main.ui | 71 +++++++ GUI/main_window.py | 53 ++++++ GUI/main_window.pyc | Bin 0 -> 2180 bytes GUI/main_window.py~ | 53 ++++++ GUI/message.ui | 225 ++++++++++++++++++++++ GUI/message_window.py | 115 ++++++++++++ GUI/message_window.pyc | Bin 0 -> 4846 bytes GUI/message_window.py~ | 115 ++++++++++++ GUI/sent_window.py | 42 +++++ GUI/sent_window.pyc | Bin 0 -> 1693 bytes GUI/sent_window.py~ | 42 +++++ GUI/stacked2.ui | 217 ++++++++++++++++++++++ bak/contactsServ.py | 104 +++++++++++ bak/contactsServ.pyc | Bin 0 -> 2076 bytes bak/csv_service.py | 61 ++++++ bak/csv_service.pyc | Bin 0 -> 1865 bytes bak/inbox_model.py | 24 +++ bak/main.py | 95 ++++++++++ bak/message.py | 34 ++++ bak/message.pyc | Bin 0 -> 1063 bytes bak/pygobject.py | 156 ++++++++++++++++ bak/pygobject.pyc | Bin 0 -> 5944 bytes bak/recv.py | 27 +++ bak/recv.pyc | Bin 0 -> 1036 bytes bak/sent.csv | 160 ++++++++++++++++ bak/sent.py | 28 +++ bak/sent.pyc | Bin 0 -> 1026 bytes bak/sent_model.py | 31 ++++ bak/sent_model.pyc | Bin 0 -> 1330 bytes bak/sms.csv | 260 ++++++++++++++++++++++++++ bak/stacked.ui | 188 +++++++++++++++++++ bak/stacked2.ui | 399 ++++++++++++++++++++++++++++++++++++++++ bak/testother.py | 48 +++++ bak/testother2.py | 124 +++++++++++++ bak/windows.py | 203 ++++++++++++++++++++ bak/windows.py.bak | 110 +++++++++++ bak/windows.pyc | Bin 0 -> 5505 bytes bak/yagami.jpg | Bin 0 -> 1519 bytes contactsServ.py | 112 +++++++++++ contactsServ.pyc | Bin 0 -> 2589 bytes csv_service.py | 61 ++++++ csv_service.pyc | Bin 0 -> 1924 bytes graphics/contact.png | Bin 0 -> 2973 bytes graphics/contact_120.png | Bin 0 -> 4359 bytes graphics/contact_50.png | Bin 0 -> 1625 bytes graphics/contact_trans.png | Bin 0 -> 3043 bytes graphics/contact_trans_120.png | Bin 0 -> 5512 bytes graphics/contact_trans_50.png | Bin 0 -> 2319 bytes inbox_model.py | 24 +++ main.py | 128 +++++++++++++ message.py | 34 ++++ message.pyc | Bin 0 -> 1798 bytes models.py | 67 +++++++ models.pyc | Bin 0 -> 2373 bytes pygobject.py | 156 ++++++++++++++++ pygobject.pyc | Bin 0 -> 5944 bytes rec_model.py | 31 ++++ recv.py | 27 +++ recv.pyc | Bin 0 -> 1036 bytes sent.csv | 160 ++++++++++++++++ sent.py | 28 +++ sent.pyc | Bin 0 -> 1026 bytes sent_model.pyc | Bin 0 -> 1306 bytes sms.csv | 260 ++++++++++++++++++++++++++ stacked.ui | 188 +++++++++++++++++++ stacked2.ui | 217 ++++++++++++++++++++++ test/GUI/__init__.pyc | Bin 0 -> 147 bytes test/GUI/inbox.ui | 42 +++++ test/GUI/inbox_window.py | 38 ++++ test/GUI/inbox_window.pyc | Bin 0 -> 1724 bytes test/GUI/inbox_window.py~ | 39 ++++ test/GUI/main.ui | 71 +++++++ test/GUI/main_window.py | 43 +++++ test/GUI/main_window.pyc | Bin 0 -> 1408 bytes test/GUI/main_window.py~ | 43 +++++ test/main.py | 21 +++ test/main.py~ | 21 +++ testother.py | 48 +++++ testother2.py | 124 +++++++++++++ windows.py | 203 ++++++++++++++++++++ windows.py.bak | 110 +++++++++++ windows.pyc | Bin 0 -> 8108 bytes yagami.jpg | Bin 0 -> 1519 bytes 88 files changed, 5407 insertions(+) create mode 100644 GUI/__init__.py create mode 100644 GUI/__init__.pyc create mode 100644 GUI/inbox.ui create mode 100644 GUI/inbox_window.py create mode 100644 GUI/inbox_window.pyc create mode 100644 GUI/inbox_window.py~ create mode 100644 GUI/main.ui create mode 100644 GUI/main_window.py create mode 100644 GUI/main_window.pyc create mode 100644 GUI/main_window.py~ create mode 100644 GUI/message.ui create mode 100644 GUI/message_window.py create mode 100644 GUI/message_window.pyc create mode 100644 GUI/message_window.py~ create mode 100644 GUI/sent_window.py create mode 100644 GUI/sent_window.pyc create mode 100644 GUI/sent_window.py~ create mode 100644 GUI/stacked2.ui create mode 100644 bak/contactsServ.py create mode 100644 bak/contactsServ.pyc create mode 100644 bak/csv_service.py create mode 100644 bak/csv_service.pyc create mode 100644 bak/inbox_model.py create mode 100644 bak/main.py create mode 100644 bak/message.py create mode 100644 bak/message.pyc create mode 100644 bak/pygobject.py create mode 100644 bak/pygobject.pyc create mode 100644 bak/recv.py create mode 100644 bak/recv.pyc create mode 100644 bak/sent.csv create mode 100644 bak/sent.py create mode 100644 bak/sent.pyc create mode 100644 bak/sent_model.py create mode 100644 bak/sent_model.pyc create mode 100644 bak/sms.csv create mode 100644 bak/stacked.ui create mode 100644 bak/stacked2.ui create mode 100644 bak/testother.py create mode 100644 bak/testother2.py create mode 100644 bak/windows.py create mode 100644 bak/windows.py.bak create mode 100644 bak/windows.pyc create mode 100755 bak/yagami.jpg create mode 100644 contactsServ.py create mode 100644 contactsServ.pyc create mode 100644 csv_service.py create mode 100644 csv_service.pyc create mode 100644 graphics/contact.png create mode 100644 graphics/contact_120.png create mode 100644 graphics/contact_50.png create mode 100644 graphics/contact_trans.png create mode 100644 graphics/contact_trans_120.png create mode 100644 graphics/contact_trans_50.png create mode 100644 inbox_model.py create mode 100644 main.py create mode 100644 message.py create mode 100644 message.pyc create mode 100644 models.py create mode 100644 models.pyc create mode 100644 pygobject.py create mode 100644 pygobject.pyc create mode 100644 rec_model.py create mode 100644 recv.py create mode 100644 recv.pyc create mode 100644 sent.csv create mode 100644 sent.py create mode 100644 sent.pyc create mode 100644 sent_model.pyc create mode 100644 sms.csv create mode 100644 stacked.ui create mode 100644 stacked2.ui create mode 100644 test/GUI/__init__.py create mode 100644 test/GUI/__init__.pyc create mode 100644 test/GUI/inbox.ui create mode 100644 test/GUI/inbox_window.py create mode 100644 test/GUI/inbox_window.pyc create mode 100644 test/GUI/inbox_window.py~ create mode 100644 test/GUI/main.ui create mode 100644 test/GUI/main_window.py create mode 100644 test/GUI/main_window.pyc create mode 100644 test/GUI/main_window.py~ create mode 100644 test/main.py create mode 100644 test/main.py~ create mode 100644 testother.py create mode 100644 testother2.py create mode 100644 windows.py create mode 100644 windows.py.bak create mode 100644 windows.pyc create mode 100755 yagami.jpg diff --git a/GUI/__init__.py b/GUI/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/GUI/__init__.pyc b/GUI/__init__.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9637d4a7e88cb21ddfccbb206128776c8527e74a GIT binary patch literal 147 zcmcckiI>Y~OOtmp0~9a*#a3E{| literal 0 HcmV?d00001 diff --git a/GUI/inbox.ui b/GUI/inbox.ui new file mode 100644 index 0000000..46ebfbe --- /dev/null +++ b/GUI/inbox.ui @@ -0,0 +1,42 @@ + + + InboxWindow + + + + 0 + 0 + 800 + 400 + + + + MainWindow + + + + + + 0 + 0 + 800 + 400 + + + + + + + + 0 + 0 + 800 + 25 + + + + + + + + diff --git a/GUI/inbox_window.py b/GUI/inbox_window.py new file mode 100644 index 0000000..198c531 --- /dev/null +++ b/GUI/inbox_window.py @@ -0,0 +1,42 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'inbox.ui' +# +# Created: Mon Feb 22 18:29:55 2010 +# by: PyQt4 UI code generator 4.6 +# +# WARNING! All changes made in this file will be lost! + +from PyQt4 import QtCore, QtGui + +class Ui_InboxWindow(QtGui.QMainWindow): + def __init__(self, parent): + QtGui.QMainWindow.__init__(self, parent) + + self.resize(800, 400) + self.centralwidget = QtGui.QWidget(self) + + self.centralwidget.setObjectName("centralwidget") + self.listView = QtGui.QListView(self.centralwidget) + self.listView.setGeometry(QtCore.QRect(0, 0, 800, 400)) + self.listView.setObjectName("listView") + self.listView.setProperty("FingerScrollable", True) + self.setCentralWidget(self.centralwidget) + + self.menubar = QtGui.QMenuBar(self) + + self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 25)) + self.menubar.setObjectName("menubar") + self.setMenuBar(self.menubar) + self.statusbar = QtGui.QStatusBar(self) + self.statusbar.setObjectName("statusbar") + self.setStatusBar(self.statusbar) + + self.retranslateUi() + QtCore.QMetaObject.connectSlotsByName(self) + + #self.setAttribute(QtCore.Qt.WA_Maemo5StackedWindow) + + def retranslateUi(self): + self.setWindowTitle(QtGui.QApplication.translate("InboxWindow", "MainWindow", None, QtGui.QApplication.UnicodeUTF8)) + diff --git a/GUI/inbox_window.pyc b/GUI/inbox_window.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a3aacfeebe987ed392eb6d5c241f1879b2f13d4d GIT binary patch literal 1698 zcmb_c%~I@C5bhI(|DQX;1^n4imWwQIISXC5uq=dIP?R!~gpra>Dw7=WNJyrV9&v85 zy7&M-lCR(s_zu2+e%%Ryg-fP#dQSK0pRfCLpTGWDU-|Rz_ur+|{(AV|$Ev>o$?zGv zA<7M18p=Jo^vGl$S&!TtT^Y*e=y#$AqMt5%l=Ud`=V9mm#n1P!;{}j_56jB3oCJJ4 zb-aPy$i*kcxcu$H6;GSvMS6G&0}X^(>cV``+C8G*eCBgY z&$iTJxwClPO2tBeZ_7Oz$!&++ZfkB({m5TIaffbi4qAUmiPyoWw%{ts?_73m*+D?O z1d_X&e{}Ya`(Tb-ac!$8t;#%4#<_JLiP|E_tu3bGq~c}lYfgAtgY!QG7fK88DoAje zxT5I~bsfj9a2&_lRF$pWJFC8e3&juuUIVSR{KNPcoANNZwHhM$zJ(R`9=${9*p@i2 zW+7zM^k)bw4UXfps+`!0XDl}7)zoTEI5=!lZ^A0H;1u~BBvmM_h!P?x%dJe=Akrj7 zMbhWBMx~Q#Niif}|RC*8Xbq0g{wT?M0{2fNjl#ah?p0M<)X((;46Ccz!;a zg>qAJ@AYROWVXD%*~Hp5pPIheGJS8;lO3c&y%m$nMat^N^9>m3G~}-n+6`saNia7} zk3$ssa-%~n#Iv_T>-p3gzLs2`6qLN_mUG9sZTd*+9DF;O zF)CbIW_EOb^p!8TLwSQ + + MainWindow + + + + 0 + 0 + 800 + 400 + + + + MainWindow + + + + + + 0 + 0 + 801 + 371 + + + + + + + Inbox + + + + + + + Sent + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + 0 + 0 + 800 + 25 + + + + + + + + diff --git a/GUI/main_window.py b/GUI/main_window.py new file mode 100644 index 0000000..6b58e6c --- /dev/null +++ b/GUI/main_window.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'main.ui' +# +# Created: Mon Feb 22 18:09:04 2010 +# by: PyQt4 UI code generator 4.6 +# +# WARNING! All changes made in this file will be lost! + +from PyQt4 import QtCore, QtGui + +class Ui_MainWindow(QtGui.QMainWindow): + + def __init__(self): + QtGui.QMainWindow.__init__(self) + self.setObjectName("MainWindow") + self.resize(800, 400) + + self.centralwidget = QtGui.QWidget(self) + self.centralwidget.setObjectName("centralwidget") + self.verticalLayoutWidget = QtGui.QWidget(self.centralwidget) + self.verticalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 800, 400)) + self.verticalLayoutWidget.setObjectName("verticalLayoutWidget") + self.verticalLayout = QtGui.QVBoxLayout(self.verticalLayoutWidget) + self.verticalLayout.setObjectName("verticalLayout") + self.inbox_button = QtGui.QPushButton(self.verticalLayoutWidget) + self.inbox_button.setObjectName("inbox_button") + self.verticalLayout.addWidget(self.inbox_button) + self.sent_button = QtGui.QPushButton(self.verticalLayoutWidget) + self.sent_button.setObjectName("sent_button") + self.verticalLayout.addWidget(self.sent_button) + self.spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.verticalLayout.addItem(self.spacerItem) + self.setCentralWidget(self.centralwidget) + self.menubar = QtGui.QMenuBar(self) + self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 25)) + self.menubar.setObjectName("menubar") + self.setMenuBar(self.menubar) + self.statusbar = QtGui.QStatusBar(self) + self.statusbar.setObjectName("statusbar") + self.setStatusBar(self.statusbar) + + self.retranslateUi() + QtCore.QMetaObject.connectSlotsByName(self) + + + #self.setAttribute(QtCore.Qt.WA_Maemo5StackedWindow) + + def retranslateUi(self): + self.setWindowTitle(QtGui.QApplication.translate("MainWindow", "MainWindow", None, QtGui.QApplication.UnicodeUTF8)) + self.inbox_button.setText(QtGui.QApplication.translate("MainWindow", "Inbox", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_button.setText(QtGui.QApplication.translate("MainWindow", "Sent", None, QtGui.QApplication.UnicodeUTF8)) + diff --git a/GUI/main_window.pyc b/GUI/main_window.pyc new file mode 100644 index 0000000000000000000000000000000000000000..261a6906260667530ae35b440ce287532b955be5 GIT binary patch literal 2180 zcmcIlTXWk~5Z+@uac)jc+7wa>HS__`bfz8#9{Rv=aezz)9AYV^LtZqpblM&&OCD+6 z#0*ajKY+gmKZQR4->zi4kUkcVwK}_J?>GJNS8FTz^W}FDRlf$_U*ah~0f_N8^qeR$ zbZ#iA(RqzbTq9c}SEnb2;yV3CbVc;jd4u8x`Q0_hxxex2)^Or=fFU1dxn;Q-^3lw3 z3#X9_2BAwIyEM)&mgWs^`gn>v0G7lmoPY@!hAVQYljp1MNSNgj8;5v`1DIr(H{@#c zEBrEK@Pez5T_Eriy6SX=P=tA{;sj%`E@!u{5)GADa)1gA!qilzCb$cluj#+k zT8fDpaKNyNsiEyku2Qq3=#DZqm$q8}X4+MBSD7}JAwcLxbsvdb@Hm}RI zm-gPG7y)c++V;rZTpVuERYPF{RZ|h-ysqAgVSK+-Qcoo}$-W|LyMLVKcyp|M! z11V}P@jI2=BC2;^(Ro+z?yAJ@QsTXey3qK(G^3Ha+#}bi#0`4L@7_R*obVRls_|T> z4mW;B7im*QHsw4_E?oT7vI8gaEr1s`XBUOZ_u)L7@ngN^-D?-T1CmR}*<~=EF=r`n zgHS+cg*#E^x&jUWxCt<^>1-V4@EEKd@~i;X{Q#IJy{#&SD~EXl#2|2~;~-F<3(G%@ zf3^{ygcGatmfOPpVpaRFbk=K#J{iEuB|fqlxbwLO8kM8zK}Tus$9{HM#_GvzmBiCo z@vN_5dE&P^9L8~FK-?<%{An23{Fv>e!r{wlmbhrH9u467WHwRpZ!V`{8oTtVR;5@8 ziUH_WC2gD$<6&8vD*0k=I6&(9VeU!lN)47PnxaEr^C>J+buAAxEvcG5ET%k6izH+_ za;3)u%VC*P-h*6}r72S5Cm9$0xn#Mkm64nlHhCiTBn8D6IQ5<(vpo)T`@A;@?Ii1b zZC}`=cbaEXrH()Fdu$8tjgzo!FM-I&ArHD9%cY3Dh}ozpYp;$bmSA&nq5D&| z=IdEEuCYSkIx9$iw*fa!JPcjgbjLC+EJPpm?P?`8c#AQUFT)yoC(WZJ^zO?E&l@aX2iiWyQ%L5? zbj<^!L05yDqJ1#9(vLwf$>Lc8RBP^aKwCNU<{C=A!;-r~(!5^Vynmt}X&w60`H(-= d9iTb(WMO$C@IN@B8ThP>`EyA?A% literal 0 HcmV?d00001 diff --git a/GUI/main_window.py~ b/GUI/main_window.py~ new file mode 100644 index 0000000..6b58e6c --- /dev/null +++ b/GUI/main_window.py~ @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'main.ui' +# +# Created: Mon Feb 22 18:09:04 2010 +# by: PyQt4 UI code generator 4.6 +# +# WARNING! All changes made in this file will be lost! + +from PyQt4 import QtCore, QtGui + +class Ui_MainWindow(QtGui.QMainWindow): + + def __init__(self): + QtGui.QMainWindow.__init__(self) + self.setObjectName("MainWindow") + self.resize(800, 400) + + self.centralwidget = QtGui.QWidget(self) + self.centralwidget.setObjectName("centralwidget") + self.verticalLayoutWidget = QtGui.QWidget(self.centralwidget) + self.verticalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 800, 400)) + self.verticalLayoutWidget.setObjectName("verticalLayoutWidget") + self.verticalLayout = QtGui.QVBoxLayout(self.verticalLayoutWidget) + self.verticalLayout.setObjectName("verticalLayout") + self.inbox_button = QtGui.QPushButton(self.verticalLayoutWidget) + self.inbox_button.setObjectName("inbox_button") + self.verticalLayout.addWidget(self.inbox_button) + self.sent_button = QtGui.QPushButton(self.verticalLayoutWidget) + self.sent_button.setObjectName("sent_button") + self.verticalLayout.addWidget(self.sent_button) + self.spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.verticalLayout.addItem(self.spacerItem) + self.setCentralWidget(self.centralwidget) + self.menubar = QtGui.QMenuBar(self) + self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 25)) + self.menubar.setObjectName("menubar") + self.setMenuBar(self.menubar) + self.statusbar = QtGui.QStatusBar(self) + self.statusbar.setObjectName("statusbar") + self.setStatusBar(self.statusbar) + + self.retranslateUi() + QtCore.QMetaObject.connectSlotsByName(self) + + + #self.setAttribute(QtCore.Qt.WA_Maemo5StackedWindow) + + def retranslateUi(self): + self.setWindowTitle(QtGui.QApplication.translate("MainWindow", "MainWindow", None, QtGui.QApplication.UnicodeUTF8)) + self.inbox_button.setText(QtGui.QApplication.translate("MainWindow", "Inbox", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_button.setText(QtGui.QApplication.translate("MainWindow", "Sent", None, QtGui.QApplication.UnicodeUTF8)) + diff --git a/GUI/message.ui b/GUI/message.ui new file mode 100644 index 0000000..2a9de00 --- /dev/null +++ b/GUI/message.ui @@ -0,0 +1,225 @@ + + + MessageWindow + + + + 0 + 0 + 800 + 400 + + + + Retro Conversations + + + + + + 0 + 0 + 800 + 400 + + + + + + 0 + 0 + 800 + 400 + + + + + QLayout::SetMaximumSize + + + + + + + QFrame::Box + + + QFrame::Raised + + + 5 + + + 0 + + + xxxxxx + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + 5 + + + 0 + + + + + + 26 + + + + color:rgb(106, 106, 106) + + + TextLabel + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + QFrame::StyledPanel + + + TextLabel + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + background:rgb(50, 50, 50); + + + QFrame::Plain + + + 5 + + + Qt::Horizontal + + + + + + + margin-top:5px + + + TextLabel + + + true + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + Delete + + + + + + + Back + + + + + + + + + + + + + 0 + 0 + 800 + 25 + + + + + + + Option 1 + + + + + Option 2 + + + + + blabla2 + + + + + + diff --git a/GUI/message_window.py b/GUI/message_window.py new file mode 100644 index 0000000..6d92449 --- /dev/null +++ b/GUI/message_window.py @@ -0,0 +1,115 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'message.ui' +# +# Created: Mon Feb 22 20:35:24 2010 +# by: PyQt4 UI code generator 4.6 +# +# WARNING! All changes made in this file will be lost! + +from PyQt4 import QtCore, QtGui + +class Ui_MessageWindow(QtGui.QMainWindow): + def __init__(self, parent): + QtGui.QMainWindow.__init__(self,parent) + self.setObjectName("Message View") + self.resize(800, 400) + self.centralwidget = QtGui.QWidget(self) + self.centralwidget.setObjectName("centralwidget") + self.sentMessageView = QtGui.QWidget(self.centralwidget) + self.sentMessageView.setGeometry(QtCore.QRect(0, 0, 800, 425)) + self.sentMessageView.setObjectName("sentMessageView") + self.verticalLayoutWidget_3 = QtGui.QWidget(self.sentMessageView) + self.verticalLayoutWidget_3.setGeometry(QtCore.QRect(0, 0, 800, 425)) + self.verticalLayoutWidget_3.setObjectName("verticalLayoutWidget_3") + self.verticalLayout_3 = QtGui.QVBoxLayout(self.verticalLayoutWidget_3) + self.verticalLayout_3.setSizeConstraint(QtGui.QLayout.SetMaximumSize) + self.verticalLayout_3.setObjectName("verticalLayout_3") + self.horizontalLayout_3 = QtGui.QHBoxLayout() + self.horizontalLayout_3.setObjectName("horizontalLayout_3") + self.frame = QtGui.QLabel(self.verticalLayoutWidget_3) + self.frame.setFrameShape(QtGui.QFrame.Box) + self.frame.setFrameShadow(QtGui.QFrame.Raised) + self.frame.setLineWidth(5) + self.frame.setMidLineWidth(0) + self.frame.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) + self.frame.setObjectName("frame") + self.horizontalLayout_3.addWidget(self.frame) + self.verticalLayout_4 = QtGui.QVBoxLayout() + self.verticalLayout_4.setContentsMargins(5, -1, 0, -1) + self.verticalLayout_4.setObjectName("verticalLayout_4") + self.msg_address = QtGui.QLabel(self.verticalLayoutWidget_3) + font = QtGui.QFont() + font.setPointSize(26) + self.msg_address.setFont(font) + self.msg_address.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) + self.msg_address.setObjectName("msg_address") + self.verticalLayout_4.addWidget(self.msg_address) + self.msg_date = QtGui.QLabel(self.verticalLayoutWidget_3) + self.msg_date.setFrameShape(QtGui.QFrame.StyledPanel) + self.msg_date.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) + self.msg_date.setObjectName("msg_date") + self.verticalLayout_4.addWidget(self.msg_date) + spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.verticalLayout_4.addItem(spacerItem) + self.horizontalLayout_3.addLayout(self.verticalLayout_4) + spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) + self.horizontalLayout_3.addItem(spacerItem1) + self.verticalLayout_3.addLayout(self.horizontalLayout_3) + self.line_3 = QtGui.QFrame(self.verticalLayoutWidget_3) + self.line_3.setFrameShadow(QtGui.QFrame.Plain) + self.line_3.setLineWidth(5) + self.line_3.setFrameShape(QtGui.QFrame.HLine) + self.line_3.setFrameShadow(QtGui.QFrame.Sunken) + self.line_3.setObjectName("line_3") + self.verticalLayout_3.addWidget(self.line_3) + self.msg_text = QtGui.QLabel(self.verticalLayoutWidget_3) + self.msg_text.setWordWrap(True) + self.msg_text.setObjectName("msg_text") + self.verticalLayout_3.addWidget(self.msg_text) + spacerItem2 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.verticalLayout_3.addItem(spacerItem2) + self.horizontalLayout_4 = QtGui.QHBoxLayout() + self.horizontalLayout_4.setObjectName("horizontalLayout_4") + self.msg_delete = QtGui.QPushButton(self.verticalLayoutWidget_3) + self.msg_delete.setObjectName("msg_delete") + self.horizontalLayout_4.addWidget(self.msg_delete) + self.msg_back = QtGui.QPushButton(self.verticalLayoutWidget_3) + self.msg_back.setObjectName("msg_back") + self.horizontalLayout_4.addWidget(self.msg_back) + self.verticalLayout_3.addLayout(self.horizontalLayout_4) + self.setCentralWidget(self.centralwidget) + self.menubar = QtGui.QMenuBar(self) + self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 25)) + self.menubar.setObjectName("menubar") + self.setMenuBar(self.menubar) + self.statusbar = QtGui.QStatusBar(self) + self.statusbar.setObjectName("statusbar") + self.setStatusBar(self.statusbar) + self.actionOption_1 = QtGui.QAction(self) + self.actionOption_1.setObjectName("actionOption_1") + self.actionOption_2 = QtGui.QAction(self) + self.actionOption_2.setObjectName("actionOption_2") + self.actionBlabla2 = QtGui.QAction(self) + self.actionBlabla2.setObjectName("actionBlabla2") + + self.retranslateUi() + QtCore.QMetaObject.connectSlotsByName(self) + + #self.setAttribute(QtCore.Qt.WA_Maemo5StackedWindow) + + def retranslateUi(self): + self.setWindowTitle(QtGui.QApplication.translate("self", "Retro Conversations", None, QtGui.QApplication.UnicodeUTF8)) + self.frame.setText(QtGui.QApplication.translate("self", "xxxxxx", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_address.setStyleSheet(QtGui.QApplication.translate("self", "color:rgb(106, 106, 106)", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_address.setText(QtGui.QApplication.translate("self", "TextLabel", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_date.setText(QtGui.QApplication.translate("self", "TextLabel", None, QtGui.QApplication.UnicodeUTF8)) + self.line_3.setStyleSheet(QtGui.QApplication.translate("self", "background:rgb(50, 50, 50);", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_text.setStyleSheet(QtGui.QApplication.translate("self", "margin-top:5px", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_text.setText(QtGui.QApplication.translate("self", "TextLabel", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_delete.setText(QtGui.QApplication.translate("self", "Delete", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_back.setText(QtGui.QApplication.translate("self", "Back", None, QtGui.QApplication.UnicodeUTF8)) + self.actionOption_1.setText(QtGui.QApplication.translate("self", "Option 1", None, QtGui.QApplication.UnicodeUTF8)) + self.actionOption_2.setText(QtGui.QApplication.translate("self", "Option 2", None, QtGui.QApplication.UnicodeUTF8)) + self.actionBlabla2.setText(QtGui.QApplication.translate("self", "blabla2", None, QtGui.QApplication.UnicodeUTF8)) + diff --git a/GUI/message_window.pyc b/GUI/message_window.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4f78b7033495b68aaf67606cfed03a2cf3b5106c GIT binary patch literal 4846 zcmcIo>sAy;5bgowCJ3^Ew-`6ZB?~;FpFP7)1082)_RRDuc+8)e z2gp<8oIFmRAPY3gJ7UK_tOgmlu)upSdt9tn3@6qAE{`~p7x=4Te@c&&r z$rTJfejV{rh`TU-oa+P!CE|68->zv52wOPowH* zjy~qF2vAed0D}gE8Weg+sA1tB;9p1u#;}nXAfR|)ml&Rtu7fP*;D3q%0%8WOn30q( zwPuv3qe30x-H!=1&QP)dRImlWKfS~ z)Z?Ah6T&~(IX_9R$y^VvPuORtg!(jlIW0=$Mv(HN)PaQMBbF1UewLa;5Q+*G&1TN< z!Wp4HC*A%i2V;~X!NJD@L>*#L#J6jgXL%c6kg%VSH%RXNMZ2-h$P8UicHj&+*PL2z4=gxkOI; zsWZj*Di6J?Y0N+%V5Ib!Fq#KdEoNnKK7jxCuJ>Z;J!EFb2OGim2m z&YYF=e*bd8p|c6cn6p8;?b*D}TCcN~DJ$~EPAA>u=}iW;PbHYlmTvCHH_v?Y%y-Og z!Sc;pl8w`KOS;9pTn707-ljQnfr562*Y0#HW+)Hs@B;zoov<>$PWiHw`ldtXU0%D( z949Tuy_A}9lsY&Tcx{0>K4A{>Y$xJABknWeR9D0UMm%7|r&jAjst*p;sYRh4r79hC zr)uFen$J=)f-&uC`DaSLR{372{uM1vk7B7VLmhj;Yvpf9tw0d!cUl|6TY|Nel{obj zXs=|fRox4oc-v7+KWDbu6>gt9mq45Velv>In<&&7N9_vw8syWk9(xVRjkz2D98MH~ z2Qf5~jhg5CF`Ba;Oy|C*r8VlN&3~O3{`HoJ;=FhcSS$3egKum>>~UsErZ>QrdOBoV=Wu$99~_H z0#)B;*O!q9@HLzDV5{kcY(I&Hk<3LV;ysNdxqyvY4k&yS?MLJw_GPsdzLcR$C!LkS zy5~{sKaahprrcSHThgVBHl{4MlFd>}>nL=o0JwB3=Ceu8FqOi%i9J{;fC(;4F@yF5$fMevZ&H$ZU{ zr>v+U@@28?$wrjFFJH-^xEx1xV)NBvlE~)tB=`MA6j{*Ba@ny5ifd2iYj_iRBya)QBw&Ier z3p%);)I)oqL;FGT3ARfrJ`uY+YkUtBA28jahxb57xrHPeI->=yqd$AGIxK@`u&8*7D`>1!AB*>H}_;|e-FH=X1ppwzrK;;0q+jK4a4 zF>ju8w-PFG4X)ysbkv-`+T3DA_f7ln!)giK3H2`1)$=o*lUc4*IMMi>EpRO(iBwJb zRIexW7?-C#-P6nK%|CyiTj~A!_9CVB)4}g!ocbyewIJww?XeJ461dbiu5tV5AM4?Fh@Zbr4Gu6(A4-fdNG>a}-AEJCy)(B*rFA9l@Lt-jMU?km%6R5dh-` zv@i#9;YFn*??*;xJTKJElUtB{AXJUTR@y2pDZ4~&nRtcV8Oc_@jn|Hvi5qCZ&HTUo zS;`g&Ngrc5f8tpqT@bzv)77``|H3TN(McF+Ak5M%%*EF37=7;_pR4+|sus&Li%YFk zECl$Pw9!azm&sje%?+v_`70>yz^%_g>xYzB`j?`4RgxdL?7d|N0r3(@?rMJH>;ZSd zJaff+TSaMA=6N#8t-B^_iy-^9n2eH&mvOH-;Ykh7zX~pt5#Tc*!FJ+`W7Eh7j-?Xtm{6qmMS_L9%Z(MDVhO6?TrjLut#Fc(0}*WYmmj2rCVa z=hsy^wiQoVY<8-N)tvCK*`(ftRcOIB^4UnLP(~3YL{gSpnX*BoNs5Z3&u1HznN&-P z9jTI{&J(sn*OtI?(&WNDn51P<0AZAuTyIPzy=KbwiG5 zea6$L{&r&b%k`)Bv(5WRQYy6`ZAX2!HTOq((%%|B@7M4VALw@88BarLl(fCR1wv-k z>zW?Unz?DZX4Q1Po+md*g?cL{l|IUuZRc$;GH6I&7j(9h*-V19X+|8P$d`r=v<}aU zQTe4E1*z`IWcXU~^N^w9jmD1S+%{t*We%Q<$GJ-rc4eW%Fe|b)c2E{pV+;$ImYE&y zJiG4;?oj@MPPvL#T9>u_ZISV%Z|!UsXeMS`vWw&WGMnUJwd~=s)oG&<5ITqgW5F!n p80f#ZZo=zn!1r`9w34Chb|?lX6*;xx(h59ia(<}GBY`e^e*r|SXc+(i literal 0 HcmV?d00001 diff --git a/GUI/sent_window.py~ b/GUI/sent_window.py~ new file mode 100644 index 0000000..92e66fd --- /dev/null +++ b/GUI/sent_window.py~ @@ -0,0 +1,42 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'inbox.ui' +# +# Created: Mon Feb 22 18:29:55 2010 +# by: PyQt4 UI code generator 4.6 +# +# WARNING! All changes made in this file will be lost! + +from PyQt4 import QtCore, QtGui + +class Ui_SentWindow(QtGui.QMainWindow): + def __init__(self, parent): + QtGui.QMainWindow.__init__(self, parent) + + self.resize(800, 400) + self.centralwidget = QtGui.QWidget(self) + + self.centralwidget.setObjectName("centralwidget") + self.listView = QtGui.QListView(self.centralwidget) + self.listView.setGeometry(QtCore.QRect(0, 0, 800, 400)) + self.listView.setObjectName("listView") + self.listview.setProperty("FingerScrollable", True) + self.setCentralWidget(self.centralwidget) + + self.menubar = QtGui.QMenuBar(self) + + self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 25)) + self.menubar.setObjectName("menubar") + self.setMenuBar(self.menubar) + self.statusbar = QtGui.QStatusBar(self) + self.statusbar.setObjectName("statusbar") + self.setStatusBar(self.statusbar) + + self.retranslateUi() + QtCore.QMetaObject.connectSlotsByName(self) + + #self.setAttribute(QtCore.Qt.WA_Maemo5StackedWindow) + + def retranslateUi(self): + self.setWindowTitle(QtGui.QApplication.translate("InboxWindow", "MainWindow", None, QtGui.QApplication.UnicodeUTF8)) + diff --git a/GUI/stacked2.ui b/GUI/stacked2.ui new file mode 100644 index 0000000..b3b8ae7 --- /dev/null +++ b/GUI/stacked2.ui @@ -0,0 +1,217 @@ + + + MainWindow + + + + 0 + 0 + 800 + 400 + + + + Retro Conversations + + + + + + + 0 + 0 + 800 + 400 + + + + + QLayout::SetMaximumSize + + + + + + + QFrame::Box + + + QFrame::Raised + + + 5 + + + 0 + + + xxxxxx + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + 5 + + + 0 + + + + + + 26 + + + + color:rgb(106, 106, 106) + + + TextLabel + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + QFrame::StyledPanel + + + TextLabel + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + background:rgb(50, 50, 50); + + + QFrame::Plain + + + 5 + + + Qt::Horizontal + + + + + + + margin-top:5px + + + TextLabel + + + true + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + Delete + + + + + + + Back + + + + + + + + + + + + + 0 + 0 + 800 + 25 + + + + + + + Option 1 + + + + + Option 2 + + + + + blabla2 + + + + + + diff --git a/bak/contactsServ.py b/bak/contactsServ.py new file mode 100644 index 0000000..95aa7f9 --- /dev/null +++ b/bak/contactsServ.py @@ -0,0 +1,104 @@ +import evolution +from pygobject import * +from ctypes import * +#from wrapper import * + + +ebook = CDLL('libebook-1.2.so.5') +E_CONTACT_HOMEPAGE_URL = 42 +E_CONTACT_PHOTO = 94 +E_CONTACT_EMAIL = 97 +E_CONTACT_BIRTHDAY_DATE = 107 + +class address_book: + + def getContactNameFromPhone(self, phoneNum): + + + addresses = evolution.ebook.open_addressbook('default') + contacts = addresses.get_all_contacts() + + + #ai = GList.new(ebook.e_contact_get_attributes(hash(self._contact), E_CONTACT_EMAIL)) + + for econtact in contacts: + + try: + #print econtact.get_name() + phones = econtact.get_property('phone') + + phones_p=int(str(phones)[13:-1],16) + phoneList = GList.new(phones_p) + + while phoneList.has_next(): + currPhone = string_at(phoneList.next()) + + if currPhone == phoneNum: + return econtact.get_name() + except: + continue + + + + + def populateNames(self, recvLst, sentLst): + + addresses = evolution.ebook.open_addressbook('default') + contacts = addresses.get_all_contacts() + + listX=[] + + + """"for msg in recvLst: + for contact in contacts: + try: + phones = contact.get_property('phone') + phones_p=int(str(phones)[13:-1],16) + except: + continue + + phoneList = GList.new(phones_p) + + while phoneList.has_next(): + currPhone = string_at(phoneList.next()) + if currPhone[-7:] == msg.fromNum[-7:]: + msg.setSenderName(contact.get_name()) + break + """ + + for contact in contacts: + + try: + phones = contact.get_property('phone') + phones_p=int(str(phones)[13:-1],16) + phoneList = GList.new(phones_p) + + + + + + + + + + while phoneList.has_next(): + currPhone = string_at(phoneList.next()) + for msg in recvLst: + if currPhone[-7:] == msg.fromNum[-7:]: + msg.setSenderName(contact.get_name()) + + for msg in sentLst: + if currPhone[-7:] == msg.toNum[-7:]: + msg.setRecName(contact.get_name()) + photo = contact.get_property('photo') + pi = cast(c_void_p(hash(photo)), POINTER(EContactPhoto)) + + if pi.contents.data.uri.startswith("image/"): + #data = string_at(pi.contents.data.inlined.data) + data = string_at(pi.contents.data.inlined.data, pi.contents.data.inlined.length) + length = pi.contents.data.inlined.length + msg.setImageData(data, length) + + + except: + continue diff --git a/bak/contactsServ.pyc b/bak/contactsServ.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9a3b358f1b64d405d103352a4bd527c9124929aa GIT binary patch literal 2076 zcmb_d-EJF26h5&z4q=n z*piKq!UJ#xJOHo3LvYn6;03sXD>&b=la#<^oSCyTbAIOhd}s38AIpVrSHJtBP4l0} z-_LlaUoi=JC^{u-&DIW`Dr(}CR}M9eOQB2Widq>8Gt|mbn5C9Sp+~J8g*j?1P{^Y| zVV=GxIwyMG%EM-(xXAXSzxh`$DqdQUhv{ofJJF#zjN{V}KU)8IJ&o5NMGqnSHAn!$ z4v}4A5`9NdhBOS(~XnB4}+^IYIr;hFx*#PS`A zA`$1{rVdRUia1cBsY|1uY2s4#;0Ky!XgsA!h9VB%K^~@AvOGMRWU=Msa9ZBuq?|i6 z^~mNZTA+z1qB$CE(1cI&FdVOwvIW^MVh>|1%0tl$hvG$2xM&Hyh8mob+TS0%Pf97K zJf88~=QtZhRItuBah1$bFzi_Nh^T)O_e`|RD@l5En^#3_Ey6cvac5|wxF@obeG7@W zZ+iYb%Sf^u9vkZiosQpT@t|!}DFqJu3CkyTY+Y83dRD%vO~mMvT9nRCdgdF8e4hlV z-!mgC9Gt81>$iQqb=$azD6jo|FN1`qf)rVbCpZjQ1VO@F#6K1~Ss?5_c z6B7N@?~A@{#6w)v9wx~i5?1652}w72RX&Nkrfh@6oR)V2(~a*}&6(+x_mcR9Y1{ja zokrQR59Py7P`+@YVUn};{@C7O0~}6embE$u^?4F^<(d^{rSC8ycU3KAbL2U$v!d>) z700DzwdyRZHRY-{@(SEzR(Pf*2K#lix`5{#trCfxcSy*pV1bg=@K@31#~ zuq`=o<~xXy|ExNdq3b0D=chqY@fc^eqq+Qd;kbOABm*l^WYHz0f46 zxkg(_L)aJsFvSAew81TkJ$N8i64O4bao6Db)buQ`_3OOWYmk6@9d4>;!k@!UzX3k5 zrtgBh$wd0Fn;zdJnh{t(?hiYGHSjzw@j?0l6LJ{Cj<+T#RgINJ^SNK$Y;K90HyyiVd}Eg5PmzZds9aJ7RmdzUZ}#W>1BDf}#Q*>R literal 0 HcmV?d00001 diff --git a/bak/csv_service.py b/bak/csv_service.py new file mode 100644 index 0000000..b50f24d --- /dev/null +++ b/bak/csv_service.py @@ -0,0 +1,61 @@ +import csv +from recv import recv +from sent import sent +from contactsServ import * + +class csvServ: + def __init__(self, recvFile, sentFile): + ifile = open(recvFile, "r") + reader=csv.reader(ifile) + self.recvLst=[] + self.recvNumbers=[] + for row in reader: + self.recvLst.append(recv(row[2],row[5], row[7])) + self.recvNumbers.append(row[2][-7:]) + + #print "WILL" + + #self.recvLst = z.populateNames(self.recvLst) + + + ifile.close() + + ############################################## + + ifile = open(sentFile, "r") + reader=csv.reader(ifile) + self.sentLst=[] + self.sentNumbers=[] + for row in reader: + self.sentLst.append(sent(row[3],row[5], row[7])) + self.sentNumbers.append(row[3][-7:]) + + + + abook=address_book() + + abook.populateNames(self.recvLst, self.sentLst) + + + + + def getAllReceivedMsgs(self): + msgs=[] + for msg in self.recvLst: + msgs.append(msg.getSummary()) + return msgs + + + + + def getMsg(self, msgNum, msgType = 0): + #msgType 0: recv, 1:sent + + if msgType == 0: + return self.recvLst[msgNum] + + return self.sentLst[msgNum] + + + def getMsgText(self, msgNum): + return self.recvLst[msgNum].getMsg() diff --git a/bak/csv_service.pyc b/bak/csv_service.pyc new file mode 100644 index 0000000000000000000000000000000000000000..526cca6001a3bc1b04cd314c9a3664188b879403 GIT binary patch literal 1865 zcmb_dQH$F~5T2D}`{Z8eB@Zo^rZmt}Lfxw7DpjPmXra zy}%g?&U1cL{z3jq-uje$-^h-kEqUo#-qGyt?94Ya-`a2AT^ha~{PjyA>(2o1dl>Ej zqQuw8ROGPJ1DP7BjT{;=+zVwINFB&w(9I*6hVr=VNjZ?RFRw&aBEKI-^fF0y;IVp- z&p0tqeFV|kVzHe$d*Ztp4Q_aXDcoXW+r>wK-1!;9-Gs1!W(X6Z00LpCgi;2oAaJNk zPtr-kctr?7w=u>83^#&9FLDkyMpl6=L-9tcK+Z#18Cgbhj9rl|+$fQpjpaO&hkrbh zWsiGRC{<50CAhgHL9Bt(iT8SF5>3L~e?JoQOtMdrjabbKqJF=})vwV(&Wr`i~3{cdK zvwDg=*_@)jK9v%Y--XD_vbD}-M@=*J1Tt^tr*-b_IGT= z8F}mc=%~&|C`RT$?5eQ0<}WpFmQ^Q}&oTyc-_y7G98ZjAAbpdVYlC6*kCiA63Z~8a zay-Crw;_(vL?dV4X$J*l-Ipau4Qd-Q41HVSdXj&8;2-ZN-Ha1DNm-I~2;nJ?t)HCE zW_kOv+uh>^Z_~^jJFNH|AF!{mbWO;5VT^0RS|0aufb{y zIQ@!Kj0+;%y0L)z*q-^j@VkbaFo`uEPjFqbOi7Ssv!*<)F-^aKL3)*f5Yw+Aw!l>T zzt|f1>vPkxu?Gj+dE%0Cq6H{VqPT7{?#E-r_30f#fO|h%nsDjqa~4q;XA{n zj6;SRhwN!NM4Q4gtvt0VA}OoZX#C7$#i0+WF*75FNMGXkbB{oNLTFk|ctyrp z9KR-7j8!N*L<86~TrvHg6Vq`V#Tq&FkQAIornpp3mQO!vF_>%B7L2-8*f*@mUhKv= zM(@zTZK#^vfAWmyTBox`A7Bm7unW7H_%zi@N>_!Hy2|Gzj)I3TI;_}LaO+nCb=F^& lO(30HDZ^XW^@DcM3R>eD!EF#btP#-FdQ?|;%m9V~J^_uE%sBu6 literal 0 HcmV?d00001 diff --git a/bak/pygobject.py b/bak/pygobject.py new file mode 100644 index 0000000..150deae --- /dev/null +++ b/bak/pygobject.py @@ -0,0 +1,156 @@ +from ctypes import * +import sys +import ctypes + +import gobject + +# ------------------------------------------------------------------------- +class _PyGObject_Functions(ctypes.Structure): + """GObject <-> Python mapping from http://faq.pygtk.org/index.py?req=show&file=faq23.041.htp""" + _fields_ = [ + ('register_class', + ctypes.PYFUNCTYPE(ctypes.c_void_p, ctypes.c_char_p, + ctypes.c_int, ctypes.py_object, + ctypes.py_object)), + ('register_wrapper', + ctypes.PYFUNCTYPE(ctypes.c_void_p, ctypes.py_object)), + ('register_sinkfunc', + ctypes.PYFUNCTYPE(ctypes.py_object, ctypes.c_void_p)), + ('lookupclass', + ctypes.PYFUNCTYPE(ctypes.py_object, ctypes.c_int)), + ('newgobj', + ctypes.PYFUNCTYPE(ctypes.py_object, ctypes.c_void_p)), + ] + + +# ------------------------------------------------------------------------- +class PyGObjectCAPI(object): + """GObject <-> Python mapping from http://faq.pygtk.org/index.py?req=show&file=faq23.041.htp""" + + def __init__(self): + addr = ctypes.pythonapi.PyCObject_AsVoidPtr( + ctypes.py_object(gobject._PyGObject_API)) + self._api = _PyGObject_Functions.from_address(addr) + + def pygobject_new(self, addr): + return self._api.newgobj(addr) + + +# ------------------------------------------------------------------------- +class GList(Structure): + """GList representation and convenience functions, based on Java's Iterable. + + Copyright (c) Andrew Flegg 2009. + Released under the Artistic Licence.""" + + + # ----------------------------------------------------------------------- + @classmethod + def new(clazz, ptr = None): + """Return a reference to an empty, or valid, GList at the + given pointer address.""" + + if ptr: + return cast(c_void_p(ptr), POINTER(GList)).contents + else: + return GList() + + + # ----------------------------------------------------------------------- + _fields_ = [('_data', c_void_p), + ('_next', c_void_p), + ('_prev', c_void_p)] + + _ptr = None # Initialises to before the list for `while(has_next)...' + + + # ----------------------------------------------------------------------- + def reset(self): + """Rewind the iterable to the start of the list.""" + + self._ptr = None + + # ----------------------------------------------------------------------- + def has_next(self): + """Return True if the list has an item on which next can be called.""" + + return (not self._ptr and self._data) or (self._ptr and self._ptr._next) + + + # ----------------------------------------------------------------------- + def next(self, as_a = None): + """Move the pointer on to the next item in the list and return its value, or + raise an exception if already on the last.""" + + if self._ptr and not self._ptr._next: + raise Exception("IndexOutOfBounds") + + self._ptr = self._ptr and cast(self._ptr._next, POINTER(GList)).contents or self + if not self._ptr._data: + return None + elif as_a: + return cast(self._ptr._data, POINTER(as_a)).contents + else: + return self._ptr._data + + + # ----------------------------------------------------------------------- + def set(self, value): + """Set the data in the current position in the list.""" + + if not self._ptr: + self._ptr = self + + self._ptr._data = cast(value, c_void_p); + + + + # ----------------------------------------------------------------------- + def add(self): + """Add a new entry on to the end of the list, ready to be "set".""" + + self.reset() + while self.has_next(): + self.next() + + if not self._ptr: + self._ptr = self + else: + new = GList() + new._prev = addressof(self._ptr) + self._ptr._next = addressof(new) + self._ptr = new + + +# ------------------------------------------------------------------------- +class EContactPhoto_inlined(Structure): + _fields_ = [('mime_type', c_char_p), + ('length', c_uint), + ('data', c_void_p)] + +class EContactPhoto_data(Union): + _fields_ = [('inlined', EContactPhoto_inlined), + ('uri', c_char_p)] + +class EContactPhoto(Structure): + _fields_ = [('type', c_int), + ('data', EContactPhoto_data)] + +class EContactDate(Structure): + _fields_ = [('year', c_uint), + ('month', c_uint), + ('day', c_uint)] + +# ------------------------------------------------------------------------- +class EVCardAttribute(Structure): + _fields_ = [('group', c_char_p), + ('name', c_char_p), + ('params', POINTER(GList)), + ('values', POINTER(GList)),] + + def value(self): + if not self.values: + return None + + return self.values.contents + diff --git a/bak/pygobject.pyc b/bak/pygobject.pyc new file mode 100644 index 0000000000000000000000000000000000000000..39eeaa16ea10931b5e06b2b7663292b9094d7446 GIT binary patch literal 5944 zcmcIoO_S8d8E(xdv+S~ff#3ve6;AAN3h!X-isJ+b%d${7X4z;l33E|trJfmiXQV;u z*<~mvsS2*jA*Y;j%Rk61eRY8=D)qEmQ&C;%y7V^6-iC^rO53p~%HF1mT1D?l*?U4oCzWo=3ae%Bii*~Xv8T%3 zlPX#-dQX?Vt13EE^qwty*C^9o`z=Ts{~N!ygPLLS!yR)DH-C3}|Iz-}IyC;hNfMek zP4W_{6Buv@SN<0i5Zod|92~wXu1N{eQEx~o0>>w$enPzjBp6(g=Hg&Hs>mbYS*~Me z)r&`Vye;jcX7R|raq&?xt6x{$mh$%64Q~4>ikWoojgM}*yHhhr6L%Dh$8pkkds#Yi z2gZzl(&_YqXB*>b-yCeDS-%q}k$#T$&oce&WW^7Jj z^-TBU+~~{?he4j3(~Dh48Q!Bab7rwKkCTHQfj)`eVVWLH#&#-MndqZ_y8m^11$9I4 zeLo3C+V>56e1DWilOdZN?E6s~qE1OeGac((M(sYm_tnnUc5IXZ&v>yH&nsJS8efipQ11@G)Ki1sZ^DzsTkaJ`2TB1 zL0NHAeIw0pphB3vf_ZYKoi5}zv2>f;msYNaJ*jZWvXnlfaGb=(_us**a&lEUE$6%w z^3}y9=+Sn7Nh|tYf7H@Qw1F-JmJ7h$F)!`5hJ zbYl5mQOMrhOpn1YotS`e#0`?j4b$XMC$UaK?TX)HfVt}K2f2=1jQJus3_i%+2k@c6 z{!nkMxcEtd`&K%hW^sRD+;;e(yP1H!NAA6$?)TjrSRAd}n6popeapRm?b_#dI%ax$ zsO1$Cc=F6O1MO~R2KdFH`(+$*I~yeh38hf5g9@0JURDn57-7=V(7>9jV#F23ygi34 z*ex*L6Efz%!bDG-Nd}>TLQiKRut|Y|t4Cuqz3Qf!dl(Gk=&EbM3JkYZh)S{hF`#nC zDf}|_JTumf9pRoBXBgzhqcw}!?>>64^LX3yF0q5G1l9)N=hm#n#}9)SFR)wqc(XjS z=6W!XYq(j9t~Z^_72&8K1yDX;4Fh^^Yz?G16mMC0%q`BOrw4*`gGi=IC_h5Cr;iYU zMQibl7%s4+7IOq2e+bCxId7MqO8_(r)2SH920f-R|=4cRy z1DD{sA-eZ9Zo{FDHYDVEA8@7jSbQJF8^C}>!(@*xP43Z*V3RogC> z@-CyxV^9_Q_ugeq^!`3-^AIWK0CfdRGXg4@p!@>&oIzXFE;^?x*PS(|?$8mGewFZU zaTGm;g?_xYphIfjI$7`mDzZa-#IMpDe2kfUT0Eso*W%8U5Kc0PvE-Wke(vJ#8hAMO)T>Yt~arV%_wpM zc#g{+s*6td1DSlaV` zz!4I-V)+^LO3ule9&Q6;rw%3w4Ifuy!Y^0HJ zM;^^b_9lVWBf%|`UK5qMf=7DJWsutOLW~$Q*U6dRHfoJp)mcB;Ldv{eY1CScR&(`C z>!dl4hud2S_d#fO2dPPMmK(;2jzT<;A1&YxuAIuz#nD~cQ@5PnXD9O-6GNtf_2Sqh zx*Nqfck)yz=gXl^`eq=$gjOi0>jfYg%I!JSpCEaeBez^^KEZ2#Lz#FAXaJLzW6q-b zDiYja2?Kc{Fu17vFBtmxwj+l|nyI8#Gc+Z0nq=|o**`bpQD~vZa)tacmVJpUrv@pc zoJ(F2@i@|PRjSqd5h}0CCHBD$yaBm>ie-O~Yc3bPav|5y6}lWVb;mD7+xh&(g_Q?3N#r#74(K7L0PK zO8m(2R#4Jq=`hOQ=`<{rb3xX?Y5O+uUrwfzc1 zMceOTa>BQ18$F3A>Z=3?V^3_4mg12{9$>G31zd!+u7*MRn&FP^|DnTxGTT_FEU$ NEQVM literal 0 HcmV?d00001 diff --git a/bak/recv.py b/bak/recv.py new file mode 100644 index 0000000..ed0608c --- /dev/null +++ b/bak/recv.py @@ -0,0 +1,27 @@ +from message import message +from contactsServ import * + +class recv(message): + + def __init__(self, fromNum, date, msg): + self.fromNum=fromNum + #message.date=date; + #self.contacts=address_book() + + + + message.__init__(self, msg, date) + + + + def setSenderName(self, name): + self.fromName=name + + def getSenderName(self): + try: + return self.fromName + except: + return self.fromNum + + + diff --git a/bak/recv.pyc b/bak/recv.pyc new file mode 100644 index 0000000000000000000000000000000000000000..92fdc415ee4acf5550f16867aa9152a1568104f7 GIT binary patch literal 1036 zcmb_aO>fgc5PfT>p^2#k5?7>1Tr3Xw!Vw_^+^R;%Mk?fD8G92<{DHjNNR=XSXn$RA z{1x~CFmFst&rr)VJM*+V^XBb-|8X?G`uXj+#Gmg#)>mTgxwuMxgDubiE5I-hur+vJ zg|NWdpqk(kxBxz`0#pac;;9_0f5{gciTpirt#z*0*byN5)KA0@w%pw`Cj45=JrO6h zS5h0S&ALW|kll$)kY;fx`%0F%wl_Sz5Vtqj1GzLer~}6P5c>cZp^lI#kEIq+dh4NY zmuGD%N8t~}<$2xJKF?#8R;tc6>y#Zes|s&Dv({~5S)fiOOFs9lO?)xfZE{lBwqLxp zJKH4hhW?8!{USTb5^tSPJ~c%`0iJz5PuYgDIR-GZX&K0RZ93PH05@}05S=O5a+H*u zb%>(1F^{FZMy1*jlH@-rdiHnLXSS>Cu#}ZNgu~%FrkUWVpWMqo>Qkh_j66!zB+3p)r(1qrIEP5 ztTg)f`{vlx%JI^t!7Q4E<8vIJ;C(^MzVk)tU1o<}%KdlMTp#$0al)6pG<|dr%sluF DD9_4n literal 0 HcmV?d00001 diff --git a/bak/sent.csv b/bak/sent.csv new file mode 100644 index 0000000..aa0beb6 --- /dev/null +++ b/bak/sent.csv @@ -0,0 +1,160 @@ +sms,submit,"","0102412751","","2010.01.15 22:30","","Log base 2 byb2a (log el 7aga)/log 2" +sms,submit,"","0102412751","","2010.01.14 12:43","","Ana s7eet law 3yza tenzeli badri" +sms,submit,"","0124641123","","2010.01.12 03:20","","Call menna ya reem :D" +sms,submit,"","+20124641123","","2010.01.10 12:22","","Yes, 3nd nora" +sms,submit,"","+20102412751","","2010.01.10 02:54","","9:30 hnak isA" +sms,submit,"","+20102412751","","2010.01.03 02:44","","A baz khales wala a? :D" +sms,submit,"","+20102412751","","2009.12.25 04:40","","Tab forward 3laya w h2olk tom isA" +sms,submit,"","+20102412751","","2009.12.25 04:33","","Call if u can 3shan ana bra" +sms,submit,"","+20102412751","","2009.12.24 14:23","","Ok :)" +sms,submit,"","0106676915","","2009.12.16 21:09","","La2" +sms,submit,"","0146068600","","2009.12.13 18:28","","Fi tawsila wala astana" +sms,submit,"","0102412751","","2009.12.11 15:39","","70044501980526" +sms,submit,"","+20102412751","","2009.12.11 00:47","","Ok w reem 2altli nb2a n2olha, 2olelha" +sms,submit,"","+20100046084","","2009.12.09 18:15","","Ok man waiting" +sms,submit,"","0100046084","","2009.12.09 18:06","","tigi m3aya wala amshi ana?" +sms,submit,"","0102412751","","2009.12.09 07:21","","Thx ya menna bs no printer" +sms,submit,"","+20106676915","","2009.12.07 02:33","","eshta ya GaWeeeZYY :D (k)" +sms,submit,"","0106676915","","2009.12.07 02:01","","Kol sana wnta tyb ya seeeeeees" +sms,submit,"","+20106614819","","2009.12.06 05:10","","hehehehehehe" +sms,submit,"","0102412751","","2009.12.05 01:37","","bkra 1st" +sms,submit,"","0100046084","","2009.11.27 04:45","","w haPpY 3id :D" +sms,submit,"","0100046084","","2009.11.27 04:44","","Happy BD YA mAAAAN W 3o2bal DisHILioN SanA :D:D" +sms,submit,"","0102412751","","2009.11.22 16:18","","tyb" +sms,submit,"","0102412751","","2009.11.22 12:34","","Call me lama ts7i" +sms,submit,"","+20106614819","","2009.11.17 17:29","","No" +sms,submit,"","0180742083","","2009.11.12 19:31","","0197920358" +sms,submit,"","0101272889","","2009.11.09 16:49","","Assi el multimedia copy mn 3l net wala our own words" +sms,submit,"","0102412751","","2009.11.09 14:32","","Khaliha 2" +sms,submit,"","0101272889","","2009.11.03 10:40","","Fen el lec" +sms,submit,"","0101272889","","2009.10.28 15:29","","Ana khalast el mafrood a3mlo f scad" +sms,submit,"","0101272889","","2009.10.27 10:36","","El lec fen" +sms,submit,"","0101884293","","2009.10.24 12:29","","Happy Birthday ya Raghda :)" +sms,submit,"","+20102540550","","2009.10.18 13:27","","5th" +sms,submit,"","0102412751","","2009.10.16 09:00","","boring boring boring boring boring boring boring boring boring boring" +sms,submit,"","0102412751","","2009.10.12 13:07","","Call me when u finish" +sms,submit,"","+20111224971","","2009.10.10 17:39","","713445487498082" +sms,submit,"","0102412751","","2009.10.08 08:36","","Ana s7EET :D" +sms,submit,"","0102412751","","2009.10.07 09:55","","m3lsh kont nayem. call me anytime lama tes7i" +sms,submit,"","0182222662","","2009.10.04 22:59","","Happy Birthday ya REHAM :D 3o2bal gogellion sana :D ana ba3t 3la fkra mn el sob7 bs ektashaft eni ba3t le nemra ghalat :D:D" +sms,submit,"","01812222662","","2009.10.04 13:10","","Happy Birthday ya REHAM :D 3o2bal gogellion sana :D" +sms,submit,"","0104446308","","2009.09.17 20:17","","Ya shero howa reham 3arfa wala la2 en fi bday bahaa. wna tare2, e7teyati :D" +sms,submit,"","0123526683","","2009.09.07 13:01","","Ana gai m3ak" +sms,submit,"","+20102412751","","2009.09.07 11:10","","Tiggo!:D Allah ybark fiki :) w 3am lama y3emekkk" +sms,submit,"","0102412751","","2009.09.06 21:33","","Sa7 3arbya :)" +sms,submit,"","0101272889","","2009.09.03 07:34","","Event esmaha SafeNameEvent" +sms,submit,"","+20102412751","","2009.08.21 22:05","","wnti tyba ya monmon looollll" +sms,submit,"","+20106504570","","2009.08.21 22:03","","wnti tyba ya samia Ramadan karim" +sms,submit,"","0122257078","","2009.08.20 14:51","","0104601814" +sms,submit,"","0103405520","","2009.08.18 13:00","","0106614819" +sms,submit,"","0123174186","","2009.08.17 06:35","","Reneli lama tes7a" +sms,submit,"","0122257078","","2009.08.17 03:42","","Reneli lw sa7i" +sms,submit,"","0122257078","","2009.08.16 08:58","","Kalmni awl mats7a" +sms,submit,"","0100046084","","2009.08.14 06:01","","El shela el gamda awi:D" +sms,submit,"","0119999764","","2009.08.06 03:20","","Kol sana wnti tyba :)" +sms,submit,"","0111966691","","2009.08.04 21:42","","Plz answer tarek" +sms,submit,"","+491639498283","","2009.07.28 18:29","","Sa2lt mal2tsh liki :P w b3den hwa enti katabti 3a2d asln:D 3ayz ashfko awel matigo isA rg3in emta" +sms,submit,"","+491639498283","","2009.07.28 17:00","","Ana l2et certificate wasfi m3aya ahe nw. El mfrod 2 slots lih 1800 bs lazm id bta3o 3shn el chek. Enti msh l2ilek 7aga esra7a w mfish 7d hna as2lo wla abosafi." +sms,submit,"","0112365365","","2009.07.24 09:14","","SalamoOOoOooo" +sms,submit,"","0127620656","","2009.07.20 12:40","","Kalmni lama ts7a" +sms,submit,"","0102412751","","2009.07.10 03:06","","Kol sana wnti tayba ya manoun :):) isA ya rab y72a2lk kol el bttmanih w tb2i btd7aki 3la tol daymn :)" +sms,submit,"","0104446308","","2009.07.09 21:50","","El me7war msh byt7arrakk!!!!!!" +sms,submit,"","+20102412751","","2009.07.09 04:59","","yes mshit, bs ftni el maghrb bs kont f cinema w nsit khales :s bs tale3 el beet aho dlw2ti w hasalih. Thx 4 checkin :)" +sms,submit,"","0101272889","","2009.07.07 06:53","","Xp-dev is down. 3shan kda svn msh sha3'al nw 3nd kolo" +sms,submit,"","0106247887","","2009.06.28 16:17","","Fi 7alet na7s" +sms,submit,"","+20105213977","","2009.06.25 14:13","","No problem, Sunday at 1 pm then. Tarek Galal" +sms,submit,"","0106960034","","2009.06.19 16:54","","Law hatgib fool, 2 fool bl beed, 1 batates" +sms,submit,"","0123526683","","2009.06.15 11:02","","Ana rakeb taxi speranza :D:D" +sms,submit,"","+20102540550","","2009.06.09 16:19","","E7na fe beet samo haneegy kaman shewaya" +sms,submit,"","0109900966","","2009.06.08 15:46","","H10" +sms,submit,"","0182222662","","2009.06.03 18:40","","aiwa b2aaaa obama gayelnaa el KHALIFAAA :D:D" +sms,submit,"","0109900966","","2009.06.03 03:13","","Happy Happy Happy Birthday ya lamaa w 3o2bal isA lama yt7a22lek btetmani :) w enjoy b2a u turn 20 once brdo:D" +sms,submit,"","+20101326461","","2009.06.02 14:27","","3enaya" +sms,submit,"","+20101326461","","2009.06.02 14:25","","Nop" +sms,submit,"","0101272889","","2009.06.01 12:13","","Room el CA el kona fiha" +sms,submit,"","0101272889","","2009.06.01 12:06","","Meeting room" +sms,submit,"","0109900966","","2009.06.01 11:58","","Khaliki kda nayma f betkooo :D" +sms,submit,"","0106676915","","2009.05.28 15:12","","Ana fakes msh haynf3" +sms,submit,"","0109900966","","2009.05.23 17:58","","Et2agl bokra bleel" +sms,submit,"","0103734088","","2009.05.20 10:52","","2alek ray7a el 2ola.. No comment! :D" +sms,submit,"","+20106676915","","2009.05.19 03:31","","Fucken thanks ya gweeezooo :D" +sms,submit,"","+20101884293","","2009.05.19 03:25","","Thanks raghdad:)" +sms,submit,"","+20109900966","","2009.05.19 03:24","","Sanks :D yalla 3o2balek kda lama tkbari w tb2i 2adi" +sms,submit,"","+20161056130","","2009.05.09 15:28","","Ana fl gm3a w msh h3raf akhosh onln lel asaf enhrda.. ema arwa7 b2a:D" +sms,submit,"","0161056130","","2009.05.09 15:13","","GOT MY 1ST RENTACODER JOB!! :D:D" +sms,submit,"","0112365365","","2009.05.08 03:40","","Ana budu" +sms,submit,"","0112365365","","2009.05.08 03:40","","Solom ma3lesh ma3ish feloos 5ales walahi mesh ha3raf agy" +sms,submit,"","+20106614819","","2009.05.02 14:47","","" +sms,submit,"","0126111564","","2009.04.29 09:23","","Call amrehab" +sms,submit,"","0127620656","","2009.04.27 05:40","","Please bring tomorrow a copy of ur guc id and ur personal id and forward this msg to wasfi" +sms,submit,"","0100048666","","2009.04.22 21:36","","Kol sana wnti taybaa! :):) sry 4 being that late.. isA ya rab y7a22lek el btetmamih :)" +sms,submit,"","0127620656","","2009.03.17 13:47","","3al2et moot haynzl bokra ya mao" +sms,submit,"","0127620656","","2009.03.17 12:03","","Samo 3andak??" +sms,submit,"","+20106614819","","2009.03.07 15:03","","Abu safi" +sms,submit,"","0106676915","","2009.02.23 23:03","","ana 3omri mhb3tlk msg tani" +sms,submit,"","0106676915","","2009.02.23 23:01","","Fi KENTAKY FEL BEET!! :D" +sms,submit,"","0106676915","","2009.02.23 22:59","","KENTAKY FEL BEET!!" +sms,submit,"","0106504570","","2009.02.23 22:55","","3shan lw 7ad kan fhemni ghalat, ana kan asdi mayfn3sh ne2ta3 m3ah tb3an" +sms,submit,"","0100704241","","2009.02.22 06:41","","With you" +sms,submit,"","0100046084","","2009.02.21 14:28","","Password el gweez Nothing_88 eb2a 2olo tl3 fiha underscore" +sms,submit,"","0109958830","","2009.02.20 01:04","","Aisha e7na lesa fl gam3a!!! G3aaaaaan" +sms,submit,"","0100704241","","2009.02.18 07:21","","m3ako ya no7 isA... w 7ale2 el mradi" +sms,submit,"","+20127620656","","2009.02.16 16:44","","Qwerty_456" +sms,submit,"","0100704241","","2009.02.16 01:15","","m3ako ya nanno bokra isA. has7a 9 kda eb2i kalmini. w hakoon 7ale2 :D" +sms,submit,"","0106504570","","2009.01.24 00:19","","Kol sana wnti tyba ya samsoon w 3o2bal ya rab y7a22lek el btetmanih w yrzo2k b fares el a7lam kda ader ya karim:D" +sms,submit,"","0109958830","","2009.01.21 14:30","","Sent" +sms,submit,"","0106676915","","2009.01.20 07:26","","Lazem ya ged3an tigo tshofo haifaa labsa ezay enhrda ""A 7 A"" :D" +sms,submit,"","+20101326461","","2009.01.08 08:57","","matnsashh" +sms,submit,"","+20106504570","","2009.01.04 00:49","","aho enti el koko! :D" +sms,submit,"","0109958830","","2009.01.04 00:43","","ya aisha msh 3aref 2a2olek a:D gebt 8/10 bel rules el khadtaha menek :D akhiran zedt 3an el 3 :D" +sms,submit,"","0106614819","","2009.01.03 14:27","","Makaltsh ya3ni :P" +sms,submit,"","+20109958830","","2009.01.01 00:23","","may all ur dreams come true too ya Aisha :) Happy new year <: o)" +sms,submit,"","0123526683","","2008.12.28 12:13","","KOL DA" +sms,submit,"","0123366769","","2008.12.21 08:00","","Kalmni awel mats7a abl matnzl mn el beet" +sms,submit,"","0109958830","","2008.12.19 17:18","","ya aisha ya t3bana assi el graphics sahl awi :P" +sms,submit,"","+20182222662","","2008.12.08 00:17","","wnti tayba ya reham thnks. aho abadt w sha7ant w radeet :D" +sms,submit,"","+20109958830","","2008.12.07 04:00","","thnks ya aisha kol sana wnti tayeba :)" +sms,submit,"","0122768786","","2008.12.06 12:12","","FesFes :D kol sana wnta tayb w 3o2bal meet sana <: o)" +sms,submit,"","0106676915","","2008.12.06 12:10","","Gwezzwezyyyyyyyy kol sana wnta tayb ya man w 3o2bal el enta 3ayzo isA <:oD :D. t3ala yalla 3shan na7tafel :D" +sms,submit,"","0106614819","","2008.11.29 14:26","","ana ta7t" +sms,submit,"","0102540550","","2008.11.28 18:46","","Ebtedi be tani wa7da" +sms,submit,"","0123526683","","2008.11.16 11:25","","Matensash el flash" +sms,submit,"","0101768332","","2008.11.15 17:05","","Call me when u finish..fawzy" +sms,submit,"","0106504570","","2008.11.15 09:55","","Call me awel ema tigi" +sms,submit,"","0103734088","","2008.11.05 09:26","","msh 3andek el 1st ya bent :@" +sms,submit,"","0106960034","","2008.11.03 14:54","","Efta7 el comp bta3i pass: unfaithful w keyring:00-10-15. Efta7 amsn recieved fel home hatla2i grid eb3atholi nw drory" +sms,submit,"","0102540550","","2008.11.03 13:21","","Hwa da math :D" +sms,submit,"","+64212322048","","2008.10.30 22:06","","ana raye7 7aflet mounir fl guc mngherek :p" +sms,submit,"","0100046084","","2008.10.30 17:13","","kalmni awel matokhrog mn el tut" +sms,submit,"","+20100046084","","2008.10.30 17:07","","Wna m3aya wa7da brdo" +sms,submit,"","0105136548","","2008.10.29 19:05","","enti fen el lab aw el tut bta3ek" +sms,submit,"","0100704241","","2008.10.29 18:30","","Kol daaaaaaaa :@" +sms,submit,"","0100046084","","2008.10.29 17:14","","Yes" +sms,submit,"","0101884293","","2008.10.24 02:05","","Happy birthday ya raghdadd w 3o2bal 100 sana isA :) :)" +sms,submit,"","0103734088","","2008.10.22 19:01","","Call me when u finish 3shan msh mrawa7 fl bus" +sms,submit,"","+20106676915","","2008.10.18 13:03","","3amalt a" +sms,submit,"","0101202017","","2008.10.14 20:03","","msh adeerrrrrrrr" +sms,submit,"","0105541210","","2008.10.04 22:46","","bos ana haro7 agib 7aga mn compume f city stars watla3 3lehom" +sms,submit,"","0123366769","","2008.09.15 02:39","","ekhlas ya sees" +sms,submit,"","+20101884293","","2008.08.23 22:24","","raghadeeeed enti kman wa7shani walahi :)) ana rag3 kman esbo3 kda isA, awel magi lazm nokhrog 3ala tol, el ghorba w7sha awi :D" +sms,submit,"","0123553896","","2008.08.20 02:09","","Rod ya 3am ana mn3em" +sms,submit,"","+447624801423","","2008.07.28 22:20","","help" +sms,submit,"","+447624801423","","2008.07.28 22:19","","gamdwj" +sms,submit,"","0106960034","","2008.07.27 19:10","","18568921241835" +sms,submit,"","0112365365","","2008.07.26 07:12","","Kalemni lama tes7a" +sms,submit,"","666","","2008.07.22 15:50","","3" +sms,submit,"","666","","2008.07.22 15:49","","" +sms,submit,"","0123526683","","2008.07.20 13:05","","el strength nezel" +sms,submit,"","0106676915","","2008.07.15 12:40","","Elect nezel hehehehehehehe" +sms,submit,"","0123526683","","2008.07.15 12:40","","Elect nezel hehehehehehehe" +sms,submit,"","0106614819","","2008.07.15 12:37","","Elect nezel hehehehehehehe" +sms,submit,"","0102540550","","2008.07.15 12:37","","Elect nezel hehehehehehehe" +sms,submit,"","0100011372","","2008.07.01 16:19","","fi 7ad dakhel 3ala mail lina w asking people to buy her kart sha7n w yeb3t el code.." +sms,submit,"","0106504570","","2008.06.24 18:10","","gebti B+ DE ;)" +sms,submit,"","0102540550","","2008.06.21 14:26","","el signals nawart el system :D" +sms,submit,"","0106614819","","2008.06.21 14:26","","el signals nawart el system :D" +sms,submit,"","0100011372","","2008.05.25 00:15","","Happy Happy Happy Happy Happy Happy Happy Happy Happy Birthday!!!! wish u the best isA :) :) 7ayoo abu el fasadd <:o)" +sms,submit,"","+20100046084","","2008.05.19 00:41","","wntaa tayeeeb ya etchyyyy thanks maaaan:D" +sms,submit,"","0105236064","","2008.05.17 01:49","","khlass bokra b2a walla yom tani" +sms,submit,"","0102540550","","2008.05.11 10:48","","l2et mkan ha7dar" +sms,submit,"","250","","2008.01.01 11:02","","" \ No newline at end of file diff --git a/bak/sent.py b/bak/sent.py new file mode 100644 index 0000000..df28d50 --- /dev/null +++ b/bak/sent.py @@ -0,0 +1,28 @@ +from message import message +from contactsServ import * + +class sent(message): + + def __init__(self, toNum, date, msg): + self.toNum=toNum + #self.contacts=address_book() + + message.__init__(self, msg, date) + + + + + + + + def setRecName(self, name): + self.toName=name + + def getRecName(self): + try: + return self.toName + except: + return self.toNum + + + diff --git a/bak/sent.pyc b/bak/sent.pyc new file mode 100644 index 0000000000000000000000000000000000000000..58136eb8dc2dfde07c66a62437f7c2f66297cf70 GIT binary patch literal 1026 zcmb_a&59F25dL~5yK9nN5W%Am@G^LCE*?chy~zgY5!76oai%wpnIB2_E-d6AtZ(5{ z`6|AE)>pF|J?n;abyYE4-%t0CpC_~LM_*r8xc(i;{#;ggBB7SQ!3Jo76<}B=*ciO6 zQ+VLapq}6xa0Pr=C8!TjWQTIF`6a*1NEVMIbUuV~?Z*bYkK#mP@O|6^v;Bh2hZ1D= zN@jzzIoD{C5}ln1Y>}n%UBxjs>m^SwB?oCSkryu}g53s)Ry$EOkJn-Z(7J zJ1Ys|9SP1geG{F_IQW`qduEBJRb56OS#@EZ$p#H-SpI3~d>+fK-{hyI?}o)If8pEw z&35?gtGFmmi#+-e^N($rQ~u*GmzFRzEii$Zrd1;Q%~Dk-(%7r2AuiLdN#92LCvi~Q+IFk{*Uw>$VP#Of|BJX1 zrP*q$>QLUdMR&cYdtX2Tkzi6YmzAkM>^Mh({y}<fgc5S_L2LBD8KAt5+aJz5;<3nzpsAeB%Bi5eRrk&D^d+pvv4BJUK4R3s$& z2l*@f0hqT*%7G(Iva@4*=FNMvC65?mOBws$WPIX=-tXww_dRH z0-A+138@Ilbm&4+(V-inA4DG}T`B@fqpkqi-|~r+cntGo#2d1ursiQ&nDVxIAa`HM za}ro3RNtV&6W#366o zGx6e2O=V)%t(nC`ZK~$*#C$eoeAYIXCg;O+n8s`z$LFPvoirq?(2=A0B7q(hcPK(? zC;V63jyw=?qD=IOxV0Y74f&<16Qp~#2}pVgbKz6p9aZ0>w)rw>u4>+uA`S#d<)DD_ z*ax!QM={sI>Od|7Y7R(o;01&vCu2J}_Sg+otxpn27OdrKcu>(q)hR%-4na>IbAn4ItWTdS~O|kqgcGfdIR0 zF{Jj?f!YhU)mE^S3(Z+p3v(G=NXal=SEXF~>GF*j`&aN3Y!ked2?7(eC;{|e!ruGe zp~mZv{}_k9_0&dxw;RFrFVNXy%ug9wymvI_LDL$~a((0VmG!N33zy(D69C>VM?VhF QmyJ3Gyh9&16~5cyA0_k>JOBUy literal 0 HcmV?d00001 diff --git a/bak/sms.csv b/bak/sms.csv new file mode 100644 index 0000000..0d64ee0 --- /dev/null +++ b/bak/sms.csv @@ -0,0 +1,260 @@ +sms,deliver,"Vodafone","","","2010.01.16 17:42","","فودافون حولتلك 3 جنيه تخصم عند أول عملية شحن. رصيدك الحالي 2.83" +sms,deliver,"Vodafone","","","2010.01.16 11:08","","فودافون حولتلك 3 جنيه تخصم عند أول عملية شحن. رصيدك الحالي 2.67" +sms,deliver,"Vodafone","","","2010.01.16 10:45","","فودافون ممكن تحولك6جنيه رصيد على مرتين،3جنيه كل مرة.اضغط#3*868* ب50قرش" +sms,deliver,"9771","","","2010.01.15 18:11","","+20102090035, 04, 15-01-2010 18:21" +sms,deliver,"777","","","2010.01.15 18:09","","You have 4 missed call(s). To retrieve your call(s) dial *777# for 50pt or to receive your missed calls automatically for a month send SMS to 7777 for 5LE" +sms,deliver,"+20123526683","","","2010.01.15 16:25","","كلمنى شكرا Pls Call Me اتكلم دولي ب1.99جنيه بس للدقيقة.كلم800مجانا" +sms,deliver,"+20123526683","","","2010.01.15 16:15","","كلمنى شكرا Pls Call Me اتكلم دولي ب1.99جنيه بس للدقيقة.كلم800مجانا" +sms,deliver,"+20102412751","","","2010.01.14 13:32","","كلمنى شكرا Pls Call Me اتكلم دولي ب1.99جنيه بس للدقيقة.كلم800مجانا" +sms,deliver,"Bianco","","","2010.01.14 11:55","","Leading fashion footwear Brand in Scandinavia, now open in Mohandeseen 15 Jazeerat el Arab, Benefit from our 30% Discount by showing this sms in the shop To stop SMS adds send STOP to 2020 for free" +sms,deliver,"Bianco","","","2010.01.14 11:39","","Leading fashion footwear Brand in Scandinavia, now open in Mohandeseen 15 Jazeerat el Arab, Benefit from our 30% Discount by showing this sms in the shop" +sms,deliver,"+20124641123","","","2010.01.10 10:22","","Tarek enta sa7y?" +sms,deliver,"+20102412751","","","2010.01.10 00:48","","Tarek eh nzam toM ?Hatro7o emta?" +sms,deliver,"+20102090066","","","2010.01.05 22:05","","Hatly pepsi m3ak" +sms,deliver,"+20108554395","","","2009.12.30 13:18","","3azzab@gmail.com" +sms,deliver,"+20127620656","","","2009.12.28 12:53","","Da ragel me3arras aslo" +sms,deliver,"+20102412751","","","2009.12.25 02:29","","L2 msh 7ga ha2OLHA , ASL EL RAGEL B3atly el aCCEPTANCE LETTER WITH FURTHER Details aBT THE PROJECT AND I CNT REALLY UNDerstand w 7asa el tanya a7la! Lol , i just wanteD 2 KNW UR OPINIOn aBT IT 3SHAN AKARAR MAX BY TOm isA" +sms,deliver,"+20102412751","","","2009.12.25 02:26","","Hi tarek , if u cAN GO Online n0w plz do , 3yZA A7'OD R2YAK F 7GA .. Thnk u so much" +sms,deliver,"+20102412751","","","2009.12.24 12:15","","Tarek 1:30 b2a =)" +sms,deliver,"+20106676915","","","2009.12.16 19:08","","Mat3rfsh tgbhaly" +sms,deliver,"+20106676915","","","2009.12.16 19:03","","Hwa nta 3andak cd el office" +sms,deliver,"+20102090084","","","2009.12.14 11:25","","This is a reminder for todays meeting 5.30 in c1" +sms,deliver,"+20102550678","","","2009.12.11 12:17","","Hey tarek , its menna , bos ana babaya karar en lazem aro7 agib el cAR b3D el sala, so let it be 3la 2 kda" +sms,deliver,"+20102412751","","","2009.12.10 22:27","","Tarek 7'aliha at 1 f cilantro isA AND TELL HESHAM =)" +sms,deliver,"+20100046084","","","2009.12.09 15:43","","Ana fadely 30 mins kda fa shof enta" +sms,deliver,"+20102412751","","","2009.12.08 21:46","","Tarek bos , el net 2ata3 fag2A msh 3rfa leh! Knt araBT A7'ALAS EL PNEUMATICS , FA ANA AFASHT B2A , had7'ol anam w aB2A as7a aBL EL GM3A A3MELO WLA 7GA , START KDA PLC , FI LECTURE KAMLA 3N EL PLC , TAKE IT AS A REFERENCE , LW EL NET GEH Abl manam i'll send it 2 u" +sms,deliver,"+20106676915","","","2009.12.07 00:29","","7abeibyyyy :D" +sms,deliver,"+20106676915","","","2009.12.07 00:24","","Wnta tayb yabo el takateik. Kont hafsha5ak law makontsh kalmtny :D. Fakes ba2a el za3al wl gaw el r5is da :D:D TEKY YA TEKY DON'T B SAD (Y)" +sms,deliver,"+20100046084","","","2009.12.07 00:12","","141 585 019 501 11" +sms,deliver,"+20106614819","","","2009.12.06 03:03","","El nour 2ta3 :s beed" +sms,deliver,"+20106650502","","","2009.11.28 21:20","","Happy feast everyone ,, enjoy =)" +sms,deliver,"+20102249990","","","2009.11.27 15:16","","Happy Eid... Hope u enjoy it 2 da max... Have a blast :) mina samir p.s: that's my new number" +sms,deliver,"+20127200682","","","2009.11.27 08:27","","Kol sana wento tayebeen =)" +sms,deliver,"+20101422278","","","2009.11.26 21:14","","Eid Adha Mubarak everyone :-) budu" +sms,deliver,"+20104994713","","","2009.11.25 13:17","","Please send me the WEP of the wi fi of guc and tell me which one to use on black berry Khaled taha elsherbiny" +sms,deliver,"+20104446308","","","2009.11.24 15:36","","Hey all plz dont b late 2day at 7 isa fi quaY .. WAITING 4 U ALL =)" +sms,deliver,"+20106614819","","","2009.11.23 12:30","","Lecture bedan..lw hatamshy 2oli 3ashan no car" +sms,deliver,"+20102412751","","","2009.11.22 14:12","","Tarek bos , shklaha kda fakes el nharda !" +sms,deliver,"+20124641123","","","2009.11.21 21:24","","Ew3a ya tarek te3mel elly 2olt 3aleh =)" +sms,deliver,"+20100046084","","","2009.11.18 15:17","","Ill call u in 10" +sms,deliver,"+20100046084","","","2009.11.18 15:17","","Quiz :s ill call u in" +sms,deliver,"+20102412751","","","2009.11.18 00:18","","Tarek bos , reem msh hato3od tzaker t0m! W asln el w2t daya2 W 3yzin nerga3 aBL EL MATCH, FA BOS FAKES M0ZAKRA TOm b2a" +sms,deliver,"+20106614819","","","2009.11.17 15:24","","Enta msh gy?" +sms,deliver,"+20146068600","","","2009.11.15 08:40","","A5dt mnk 20 gneh w hdhomlk enhrda 3shan r7t gm3a btaxi" +sms,deliver,"+20127200682","","","2009.11.15 03:08","","fe 3'alta fely ba3ato 11-14 fel lcd metwasalen le 37-40 mesh 21-24 w fel pic 13 w 14 homa ely ma3 elclock" +sms,deliver,"+20180742083","","","2009.11.12 16:51","","I will be abit late due our lovely country's traffic" +sms,deliver,"+20101272889","","","2009.11.09 14:46","","Akeed ur own words e3mel searching from different sources" +sms,deliver,"+20102412751","","","2009.11.09 12:28","","Mashy ya si tarek" +sms,deliver,"+20180742083","","","2009.11.08 10:22","","I have the trainning evaluation forms with me today.. Call me to get it Mostafa sheshtawy" +sms,deliver,"+20103895929","","","2009.11.08 09:23","","Hi tarek, its menna , ana msh hagy el gm3a , s7eit kda 7aseit eny msh adra.. Sorry" +sms,deliver,"+20102540550","","","2009.11.05 09:13","","Sa7y kalmny" +sms,deliver,"+20101272889","","","2009.10.27 08:32","","H9" +sms,deliver,"+20123174186","","","2009.10.21 02:12","","Shrif msh gyely fa eshta momkn tgely mt2a5ar shwia 3la 12:30" +sms,deliver,"+20102540550","","","2009.10.20 01:55","","Lama tes7a kalmny" +sms,deliver,"+20102540550","","","2009.10.19 13:25","","Hatmshy emta" +sms,deliver,"+20123354981","","","2009.10.15 10:27","","Where is ur class?" +sms,deliver,"+20146068600","","","2009.10.09 12:35","","Lw htgeb akl gbly m3ak 1 fol bl bed,1 btates" +sms,deliver,"+20103405520","","","2009.10.06 18:58","","If u will meet sherif today or tomorrow give him the iso image of windows" +sms,deliver,"+20182222662","","","2009.10.04 22:25","","Ya teccccc thnxxxxxx we 7elwa gogellion dih lolllll" +sms,deliver,"+20102540550","","","2009.10.03 10:23","","Ana gy el gam3a now mesh haynfa3 agy ba3d el second" +sms,deliver,"+20123354981","","","2009.09.27 02:56","","Ya man call me whn u wake up to c whether we r going to the uni or not 3shan ana delwa2ty metzawel" +sms,deliver,"+20146068600","","","2009.09.08 13:26","","28905190101116" +sms,deliver,"+20100046084","","","2009.09.07 12:54","","Sloveh-4" +sms,deliver,"+20102412751","","","2009.09.07 02:13","","Mabro0k el 3araBEYA YA 3AM =D , gebt eh? Sry 4 the late reply !" +sms,deliver,"+20102412751","","","2009.08.21 19:39","","Kol sana wento tybin =) ramadan karim =)" +sms,deliver,"+20106504570","","","2009.08.21 16:46","","Kol sana w enta tayeb ya tek Happy ramadan;)" +sms,deliver,"+20103405520","","","2009.08.19 10:19","","We will meet today at 8:00 pm isa at my home at koleyet el banat call me if u need a description 4 the way. Waiting 4 u there my brother" +sms,deliver,"+20146068600","","","2009.08.17 21:54","","Ana neseit gzma fi shantet el 3rbeya" +sms,deliver,"+20146068600","","","2009.08.15 02:27","","Abl mtmsh 2oly" +sms,deliver,"+20100046084","","","2009.08.14 05:25","","TarooKa, nemt wala aa??:D" +sms,deliver,"+20123174186","","","2009.08.11 18:03","","Meeting today at 8 pm sharp Cilantro Abbas" +sms,deliver,"+20120897159","","","2009.08.08 15:15","","Yabny im pierre i have questions" +sms,deliver,"+20120897159","","","2009.08.03 10:15","","Yabny rodd ana pierre" +sms,deliver,"+20100046084","","","2009.08.02 20:43","","Law 7ad m3ah flashaya 3andak garab el program keda w tameny wenaby :D" +sms,deliver,"+491639498283","","","2009.07.28 15:57","","Aug 21 isA! Tyb ana olt ymkn yb2ly" +sms,deliver,"+491639498283","","","2009.07.28 14:10","","Ana lama took my certificates bs tl3ly zayoko f mmkn ykonly floos f law 3rft ts2aly plz=)" +sms,deliver,"+491639498283","","","2009.07.28 13:38","","Tarek 3amel a? Howz evth? Ba2olak 3yzin 7'edma=) mmkn men fdlak law enta fel gm3a t7'od certificate wasfi w ts2alena law leena floos w ad a w law mmkn 7ad ya7'odlna el chek w m7tag a? Plz let me knw .Thank u thank u! Rana tawakkol" +sms,deliver,"+20123354981","","","2009.07.28 02:09","","Ya brence 2morow we go together 2 the uni inshaalah call me when u wake up" +sms,deliver,"+20103405520","","","2009.07.26 01:11","","Tomorrow we will meet with the people at 4:00 at the university" +sms,deliver,"+20102412751","","","2009.07.10 02:10","","Ya tarek thnk u awYYy bgd =)" +sms,deliver,"+20104446308","","","2009.07.09 19:51","","LOL .. m-oltlak 7ayb2a za7ma moot =D lef w arg3 w ta3la bkra ;)" +sms,deliver,"+20102412751","","","2009.07.09 01:51","","Tarek =) hw r u? Ana msh d7'la oNLINE TOD, BUT I WANTEd 2 kn0w whether msheit 3la el etaf2na 3alih yest wla l2 ?! =)" +sms,deliver,"+20123366769","","","2009.07.06 08:02","","Lama tes7a zbatly plz el selk ana mosh un plugged bas mosh shayef 7ad fel network wla fe net" +sms,deliver,"+20106676915","","","2009.07.06 06:14","","Lsa darbin 3aza w a :D 7aga t2rf. Matkalmnish lama tshouf el msg :D:D :D" +sms,deliver,"+20101272889","","","2009.07.01 08:54","","El meeting ma3 abousafy haieb2a el sa3a 12 plz come in time" +sms,deliver,"+20105213977","","","2009.06.25 11:19","","Great, thx" +sms,deliver,"+20105213977","","","2009.06.25 11:16","","Hello Tarek, something has come up I'll have to postpone our meeting today, can u make it Sunday, same time? Sorry for the inconvenience. - Fadia Badrawi, DCI" +sms,deliver,"+20123526683","","","2009.06.15 08:26","","La ta3liik :d:d:d" +sms,deliver,"+20102540550","","","2009.06.09 13:20","","Mesh el eval el sa3a 1 20?" +sms,deliver,"+20102540550","","","2009.06.09 13:18","","Ento fen send back by msg 3alashn ana fi el os" +sms,deliver,"+20101326461","","","2009.06.02 11:27","","Tab momken teb3attha 3alashan manelbessh?" +sms,deliver,"+20101326461","","","2009.06.02 11:26","","Wala tarek u sent the DSD form?" +sms,deliver,"+20101272889","","","2009.05.29 08:21","","Call me when u wake up" +sms,deliver,"+20102540550","","","2009.05.27 17:10","","Ana mashy" +sms,deliver,"+20101272889","","","2009.05.22 09:57","","When u wake up call me" +sms,deliver,"+20106614819","","","2009.05.20 20:51","","On da run" +sms,deliver,"+20106676915","","","2009.05.19 00:33","","U r fuckin welcome :D" +sms,deliver,"+20101884293","","","2009.05.19 00:08","","Happy birthday ya tech=)) have a blast!" +sms,deliver,"+20106676915","","","2009.05.19 00:06","","Happy fuckin bd ya takateiko w isA el sana el gaya tkoun ba2it scadawy ad el donya ;)" +sms,deliver,"+20109900966","","","2009.05.18 23:43","","Happy birthday:):).. Yala b2a msh 5sara fik:p.. U only turn 20 once;)" +sms,deliver,"+20102412751","","","2009.05.17 14:47","","Hi tarek , ezayak ? May u plz cALL ME WHEN U C THis msg .. Asl i have n0 credit =s lol =)" +sms,deliver,"+20161056130","","","2009.05.10 12:16","","WOHOO! Mabrok! Am doin an acnt 2dy isA. W hadeelak kman websites tnya zayo=D" +sms,deliver,"+20101422278","","","2009.05.02 13:20","","10 min n i'll call u" +sms,deliver,"+20106676915","","","2009.04.30 10:51","","Kalmny lama tetla3" +sms,deliver,"+20103405520","","","2009.04.27 02:12","","Please bring tomorrow a copy of ur guc id and ur personal id and forward this msg to wasfi" +sms,deliver,"+20103405520","","","2009.04.26 11:47","","When u finish ur exam please pass by" +sms,deliver,"+20103405520","","","2009.04.25 19:34","","Rabena m3ak my brother in all your exams isa shed 7elak and you will do great isa" +sms,deliver,"+20106676915","","","2009.04.19 12:45","","Ya tch i lost 7.2 kilos in 1 week :D :D" +sms,deliver,"+20112365365","","","2009.04.18 16:12","","PRISON BREAK IS OUT YA MAW" +sms,deliver,"+20119654293","","","2009.04.14 16:55","","" +sms,deliver,"+20108168190","","","2009.04.13 22:52","","Yaa tecccc 3amel eh? Plsss get with u 2morow the office w ana haklmk awl lama aro7 el gam3a. Thank u awi ya tec w ma3lsh 3shan ta3btk" +sms,deliver,"+20102540550","","","2009.04.13 16:45","","Ta3ala 3ala el main gate lama te7'als" +sms,deliver,"+20105350209","","","2009.04.13 05:45","","Thnx ya taroka i found it" +sms,deliver,"+20105350209","","","2009.04.13 05:40","","Ab3atli ya taroka el assignment beta3 el os abl matanzl el gam3a..el samo" +sms,deliver,"+20161056130","","","2009.03.31 12:58","","Hatakol pizza?" +sms,deliver,"+20102540550","","","2009.03.29 13:37","","Fakes ha7'odhom men gohar" +sms,deliver,"+20101272889","","","2009.03.29 12:16","","Can u put the os book on the svn" +sms,deliver,"+20123526683","","","2009.03.28 00:58","","Mn 3ss lel tarook..w enta tayeb ya man ..thnxxx :E:E" +sms,deliver,"+20106676915","","","2009.03.26 20:46","","T3ala online" +sms,deliver,"+20102540550","","","2009.03.25 12:42","","Hatly 7ama ma3ak" +sms,deliver,"+20106676915","","","2009.03.24 16:41","","Nawar yabo tch nawar :D" +sms,deliver,"+20106614819","","","2009.03.24 16:24","","Hatli 3sir manga men cilantro" +sms,deliver,"+20123354981","","","2009.03.23 01:53","","Tarook if u can plz bring z ubunto cd" +sms,deliver,"+20127620656","","","2009.03.17 12:07","","Ah" +sms,deliver,"+20161056130","","","2009.03.09 23:42","","Hagy 1st isA. Cal me wn u gt there isA b2a" +sms,deliver,"+20106614819","","","2009.03.07 14:55","","Enta fean?" +sms,deliver,"+20123354981","","","2009.02.27 20:30","","Username pierre.fares email pierre_247@hotmail.com" +sms,deliver,"+20101884293","","","2009.02.23 23:06","","Wana kaman da kan ra2ii" +sms,deliver,"+20106676915","","","2009.02.23 22:58","","Hwa enta kont montazr rad tany ?" +sms,deliver,"+20106676915","","","2009.02.23 22:55","","Tb bel hana wl shefa" +sms,deliver,"+20106676915","","","2009.02.23 22:52","","???" +sms,deliver,"+20106676915","","","2009.02.23 18:56","","Fi a" +sms,deliver,"+20127620656","","","2009.02.16 16:25","","Hatem.el-ghannam FAT00M_12 , these are zeros not Os .. Can u check also the grade and give me a ring .. Shokran 7obbi" +sms,deliver,"+20109958830","","","2009.02.16 00:29","","Hey there, i'll come bokra met2a5ar. if u need any thing call me i'll be at home :D" +sms,deliver,"+20100046084","","","2009.01.22 23:08","","Etwasa ba2a bel salsa ya basha ..... 7ot ma3la2et salsa kaman ya basha hahahahaha :D" +sms,deliver,"+20109958830","","","2009.01.21 14:34","","Thanks" +sms,deliver,"+20100773775","","","2009.01.20 20:33","","Hey Tarek, sorry 4 disturbing but i'll do the report and i want u to send all procedures. aisha‎" +sms,deliver,"+20101272889","","","2009.01.20 08:34","","Call me" +sms,deliver,"+20100773775","","","2009.01.13 08:37","","Hi Tarek, this is Aisha, i'm in the study room, C7." +sms,deliver,"+20101326461","","","2009.01.08 09:56","","Ana gayy fel seka we ma3aya el cd" +sms,deliver,"+20106504570","","","2009.01.03 22:21","","Tek tek thank u awi 4 caring.bgd enta koko awi:)" +sms,deliver,"+20109958830","","","2009.01.01 00:06","","Happy New Year Tarek! may all ur dreams come true." +sms,deliver,"+20102540550","","","2008.12.31 07:32","","Hatly ma3ak el windos wenaby" +sms,deliver,"+20106086929","","","2008.12.23 23:13","","Ana fakes mesh 2ader anzel..ma3lesh ya tarook" +sms,deliver,"+20101326461","","","2008.12.20 22:31","","Wala tarek please dont forget the sources bokra" +sms,deliver,"+20109958830","","","2008.12.19 17:17","","oh really? congrat if u did it gd 4 u tarek, i didn't reach that level yet :p" +sms,deliver,"+20105350209","","","2008.12.18 14:46","","Database nazel ya tarokaa" +sms,deliver,"+20108168190","","","2008.12.08 16:01","","Happy feast for u and ur family.. Ozo" +sms,deliver,"+20161000453","","","2008.12.08 13:41","","Kol sana wenta tyb ya techi we 3id sa3ed" +sms,deliver,"+20122768786","","","2008.12.08 13:18","","Happy 3iiid...koooooool sanaaaa wenta tayeeeb :) Zaklama" +sms,deliver,"+20182222662","","","2008.12.08 12:27","","Loooool" +sms,deliver,"+20160779553","","","2008.12.07 22:01","","Happy feast ya m3alem... enjoy ;)" +sms,deliver,"+20182222662","","","2008.12.07 18:25","","Kol sana wento tayebeen w 3eed sa3eed 3lekom game3an" +sms,deliver,"+20109958830","","","2008.12.07 15:40","","Tarek, 3edak mobarak :) enjoy" +sms,deliver,"+20101884293","","","2008.12.07 14:38","","جعل الله فجر يوم عرفه لكم نور و ظهره سرور و عصره إستبشار و مغربه غفران و جعل لك دعوة لا ترد و وهبك رزق لا يعد و فتح لك باب في الجنة لا يسد. Happy Eid" +sms,deliver,"+20106676915","","","2008.12.05 17:57","","Hat el sb7a m3ak" +sms,deliver,"+20102540550","","","2008.12.01 12:48","","Wala fih quiz lazem teegy" +sms,deliver,"+20109958830","","","2008.11.30 22:55","","Thanks. i'll call u when i arrive uni bokra no prob gd night :)" +sms,deliver,"+20109958830","","","2008.11.30 22:30","","Hey Tarek, sorry 4 sending at this time. just wana ask about the d.b poject, we choosed no 2 right?" +sms,deliver,"+20106614819","","","2008.11.29 12:15","","Hatli wa7ed btates viena wenaby" +sms,deliver,"+20102540550","","","2008.11.20 10:35","","Lama ts7a kalmny" +sms,deliver,"+20106676915","","","2008.11.18 20:19","","Kalm samo" +sms,deliver,"+20102540550","","","2008.11.17 00:35","","Matnsash wenaby" +sms,deliver,"+20102540550","","","2008.11.15 10:29","","El quiz now" +sms,deliver,"+20123366769","","","2008.11.10 00:58","","Eftah elbab law enta wake" +sms,deliver,"+20102540550","","","2008.11.08 22:23","","7'osh online" +sms,deliver,"+20123366769","","","2008.11.08 07:13","","Law wake eftah el m$n" +sms,deliver,"+20102540550","","","2008.11.03 11:16","","Yala nemshy?" +sms,deliver,"+20102540550","","","2008.11.03 11:14","","Aywa" +sms,deliver,"+20102540550","","","2008.10.31 23:41","","Sherifmoharam89 el pass beta3 el site met law le72t" +sms,deliver,"+20100046084","","","2008.10.30 15:01","","Eshta eb2a olaha b2a en el tickets mawgoda" +sms,deliver,"+20100046084","","","2008.10.30 14:58","","Ana m3aya 2 wa7da liha w wa7da l souka na2es wa7da bta3et sa7ebha da .... Enta a nzamak ??" +sms,deliver,"+20100704241","","","2008.10.29 16:24","","6 tickets? Etla3 tyeb" +sms,deliver,"+20100046084","","","2008.10.29 15:06","","Howa nta 3andak 7aga el 5" +sms,deliver,"+20101202017","","","2008.10.28 18:18","","Come directly at the doctor" +sms,deliver,"+20123366769","","","2008.10.24 10:51","","Law sa7y now rennely" +sms,deliver,"+20101884293","","","2008.10.24 00:14","","Thank u ya techo 2wi=) 2b2a ro7 shof saw bokra b2a;)" +sms,deliver,"Vodafone","","","2008.10.21 18:57","","Dial *999*Mob No#: PUK *999*4#: VF Live Activation *999*5#: Roaming Activation" +sms,deliver,"+20106614819","","","2008.10.21 00:47","","Saw 2 ya man 3la mbc 2" +sms,deliver,"+20106614819","","","2008.10.19 15:32","","Fi mkan 3ndak yad?" +sms,deliver,"+20106676915","","","2008.10.18 13:09","","C+ eb3atly el pas wl user ashoflak" +sms,deliver,"+20106676915","","","2008.10.18 13:02","","El co nezel" +sms,deliver,"+20106676915","","","2008.10.17 16:31","","El rgim etnafa5 :D" +sms,deliver,"+20106504570","","","2008.10.14 21:50","","Thanks ya tektek Allah yesalemk;) adaha w edod isa" +sms,deliver,"+20182222662","","","2008.10.04 00:17","","Thnx ya tec w 3o2bal lama tb2a 20 isa. W 2lbak 2swed 2nta lesa faker.lol" +sms,deliver,"+20127777981","","","2008.09.19 22:05","","Hii hw r u ? Hwz everythin? my birthday is tom (20-9) @ 8 pm n casper cafe out area in citystars... u r invited =)" +sms,deliver,"+20106676915","","","2008.09.09 11:05","","Lama ts7a kalmny" +sms,deliver,"+20102540550","","","2008.09.08 18:35","","Kalmny" +sms,deliver,"+20106960034","","","2008.08.25 13:22","","Lw sa7y klmny" +sms,deliver,"+20101884293","","","2008.08.23 22:11","","TechOoOoOoOo! 3aml eh? Wa7shny wallahi.. Rage3 emta mil sa7el? 3awza ashofak b2a" +sms,deliver,"+20106676915","","","2008.08.14 08:33","","Efta7 el kana el 2oula" +sms,deliver,"+20100704241","","","2008.07.31 23:23","","Look, a friend of mine 90% will pick me up so you dont have to come, i will call you if there's any changes ok. Noha" +sms,deliver,"+20100704241","","","2008.07.31 23:16","","Take your time, 27na lesa mwslnash" +sms,deliver,"+467374940501","","","2008.07.29 03:39","","Hi tghazali! Your Jaiku activation code is: 90e7. Please enter this code on the Web now" +sms,deliver,"+447624801423","","","2008.07.28 22:19","","Your device has been verified and is on. Send 'off' at any time to silence. Send 'help' for more." +sms,deliver,"+20106676915","","","2008.07.25 01:53","","Ma3lish shwaya w gai" +sms,deliver,"+17819060003","","","2008.07.22 00:50","","TeleMessage login details: Login: 20106960035 Password: 57855866" +sms,deliver,"MobinilWiFi","","","2008.07.20 07:36","","Activation Code: 130257" +sms,deliver,"MobinilWiFi","","","2008.07.20 07:36","","Activation Code: 135343" +sms,deliver,"+20118869193","","","2008.07.16 14:10","","Game nazel ya vein" +sms,deliver,"+20106676915","","","2008.07.10 11:22","","Msh da el e7na 3awzeino" +sms,deliver,"+20123526683","","","2008.06.30 19:44","","E7na f ciao..Ely 3and koliet el banat" +sms,deliver,"+20106614819","","","2008.06.24 15:35","","C- ya man" +sms,deliver,"+20100046084","","","2008.06.24 15:32","","Shofly el grades pass: 1234-aaa" +sms,deliver,"+20106676915","","","2008.06.24 15:28","","Ana f dars. 5eirrr" +sms,deliver,"+20106676915","","","2008.06.13 19:10","","Law 7'alst mozakra we 3andk wa2t ta3alaly" +sms,deliver,"+20101884293","","","2008.06.11 16:29","","Vielen Dank Herr Tech:)" +sms,deliver,"+20101726624","","","2008.06.04 23:58","","Tarook matensash ta5od el circuit mn gohar 3ashan bokra el eval" +sms,deliver,"+20102540550","","","2008.06.04 02:39","","Fi bokra mat lab quiz wala la" +sms,deliver,"+20106960034","","","2008.06.02 18:03","","Go online ahmed 3wzk" +sms,deliver,"+20100046084","","","2008.05.28 14:57","","Bye Bye ya RPeee =')" +sms,deliver,"+20106676915","","","2008.05.27 02:21","","Perfect :D" +sms,deliver,"+20102540550","","","2008.05.25 11:31","","Ba2olk ya tarek ma3lshy law fi ay 7aga make it to me" +sms,deliver,"+20100046084","","","2008.05.22 13:05","","Efta7 shof grades el rpw :s" +sms,deliver,"+20182222662","","","2008.05.19 09:58","","Happy birthday ya tec w 3o2bal milliooon sana" +sms,deliver,"+20106676915","","","2008.05.19 01:08","","Haby bezy yoyo haby bezy yoyo haby bezy yo tar2 .haby bezy yoyo" +sms,deliver,"+20106504570","","","2008.05.19 00:06","","Kol sana w enta tayeb ya takatek w 3o2bal kter isa ya best tek ever" +sms,deliver,"+20105541210","","","2008.05.19 00:04","","Kol sana wenta tayeb ya Tch ... W 3o2bal 1,000,000 sana keda .. ;)" +sms,deliver,"+20100048666","","","2008.05.19 00:02","","Happy b-day ticko w 3o2bal 10000000000000000000 sana isa hun.bgd ur one of da bst ppl in ma life.luv u sooo much my bst brother ever:)" +sms,deliver,"+20100046084","","","2008.05.18 23:57","","TeChaaAAAaWaaaaaAAaayyY aiwa ba2a ya maaan 19 sana yedba7o el katkoot :D yalla kol sana wenta tayeb w 3o2bal 1000000 sana ya prince isA :D:D" +sms,deliver,"+20127244556","","","2008.05.15 12:44","","Tar2 matnsanish ha!!" +sms,deliver,"+20123526683","","","2008.05.14 14:27","","Mina alaa..10-3184... Ahmed essam 10-2541" +sms,deliver,"+20121275651","","","2008.05.14 14:21","","Eh yabo tar2 ana omar 3amaltly eh fl hwar sa2alt wala eh" +sms,deliver,"+20101726624","","","2008.05.12 11:30","","Tarook momken lw 3reft ta5odli attendance fi el circuits 10-1200 w ana hakalemak 3la 5 kda 3ashan netefe2 3la el game." +sms,deliver,"+20105726318","","","2008.04.29 01:41","","Eh ya ebniiii shayel mobile ashn msh trod 3lih :@" +sms,deliver,"+20167409090","","","2008.04.19 10:44","","Ya tech mesh 7ynf3 2agy ... See u beleil isa" +sms,deliver,"+20106676915","","","2008.04.15 20:06","","E7na f c5" +sms,deliver,"+20101326461","","","2008.04.13 09:19","","Wala we need your help fe 7aga bas we7yat abook" +sms,deliver,"+20106614819","","","2008.03.29 17:36","","Physics lab nezal" +sms,deliver,"+20100046084","","","2008.03.19 14:31","","Howa a el site bta3 el mob fb ? :)" +sms,deliver,"+20106676915","","","2008.01.28 14:54","","T3ala" +sms,deliver,"+20106676915","","","2008.01.12 14:55","","7awel tektebly attendance ya tech 10-2883" +sms,deliver,"+20101661659","","","2007.12.31 15:02","","Wish you a happy new year full of happiness and joy" +sms,deliver,"+20100046084","","","2007.12.30 09:53","","91% ...... Ya m3alem =D" +sms,deliver,"+20100046084","","","2007.12.30 08:36","","Cs nezel !!" +sms,deliver,"+20108168190","","","2007.12.20 13:38","","Happy feast ya gama3a.hope it will be good feast" +sms,deliver,"+20106014977","","","2007.12.19 13:42","","Kol sana w ento tayben:) samia" +sms,deliver,"+20106676915","","","2007.12.09 10:51","","Afta7 el facebook ezay :D" +sms,deliver,"+20106504570","","","2007.11.08 16:17","","Ana gohar kalm 3sam 2olo ya5d nouchy m3ah .kalmo delwa2ty" +sms,deliver,"+20106676915","","","2007.11.05 02:22","","Matkalmneish bokra 3ashan ana gai el talta" +sms,deliver,"Vodafone","","","2007.10.31 18:52","","(3SSF1A) تم شحن:100.00 رصيدكم الان:115.03 (وزيادة 15% علي رصيدك)" +sms,deliver,"+20106676915","","","2007.10.29 13:21","","Enta fein 3ashan el lab bta3y etla3'a wana zhe2t" +sms,deliver,"+20106676915","","","2007.10.27 12:38","","Enta fein" +sms,deliver,"+20106676915","","","2007.10.20 00:29","","El gadwal nezel :p :p (ma3teeeeeeh)" +sms,deliver,"+20129200988","","","2007.10.13 22:35","","kol sana w enta tayeb ya 7obby!" +sms,deliver,"+20106504570","","","2007.10.13 14:35","","Kol sana w enta tayb ya taktok" +sms,deliver,"+20106504570","","","2007.10.08 16:12","","Tek el gpa tl3 2.1 enta 3mlt e.h? M3lsh kont nyma" +sms,deliver,"+20102221110","","","2007.10.05 23:37","","Gebt el 3arabeyaaaaaa...:)" +sms,deliver,"+20106614819","","","2007.09.27 13:05","","Tarook..ana salet el dohr w hanam nw ab2a sa7iny 3ala 5 b nafs el tari2a bs el marady el 3asr w ab2a at2aked eny se7it isa:)" +sms,deliver,"+20101413071","","","2007.09.21 01:00","","2b2a 2ablny law shoftlha dera3 tany..H" +sms,deliver,"+20106504570","","","2007.09.14 18:50","","Lol walahi lesa kont hb3tlk msg a2olk .mercie ya tek i'll call u kman shwya" +sms,deliver,"+20129200988","","","2007.09.12 14:58","","wa7awy ya wa7awy. Ramadan karim" +sms,deliver,"+20123366769","","","2007.09.11 07:40","","Bta3et link zaharet 2day el sob7 w 3amalt lakad komt belsadad w2alle el net hayege kaman 2 hours wel mosta7akat 752 geneh" +sms,deliver,"+20122310776","","","2007.09.02 14:49","","3mlt 7lw 7mdulilah" +sms,deliver,"+20122310776","","","2007.09.02 08:39","","Merci awe awe bgd howa 1 w nos isA.ed3ili ya tare2 bgd khyfa awe awe aweeee" +sms,deliver,"+20122310776","","","2007.08.20 11:54","","Thank u awe bgd 4 coming yesterday" +sms,deliver,"+20122310776","","","2007.07.24 14:54","","E7em...isA isA!LOL! um on my way 2 uni asln" +sms,deliver,"+20122310776","","","2007.07.24 14:45","","MABROOOOOOKKKKK!!! Bgd enta msh motakhayal ana mabsootalak ezay! Keep it up ya tare2 w 3o2bal kol sana isA ya rab =) yalla enzl entalek w celebrate!" +sms,deliver,"+20161000453","","","2007.07.11 20:20","","5osh 3ala el net" +sms,deliver,"+20106676915","","","2007.07.05 11:49","","3ashan ana ensan fa2ri verb habe msh zay el ba2y byeb2a hast wl tany tele3 3aks mana 3amalto :F :F" +sms,deliver,"+20122502589","","","2007.02.01 09:10","","Kol 3am w enta b 1000 7'er w kol sna ben3ad 3lekm." \ No newline at end of file diff --git a/bak/stacked.ui b/bak/stacked.ui new file mode 100644 index 0000000..1512326 --- /dev/null +++ b/bak/stacked.ui @@ -0,0 +1,188 @@ + + + MainWindow + + + + 0 + 0 + 800 + 400 + + + + MainWindow + + + + + + 0 + 0 + 800 + 400 + + + + + + + 0 + 0 + 801 + 361 + + + + + + + Inbox + + + + + + + Sent + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + 0 + 0 + 800 + 400 + + + + + + + + + 0 + 0 + 801 + 371 + + + + + + + + + msg_from + + + + + + + msg_date + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + 0 + 0 + + + + <!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:'Arial'; 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;">msg_text</p></body></html> + + + + + + + + + Delete + + + + + + + Back + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + + 0 + 0 + 800 + 25 + + + + + + + + diff --git a/bak/stacked2.ui b/bak/stacked2.ui new file mode 100644 index 0000000..1544bef --- /dev/null +++ b/bak/stacked2.ui @@ -0,0 +1,399 @@ + + + MainWindow + + + + 0 + 0 + 800 + 400 + + + + Retro Conversations + + + + + + 0 + 0 + 800 + 400 + + + + + + + 0 + 0 + 801 + 361 + + + + + + + Inbox + + + + + + + Sent + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + 0 + 0 + 800 + 400 + + + + + + + + + 0 + 0 + 801 + 371 + + + + + + + + + msg_from + + + + + + + Qt::Vertical + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + msg_date + + + + + + + + + Qt::Horizontal + + + + + + + + 0 + 0 + + + + <!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:'Arial'; 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;">msg_text</p></body></html> + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + Delete + + + + + + + Back + + + + + + + + + + + + + 0 + 0 + 800 + 400 + + + + + + + + + 0 + 0 + 801 + 381 + + + + + QLayout::SetMaximumSize + + + + + + + QFrame::Box + + + QFrame::Raised + + + 5 + + + 0 + + + xxxxxx + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + 5 + + + 0 + + + + + + 26 + + + + color:rgb(106, 106, 106) + + + TextLabel + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + QFrame::StyledPanel + + + TextLabel + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + background:rgb(50, 50, 50); + + + QFrame::Plain + + + 5 + + + Qt::Horizontal + + + + + + + margin-top:5px + + + TextLabel + + + true + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + Delete + + + + + + + Back + + + + + + + + + + + + + + 0 + 0 + 800 + 25 + + + + + + + Option 1 + + + + + Option 2 + + + + + blabla2 + + + + + + diff --git a/bak/testother.py b/bak/testother.py new file mode 100644 index 0000000..7c0f766 --- /dev/null +++ b/bak/testother.py @@ -0,0 +1,48 @@ +import sys +from PyQt4.QtCore import * +from PyQt4.QtGui import * + +#################################################################### +def main(): + app = QApplication(sys.argv) + w = MyWindow() + w.show() + sys.exit(app.exec_()) + +#################################################################### +class MyWindow(QWidget): + def __init__(self, *args): + QWidget.__init__(self, *args) + + # create table + list_data = ["Tarek","Ehab","Galal"] + lm = MyListModel(list_data, self) + lv = QListView() + lv.setViewMode(QListView.IconMode) + lv.setModel(lm) + + # layout + layout = QVBoxLayout() + layout.addWidget(lv) + self.setLayout(layout) + +#################################################################### +class MyListModel(QAbstractListModel): + def __init__(self, datain, parent=None, *args): + """ datain: a list where each item is a row + """ + QAbstractListModel.__init__(self, parent, *args) + self.listdata = datain + + def rowCount(self, parent=QModelIndex()): + return len(self.listdata) + + def data(self, index, role): + if index.isValid() and role == Qt.DisplayRole: + return QVariant(self.listdata[index.row()]) + else: + return QVariant() + +#################################################################### +if __name__ == "__main__": + main() diff --git a/bak/testother2.py b/bak/testother2.py new file mode 100644 index 0000000..863bea6 --- /dev/null +++ b/bak/testother2.py @@ -0,0 +1,124 @@ +#Written by Robin Burchell +# No licence specified or required, but please give credit where it's due, and please let me know if this helped you. +# Feel free to contact with corrections or suggestions. +# +# We're using PySide, Nokia's official LGPL bindings. +# You can however easily use PyQt (Riverside Computing's GPL bindings) by commenting these and fixing the appropriate imports. +#from PySide.QtCore import * +#from PySide.QtGui import * +from PyQt4 import * +from PyQt4.QtCore import * +from PyQt4.QtGui import * +import sys + +# This is our model. It will maintain, modify, and present data to our view(s). +# As this is read-only, it's pretty straightforward, but it can get pretty complex. +# This is something that Qt Development Frameworks/Nokia are aware of and working on, in terms of +# better documentation, as well as a better implementation of all this, but both of those aren't +# really within the scope of this tutorial. ;) +# +# For more information on list models, take a look at: +# http://doc.trolltech.com/4.6/qabstractitemmodel.html +# but do bear in mind there are other models (like tables) available, depending on your data needs. +# Again, beyond the scope of this tutorial for now. :) +class SimpleListModel(QAbstractListModel): + def __init__(self, mlist): + QAbstractListModel.__init__(self) + + # Cache the passed data list as a class member. + self._items = mlist + + # We need to tell the view how many rows we have present in our data. + # For us, at least, it's fairly straightforward, as we have a python list of data, + # so we can just return the length of that list. + def rowCount(self, parent = QModelIndex()): + return len(self._items) + + # Here, it's a little more complex. + # data() is where the view asks us for all sorts of information about our data: + # this can be purely informational (the data itself), as well as all sorts of 'extras' + # such as how the data should be presented. + # + # For the sake of keeping it simple, I'm only going to show you the data, and one presentational + # aspect. + # + # For more information on what kind of data the views can ask for, take a look at: + # http://doc.trolltech.com/4.6/qabstractitemmodel.html#data + # + # Oh, and just to clarify: when it says 'invalid QVariant', it means a null QVariant. + # i.e. QVariant(). + # + # 'index' is of type QModelIndex, which actually has a whole host of stuff, but we + # only really care about the row number for the sake of this tutorial. + # For more information, see: + # http://doc.trolltech.com/4.6/qmodelindex.html + def data(self, index, role = Qt.DisplayRole): + if role == Qt.DisplayRole: + # The view is asking for the actual data, so, just return the item it's asking for. + return QVariant(self._items[index.row()]) + elif role == Qt.BackgroundRole: + # Here, it's asking for some background decoration. + # Let's mix it up a bit: mod the row number to get even or odd, and return different + # colours depending. + # (you can, and should, more easily do this using this: + # http://doc.trolltech.com/4.6/qabstractitemview.html#alternatingRowColors-prop + # but I deliberately chose to show that you can put your own logic/processing here.) + # + # Exercise for the reader: make it print different colours for each row. + # Implementation is up to you. + if index.row() % 2 == 0: + return QVariant(QColor(Qt.gray)) + else: + return QVariant(QColor(Qt.lightGray)) + else: + # We don't care about anything else, so make sure to return an empty QVariant. + return QVariant() + +# This widget is our view of the readonly list. +# Obviously, in a real application, this will be more complex, with signals/etc usage, but +# for the scope of this tutorial, let's keep it simple, as always. +# +# For more information, see: +# http://doc.trolltech.com/4.6/qlistview.html +class SimpleListView(QListView): + def __init__(self, parent = None): + QListView.__init__(self, parent) + +# Our main application window. +# You should be used to this from previous tutorials. +class MyMainWindow(QWidget): + def __init__(self): + QWidget.__init__(self, None) + + # main section of the window + vbox = QVBoxLayout() + + # create a data source: + m = SimpleListModel(["test", "tes1t", "t3est", "t5est", "t3est"]) + + # let's add two views of the same data source we just created: + v = SimpleListView() + v.setModel(m) + vbox.addWidget(v) + + # second view.. + v = SimpleListView() + v.setModel(m) + vbox.addWidget(v) + + # bottom section of the window + hbox = QHBoxLayout() + + # add bottom to main window layout + vbox.addLayout(hbox) + + # set layout on the window + self.setLayout(vbox) + +# set things up, and run it. :) +if __name__ == '__main__': + app = QApplication(sys.argv) + w = MyMainWindow() + w.show() + app.exec_() + sys.exit() diff --git a/bak/windows.py b/bak/windows.py new file mode 100644 index 0000000..ac64475 --- /dev/null +++ b/bak/windows.py @@ -0,0 +1,203 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'stacked2.ui' +# +# Created: Mon Feb 22 15:27:51 2010 +# by: PyQt4 UI code generator 4.6 +# +# WARNING! All changes made in this file will be lost! + +from PySide import QtCore, QtGui + +class Ui_MainWindow(object): + def setupUi(self, MainWindow): + MainWindow.setObjectName("MainWindow") + MainWindow.resize(800, 425) + self.centralwidget = QtGui.QWidget(MainWindow) + self.centralwidget.setObjectName("centralwidget") + self.stackedWidget = QtGui.QStackedWidget(self.centralwidget) + self.stackedWidget.setGeometry(QtCore.QRect(0, 0, 800, 425)) + self.stackedWidget.setObjectName("stackedWidget") + self.page = QtGui.QWidget() + self.page.setObjectName("page") + self.verticalLayoutWidget = QtGui.QWidget(self.page) + self.verticalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 800, 425)) + self.verticalLayoutWidget.setObjectName("verticalLayoutWidget") + self.verticalLayout = QtGui.QVBoxLayout(self.verticalLayoutWidget) + self.verticalLayout.setObjectName("verticalLayout") + self.inboxButton = QtGui.QPushButton(self.verticalLayoutWidget) + self.inboxButton.setObjectName("inboxButton") + self.verticalLayout.addWidget(self.inboxButton) + self.sentButton = QtGui.QPushButton(self.verticalLayoutWidget) + self.sentButton.setObjectName("sentButton") + self.verticalLayout.addWidget(self.sentButton) + spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.verticalLayout.addItem(spacerItem) + self.stackedWidget.addWidget(self.page) + self.inboxMessages = QtGui.QWidget() + self.inboxMessages.setObjectName("inboxMessages") + self.listView = QtGui.QListWidget(self.inboxMessages) + self.listView.setGeometry(QtCore.QRect(0, 0, 800, 425)) + self.listView.setObjectName("listView") + self.stackedWidget.addWidget(self.inboxMessages) + self.page_2 = QtGui.QWidget() + self.page_2.setObjectName("page_2") + self.verticalLayoutWidget_2 = QtGui.QWidget(self.page_2) + self.verticalLayoutWidget_2.setGeometry(QtCore.QRect(0, 0, 800, 425)) + self.verticalLayoutWidget_2.setObjectName("verticalLayoutWidget_2") + self.verticalLayout_2 = QtGui.QVBoxLayout(self.verticalLayoutWidget_2) + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.horizontalLayout_2 = QtGui.QHBoxLayout() + self.horizontalLayout_2.setObjectName("horizontalLayout_2") + self.msg_from = QtGui.QLabel(self.verticalLayoutWidget_2) + self.msg_from.setObjectName("msg_from") + self.horizontalLayout_2.addWidget(self.msg_from) + self.line_2 = QtGui.QFrame(self.verticalLayoutWidget_2) + self.line_2.setFrameShape(QtGui.QFrame.VLine) + self.line_2.setFrameShadow(QtGui.QFrame.Sunken) + self.line_2.setObjectName("line_2") + self.horizontalLayout_2.addWidget(self.line_2) + spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) + self.horizontalLayout_2.addItem(spacerItem1) + self.msg_date = QtGui.QLabel(self.verticalLayoutWidget_2) + self.msg_date.setObjectName("msg_date") + self.horizontalLayout_2.addWidget(self.msg_date) + self.verticalLayout_2.addLayout(self.horizontalLayout_2) + self.line = QtGui.QFrame(self.verticalLayoutWidget_2) + self.line.setFrameShape(QtGui.QFrame.HLine) + self.line.setFrameShadow(QtGui.QFrame.Sunken) + self.line.setObjectName("line") + self.verticalLayout_2.addWidget(self.line) + self.msg_text = QtGui.QTextBrowser(self.verticalLayoutWidget_2) + sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.msg_text.sizePolicy().hasHeightForWidth()) + self.msg_text.setSizePolicy(sizePolicy) + self.msg_text.setObjectName("msg_text") + self.verticalLayout_2.addWidget(self.msg_text) + spacerItem2 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.verticalLayout_2.addItem(spacerItem2) + self.horizontalLayout = QtGui.QHBoxLayout() + self.horizontalLayout.setObjectName("horizontalLayout") + self.msg_delete = QtGui.QPushButton(self.verticalLayoutWidget_2) + self.msg_delete.setObjectName("msg_delete") + self.horizontalLayout.addWidget(self.msg_delete) + self.msg_back = QtGui.QPushButton(self.verticalLayoutWidget_2) + self.msg_back.setObjectName("msg_back") + self.horizontalLayout.addWidget(self.msg_back) + self.verticalLayout_2.addLayout(self.horizontalLayout) + self.stackedWidget.addWidget(self.page_2) + self.sentPage = QtGui.QWidget() + self.sentPage.setObjectName("sentPage") + self.sentView = QtGui.QListView(self.sentPage) + self.sentView.setGeometry(QtCore.QRect(0, 0, 800, 425)) + self.sentView.setObjectName("sentView") + self.sentView.setProperty("FingerScrollable", True) + self.stackedWidget.addWidget(self.sentPage) + self.sentMessageView = QtGui.QWidget() + self.sentMessageView.setObjectName("sentMessageView") + self.verticalLayoutWidget_3 = QtGui.QWidget(self.sentMessageView) + self.verticalLayoutWidget_3.setGeometry(QtCore.QRect(0, 0, 800, 425)) + self.verticalLayoutWidget_3.setObjectName("verticalLayoutWidget_3") + self.verticalLayout_3 = QtGui.QVBoxLayout(self.verticalLayoutWidget_3) + self.verticalLayout_3.setSizeConstraint(QtGui.QLayout.SetMaximumSize) + self.verticalLayout_3.setObjectName("verticalLayout_3") + self.horizontalLayout_3 = QtGui.QHBoxLayout() + self.horizontalLayout_3.setObjectName("horizontalLayout_3") + self.frame = QtGui.QLabel(self.verticalLayoutWidget_3) + self.frame.setFrameShape(QtGui.QFrame.Box) + self.frame.setFrameShadow(QtGui.QFrame.Raised) + self.frame.setLineWidth(5) + self.frame.setMidLineWidth(0) + self.frame.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) + self.frame.setObjectName("frame") + self.horizontalLayout_3.addWidget(self.frame) + self.verticalLayout_4 = QtGui.QVBoxLayout() + self.verticalLayout_4.setContentsMargins(5, -1, 0, -1) + self.verticalLayout_4.setObjectName("verticalLayout_4") + self.sent_msg_to = QtGui.QLabel(self.verticalLayoutWidget_3) + font = QtGui.QFont() + font.setPointSize(26) + self.sent_msg_to.setFont(font) + self.sent_msg_to.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) + self.sent_msg_to.setObjectName("sent_msg_to") + self.verticalLayout_4.addWidget(self.sent_msg_to) + self.sent_msg_date = QtGui.QLabel(self.verticalLayoutWidget_3) + self.sent_msg_date.setFrameShape(QtGui.QFrame.StyledPanel) + self.sent_msg_date.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) + self.sent_msg_date.setObjectName("sent_msg_date") + self.verticalLayout_4.addWidget(self.sent_msg_date) + spacerItem3 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.verticalLayout_4.addItem(spacerItem3) + self.horizontalLayout_3.addLayout(self.verticalLayout_4) + spacerItem4 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) + self.horizontalLayout_3.addItem(spacerItem4) + self.verticalLayout_3.addLayout(self.horizontalLayout_3) + self.line_3 = QtGui.QFrame(self.verticalLayoutWidget_3) + self.line_3.setFrameShadow(QtGui.QFrame.Plain) + self.line_3.setLineWidth(5) + self.line_3.setFrameShape(QtGui.QFrame.HLine) + self.line_3.setFrameShadow(QtGui.QFrame.Sunken) + self.line_3.setObjectName("line_3") + self.verticalLayout_3.addWidget(self.line_3) + self.sent_msg_text = QtGui.QLabel(self.verticalLayoutWidget_3) + self.sent_msg_text.setWordWrap(True) + self.sent_msg_text.setObjectName("sent_msg_text") + self.verticalLayout_3.addWidget(self.sent_msg_text) + spacerItem5 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.verticalLayout_3.addItem(spacerItem5) + self.horizontalLayout_4 = QtGui.QHBoxLayout() + self.horizontalLayout_4.setObjectName("horizontalLayout_4") + self.sent_msg_delete = QtGui.QPushButton(self.verticalLayoutWidget_3) + self.sent_msg_delete.setObjectName("sent_msg_delete") + self.horizontalLayout_4.addWidget(self.sent_msg_delete) + self.sent_msg_back = QtGui.QPushButton(self.verticalLayoutWidget_3) + self.sent_msg_back.setObjectName("sent_msg_back") + self.horizontalLayout_4.addWidget(self.sent_msg_back) + self.verticalLayout_3.addLayout(self.horizontalLayout_4) + self.stackedWidget.addWidget(self.sentMessageView) + MainWindow.setCentralWidget(self.centralwidget) + self.menubar = QtGui.QMenuBar(MainWindow) + self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 25)) + self.menubar.setObjectName("menubar") + MainWindow.setMenuBar(self.menubar) + self.statusbar = QtGui.QStatusBar(MainWindow) + self.statusbar.setObjectName("statusbar") + MainWindow.setStatusBar(self.statusbar) + self.actionOption_1 = QtGui.QAction(MainWindow) + self.actionOption_1.setObjectName("actionOption_1") + self.actionOption_2 = QtGui.QAction(MainWindow) + self.actionOption_2.setObjectName("actionOption_2") + self.actionBlabla2 = QtGui.QAction(MainWindow) + self.actionBlabla2.setObjectName("actionBlabla2") + + self.retranslateUi(MainWindow) + QtCore.QMetaObject.connectSlotsByName(MainWindow) + + def retranslateUi(self, MainWindow): + MainWindow.setWindowTitle(QtGui.QApplication.translate("MainWindow", "Retro Conversations", None, QtGui.QApplication.UnicodeUTF8)) + self.inboxButton.setText(QtGui.QApplication.translate("MainWindow", "Inbox", None, QtGui.QApplication.UnicodeUTF8)) + self.sentButton.setText(QtGui.QApplication.translate("MainWindow", "Sent", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_from.setText(QtGui.QApplication.translate("MainWindow", "msg_from", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_date.setText(QtGui.QApplication.translate("MainWindow", "msg_date", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_text.setHtml(QtGui.QApplication.translate("MainWindow", "\n" +"\n" +"

msg_text

", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_delete.setText(QtGui.QApplication.translate("MainWindow", "Delete", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_back.setText(QtGui.QApplication.translate("MainWindow", "Back", None, QtGui.QApplication.UnicodeUTF8)) + self.frame.setText(QtGui.QApplication.translate("MainWindow", "xxxxxx", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_msg_to.setStyleSheet(QtGui.QApplication.translate("MainWindow", "color:rgb(106, 106, 106)", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_msg_to.setText(QtGui.QApplication.translate("MainWindow", "TextLabel", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_msg_date.setText(QtGui.QApplication.translate("MainWindow", "TextLabel", None, QtGui.QApplication.UnicodeUTF8)) + self.line_3.setStyleSheet(QtGui.QApplication.translate("MainWindow", "background:rgb(50, 50, 50);", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_msg_text.setStyleSheet(QtGui.QApplication.translate("MainWindow", "margin-top:5px", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_msg_text.setText(QtGui.QApplication.translate("MainWindow", "TextLabel", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_msg_delete.setText(QtGui.QApplication.translate("MainWindow", "Delete", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_msg_back.setText(QtGui.QApplication.translate("MainWindow", "Back", None, QtGui.QApplication.UnicodeUTF8)) + self.actionOption_1.setText(QtGui.QApplication.translate("MainWindow", "Option 1", None, QtGui.QApplication.UnicodeUTF8)) + self.actionOption_2.setText(QtGui.QApplication.translate("MainWindow", "Option 2", None, QtGui.QApplication.UnicodeUTF8)) + self.actionBlabla2.setText(QtGui.QApplication.translate("MainWindow", "blabla2", None, QtGui.QApplication.UnicodeUTF8)) + diff --git a/bak/windows.py.bak b/bak/windows.py.bak new file mode 100644 index 0000000..0e88d3d --- /dev/null +++ b/bak/windows.py.bak @@ -0,0 +1,110 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'stacked2.ui' +# +# Created: Mon Feb 15 02:28:40 2010 +# by: PyQt4 UI code generator 4.6 +# +# WARNING! All changes made in this file will be lost! + +from PyQt4 import QtCore, QtGui + +class Ui_MainWindow(object): + def setupUi(self, MainWindow): + MainWindow.setObjectName("MainWindow") + MainWindow.resize(800, 400) + self.centralwidget = QtGui.QWidget(MainWindow) + self.centralwidget.setObjectName("centralwidget") + self.stackedWidget = QtGui.QStackedWidget(self.centralwidget) + self.stackedWidget.setGeometry(QtCore.QRect(0, 0, 800, 400)) + self.stackedWidget.setObjectName("stackedWidget") + self.page = QtGui.QWidget() + self.page.setObjectName("page") + self.verticalLayoutWidget = QtGui.QWidget(self.page) + self.verticalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 800,400)) + self.verticalLayoutWidget.setObjectName("verticalLayoutWidget") + self.verticalLayout = QtGui.QVBoxLayout(self.verticalLayoutWidget) + self.verticalLayout.setObjectName("verticalLayout") + self.inboxButton = QtGui.QPushButton(self.verticalLayoutWidget) + self.inboxButton.setObjectName("inboxButton") + self.verticalLayout.addWidget(self.inboxButton) + self.pushButton_2 = QtGui.QPushButton(self.verticalLayoutWidget) + self.pushButton_2.setObjectName("pushButton_2") + self.verticalLayout.addWidget(self.pushButton_2) + spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.verticalLayout.addItem(spacerItem) + self.stackedWidget.addWidget(self.page) + self.inboxMessages = QtGui.QWidget() + self.inboxMessages.setObjectName("inboxMessages") + self.listView = QtGui.QListWidget(self.inboxMessages) + self.listView.setGeometry(QtCore.QRect(0, 0, 800, 400)) + self.listView.setObjectName("listView") + self.stackedWidget.addWidget(self.inboxMessages) + self.page_2 = QtGui.QWidget() + self.page_2.setObjectName("page_2") + self.verticalLayoutWidget_2 = QtGui.QWidget(self.page_2) + self.verticalLayoutWidget_2.setGeometry(QtCore.QRect(0, 0, 800, 400)) + self.verticalLayoutWidget_2.setObjectName("verticalLayoutWidget_2") + self.verticalLayout_2 = QtGui.QVBoxLayout(self.verticalLayoutWidget_2) + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.horizontalLayout_2 = QtGui.QHBoxLayout() + self.horizontalLayout_2.setObjectName("horizontalLayout_2") + self.msg_from = QtGui.QLabel(self.verticalLayoutWidget_2) + self.msg_from.setObjectName("msg_from") + self.horizontalLayout_2.addWidget(self.msg_from) + self.msg_date = QtGui.QLabel(self.verticalLayoutWidget_2) + self.msg_date.setObjectName("msg_date") + self.horizontalLayout_2.addWidget(self.msg_date) + spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) + self.horizontalLayout_2.addItem(spacerItem1) + self.verticalLayout_2.addLayout(self.horizontalLayout_2) + + self.line = QtGui.QFrame(self.verticalLayoutWidget_2) + self.line.setFrameShape(QtGui.QFrame.HLine) + self.line.setFrameShadow(QtGui.QFrame.Sunken) + self.line.setObjectName("line") + self.verticalLayout_2.addWidget(self.line) + + #self.msg_text = QtGui.QTextBrowser(self.verticalLayoutWidget_2) + self.msg_text = QtGui.QLabel(self.verticalLayoutWidget_2) + sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.msg_text.sizePolicy().hasHeightForWidth()) + self.msg_text.setSizePolicy(sizePolicy) + self.msg_text.setObjectName("msg_text") + self.msg_text.setWordWrap(True) + self.verticalLayout_2.addWidget(self.msg_text) + self.horizontalLayout = QtGui.QHBoxLayout() + self.horizontalLayout.setObjectName("horizontalLayout") + self.msg_delete = QtGui.QPushButton(self.verticalLayoutWidget_2) + self.msg_delete.setObjectName("msg_delete") + self.horizontalLayout.addWidget(self.msg_delete) + self.msg_back = QtGui.QPushButton(self.verticalLayoutWidget_2) + self.msg_back.setObjectName("msg_back") + self.horizontalLayout.addWidget(self.msg_back) + self.verticalLayout_2.addLayout(self.horizontalLayout) + #spacerItem2 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + #self.verticalLayout_2.addItem(spacerItem2) + self.stackedWidget.addWidget(self.page_2) + MainWindow.setCentralWidget(self.centralwidget) + self.menubar = QtGui.QMenuBar(MainWindow) + self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 25)) + self.menubar.setObjectName("menubar") + MainWindow.setMenuBar(self.menubar) + self.statusbar = QtGui.QStatusBar(MainWindow) + self.statusbar.setObjectName("statusbar") + MainWindow.setStatusBar(self.statusbar) + + self.retranslateUi(MainWindow) + QtCore.QMetaObject.connectSlotsByName(MainWindow) + + def retranslateUi(self, MainWindow): + MainWindow.setWindowTitle(QtGui.QApplication.translate("MainWindow", "MainWindow", None, QtGui.QApplication.UnicodeUTF8)) + self.inboxButton.setText(QtGui.QApplication.translate("MainWindow", "Inbox", None, QtGui.QApplication.UnicodeUTF8)) + self.pushButton_2.setText(QtGui.QApplication.translate("MainWindow", "Sent", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_from.setText(QtGui.QApplication.translate("MainWindow", "msg_from", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_date.setText(QtGui.QApplication.translate("MainWindow", "msg_date", None, QtGui.QApplication.UnicodeUTF8)) + + self.msg_delete.setText(QtGui.QApplication.translate("MainWindow", "Delete", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_back.setText(QtGui.QApplication.translate("MainWindow", "Back", None, QtGui.QApplication.UnicodeUTF8)) diff --git a/bak/windows.pyc b/bak/windows.pyc new file mode 100644 index 0000000000000000000000000000000000000000..91dce96941555580c244c5daa8638ba8a147aab8 GIT binary patch literal 5505 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 Pd(n8h%v}W8HQD!Hy|Qz8 literal 0 HcmV?d00001 diff --git a/bak/yagami.jpg b/bak/yagami.jpg new file mode 100755 index 0000000000000000000000000000000000000000..b66b94809647677b3881e104a798537845265619 GIT binary patch literal 1519 zcmb7BdpOit7(Tz78JA&Z%t%?emP^|-GmKnvUEzn8v5`x)tSAgMHjFMrxvUf=-9(6x zRD>wC+8xr?Wmoy8sA+ zfE%%ZdxRN;a3v&OHi$;1)a!02hCB z;u1CF6K4|~`@}C2d;u^q?_-ybl_kMGxpCMFVj!1*uK)tW3!4B+Y>bRyD2geOND5>X zB^4EAC1qubDxFGErKu__Q#GhGbq15kR8d=`slm{sGnkA869^%CP)rfS6d4p{3gdr6 z-U?`Bzy@3d(g!dNLTHd&477>I5%(wJUy#TOh#~}|7*RH(0ti813`P;fj{*orXaL0& z^hk7lj-xuC!F3Xbq`V|E7a7E+9x16MnzRVR|2PtQL;*lBi6|Pp`pySy@v?9-SB*Bu|;?C?V#)BUBZQRH-f z@H|peM=h^-?v0#O6JhqFT`C1j8l-&N4dp|R3$~8bHr&z=olTD4yfXdKeY7pHe(3ME z?lfvyC4ISKzb`-c>J{-QW%4KUay>MTl78FyPEl)8Tz2!V`uYc#q+R`1A&EWrjq2L} z@G9)QH(?*C(UNgRK%Ox;$3Hxz{WkN3Wkgb6PtH2WU{6=!tY5NGO0s6DHjXbPR~wil zh9y?`cLYfq%gqbVjHNoao~=8uc^>WY_Rp4>$_}GnzXqKTR{mAruPDhrsdO+gr zz`edn^!iQ0_I5G9jlqy^JI}4P5;)Gb7kl~3LH(uz|-O}JZLu0qgL2pPMUauN6 zpmAvKuG3PF5^YCE9Q#J*P8#!;UA?|lZ(EyWi$|+*ndpF+9|^?_Neymhw!iZfJ<;h* z-gVNf|DmIFTWMHe#7@@A>~`N$e7E}D~+RtU5okcgz#}xY?7(u zA|pk|bLpt3Ko`%S3RpJ6I{K#~y11|Y?SO#Cym?`eAEg)W*x2IoV6|3?UH9_Ze1TIs z?pw3AI&yAahu+YjxyG)hxx3k^Pq3hx}UdcfX> zx(=T*sZVbn)h_yOib3e$;N|Qb<|;Fp3g^iC&>G$1%6PMuoM`cTrYuA>Qq*p)89O1_ zm-0(S*7eLOyBAZ%fhTkmXO^zwJ9yTrlodnu?pPja0OkKlulZ CiyMCc literal 0 HcmV?d00001 diff --git a/contactsServ.py b/contactsServ.py new file mode 100644 index 0000000..93e5fa3 --- /dev/null +++ b/contactsServ.py @@ -0,0 +1,112 @@ +import evolution +from pygobject import * +from ctypes import * +#from wrapper import * + + +ebook = CDLL('libebook-1.2.so.9') +E_CONTACT_HOMEPAGE_URL = 42 +E_CONTACT_PHOTO = 94 +E_CONTACT_EMAIL = 97 +E_CONTACT_BIRTHDAY_DATE = 107 + +class address_book: + + def getContactNameFromPhone(self, phoneNum): + + + addresses = evolution.ebook.open_addressbook('default') + contacts = addresses.get_all_contacts() + + + #ai = GList.new(ebook.e_contact_get_attributes(hash(self._contact), E_CONTACT_EMAIL)) + + for econtact in contacts: + + try: + #print econtact.get_name() + phones = econtact.get_property('phone') + + phones_p=int(str(phones)[13:-1],16) + phoneList = GList.new(phones_p) + + while phoneList.has_next(): + currPhone = string_at(phoneList.next()) + + if currPhone == phoneNum: + return econtact.get_name() + except: + continue + + + + + def populateNames(self, recvLst, sentLst): + + addresses = evolution.ebook.open_addressbook('default') + contacts = addresses.get_all_contacts() + + listX=[] + + + """"for msg in recvLst: + for contact in contacts: + try: + phones = contact.get_property('phone') + phones_p=int(str(phones)[13:-1],16) + except: + continue + + phoneList = GList.new(phones_p) + + while phoneList.has_next(): + currPhone = string_at(phoneList.next()) + if currPhone[-7:] == msg.fromNum[-7:]: + msg.setSenderName(contact.get_name()) + break + """ + + for contact in contacts: + + try: + phones = contact.get_property('phone') + phones_p=int(str(phones)[13:-1],16) + phoneList = GList.new(phones_p) + + + + + + + + + + while phoneList.has_next(): + currPhone = string_at(phoneList.next()) + for msg in recvLst: + if currPhone[-7:] == msg.fromNum[-7:]: + msg.setSenderName(contact.get_name()) + photo = contact.get_property('photo') + pi = cast(c_void_p(hash(photo)), POINTER(EContactPhoto)) + + if pi.contents.data.uri.startswith("image/"): + #data = string_at(pi.contents.data.inlined.data) + data = string_at(pi.contents.data.inlined.data, pi.contents.data.inlined.length) + length = pi.contents.data.inlined.length + msg.setImageData(data, length) + + for msg in sentLst: + if currPhone[-7:] == msg.toNum[-7:]: + msg.setRecName(contact.get_name()) + photo = contact.get_property('photo') + pi = cast(c_void_p(hash(photo)), POINTER(EContactPhoto)) + + if pi.contents.data.uri.startswith("image/"): + #data = string_at(pi.contents.data.inlined.data) + data = string_at(pi.contents.data.inlined.data, pi.contents.data.inlined.length) + length = pi.contents.data.inlined.length + msg.setImageData(data, length) + + + except: + continue diff --git a/contactsServ.pyc b/contactsServ.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0c0e09143b3cd366fdb06ceb18f27a48530da50a GIT binary patch literal 2589 zcmd5;&u<%55T3W|*s+t;Bn|ytXr)$IO^HQMAXSJo4sAr@M9)TPjmm1{eRZ~3@7lZ1 zX(HJdia2vC{{(*m7p`1D{3qPt0^f|C1X6DFfU|G*{g^jzX5Kg7=9k~*O5gnP)n{#* z{PK8zf|h*&5#Uj@Pt+Rs9okpa#Ehfm+iP z;3-j1q_2ry54UCZK5HV+wvyJj~@_TT?t`QCDtEPoWCh-owm{)D4fCQ}pu_t##7vP5C(ER4NyalgW@Avrqv*Lq$qXqzXqML+s=rTaXQzLg zlv0p*9;59b&PIiAu#S^(OXitBh%7uJ>g^@53Fpw0q=#>zSK*=M@XbLI4Q!aiqAS_A ztdaCg>`k)FNtVfuv7R4AUK{Fu+h%eVJlRX3pV}kqVrv*%d1p2iqYpR2Y&;X27nbwA z=VxAQ4y||qwJ`2@zO^|l$u#S*+1T%z3VSI_nTejsc8RDy=*sqqk0z6)6VKR$nT&8N zlQfK#WPj%MWWNl=Lq4cINYiajSOo(Tk=;kHx|eiK)%vN~uWtILo7||G0~1xZ)8x5n z+Z&C|M%BWH>Tcv$kDX|k^kBJnWG})1!dV?>t&X5RO_Q!1Q^r#E4g|RiYIdqXdB=6i z&NWqbT$)o0&YW6Qu4;2$`C87Qt)gW+!0%bKx(v?=T65F^W~b=zt^@Scp5AhR!lQWy z5In_f;TW@p*D*VNjM-^HWRVVkR>R^kW`9(IS&UCGTcX2X8MC#gKhbE0hA90!y*r#? z=yH#-{5`OYi8-!>@Z1FLYT}bPF`6Y?CZNsE(-4?f{MZGu=cSKg!sa;&7b$$3!V45$ zWS)UevNHp#fS!mi&j z)yj3=!d0x9cr>qQrX$VOsM)M8vEVO&W*XOQS~I9MSAuZYGt>qbH!o$zHcT9tl#51l z0SFVceGm%UY9jeVHClp~~kQeU>eCrEY4bl)K zj1y7gHhU4;v8gbQ!q^1DAd!hXm}bA>*E)w>>k|gi7kHiNLtkQX8A816W*vQ%2YgArP~YNJW-DPV z5&xaG_yT%KZxH#`a6H*vOk_0(azIv2eo^R3l@;i!By^=Pqb{lQn7ip*cHUD9>YDTV z+-=uY6;8igh$lSnd6GWQ>n6b8vWLQf^k|$A8XW D=C~a~ literal 0 HcmV?d00001 diff --git a/csv_service.py b/csv_service.py new file mode 100644 index 0000000..b50f24d --- /dev/null +++ b/csv_service.py @@ -0,0 +1,61 @@ +import csv +from recv import recv +from sent import sent +from contactsServ import * + +class csvServ: + def __init__(self, recvFile, sentFile): + ifile = open(recvFile, "r") + reader=csv.reader(ifile) + self.recvLst=[] + self.recvNumbers=[] + for row in reader: + self.recvLst.append(recv(row[2],row[5], row[7])) + self.recvNumbers.append(row[2][-7:]) + + #print "WILL" + + #self.recvLst = z.populateNames(self.recvLst) + + + ifile.close() + + ############################################## + + ifile = open(sentFile, "r") + reader=csv.reader(ifile) + self.sentLst=[] + self.sentNumbers=[] + for row in reader: + self.sentLst.append(sent(row[3],row[5], row[7])) + self.sentNumbers.append(row[3][-7:]) + + + + abook=address_book() + + abook.populateNames(self.recvLst, self.sentLst) + + + + + def getAllReceivedMsgs(self): + msgs=[] + for msg in self.recvLst: + msgs.append(msg.getSummary()) + return msgs + + + + + def getMsg(self, msgNum, msgType = 0): + #msgType 0: recv, 1:sent + + if msgType == 0: + return self.recvLst[msgNum] + + return self.sentLst[msgNum] + + + def getMsgText(self, msgNum): + return self.recvLst[msgNum].getMsg() diff --git a/csv_service.pyc b/csv_service.pyc new file mode 100644 index 0000000000000000000000000000000000000000..75666b00f7fe77018bc8b75d9bbf5fc80612acf4 GIT binary patch literal 1924 zcmb_d%Z}qz5Up!FPtu}?1t>g6VuY+&V2xO?V1$4f%?3I`PD>+NLYCXU(|F>vgYWIo zEp;TM%m=aJ1NZ}eg&iw6r<_b9kY+>2x#haAs#8^`lHdP082|dq&tDg^`wZ~@0>d3a zl=vE1h@5nKAPXb4krN|^d!Z}>sRKC)x_KmvP>#!9EAw~=i`8HF z%whx8M-Z(o);BX}&wV%Jf%~3d3b&rycKs4yfVHnMTmoSM%@8JB0R-Go38jP{$_pTc z??@MWlFs8E4Tcc3Ji>T{;SzZBBG<5FWE;pP6mO&oikGUY4mUXe_c63TD#)W1d?8^qF=YO;%t*oVvxD?g8!z!|cH5+YI9 zV`>oq#GfcJ(jgKbKxmnp6)MXmR1-O3-Sg76T3}M(8|UG)qr>cCd1_my$MO{}mMM0` zYwhaBS-nN7>~B%u-Aa{N6P(Y>vbD}-r%ki)1hQ&Y7j^FKEMHou_!XM7^)pXu633IO zwmP9nooHCku$(eBjiGIRQZPA9$5<5=?lWk~56#jhK5y+JIm+#_x%=3zZJm7EHqUM0 z@6M0riMP%tr*)nn8JPpOtHOS~x>CPcR-IQq%jnE~MBC{<>6_TRI~Yg*T8TzM z!LXTMjz<{o0mK=KXyo#qR!~6Jscb-MP}`7UsM{7DO8y;!e{4~jnZ-1cG9~F4!c&}C zKfhQm^Y*ISJ>*6Nv2lM+S^c=P_^0)QGBG*yPVY;v``a9w?^NgL-_mvbPv5 z9U#L9@e^o{Qwa~uBq#`PKQypASYRu5v7nG!c4JpJ9_#{m4_X%w3zfdZDaI`kbw>!m zJ+_zrA?!N3784Wsj>qR{vn*5cWZAMQFKSHFH*p|+n}QJ2_aSb8srG-{C?yYw!wspJ x(TAhaWYjrfGpF3sUzD5QilRC9dEp)ZX!QOqW73p7?2_;~Yo*vG<`B;~_#1X3c+UU; literal 0 HcmV?d00001 diff --git a/graphics/contact.png b/graphics/contact.png new file mode 100644 index 0000000000000000000000000000000000000000..84c42b0b80cea8474f06b095384fb279557397fc GIT binary patch literal 2973 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 BWYquw literal 0 HcmV?d00001 diff --git a/graphics/contact_50.png b/graphics/contact_50.png new file mode 100644 index 0000000000000000000000000000000000000000..55e62fa21153ab12207508f9b5d32131b2a23368 GIT binary patch literal 1625 zcmV-f2B!ImP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2igJ_ z6F4b5j`wr`00r4eL_t(&-p!d!Y+P3r$A9O(kNL94_BeKoVky}tYAZhsKlb%E{cRiQ27v)FR4OMOb}_>LfSY^2*w}r%p{(# z_ujpS#hWS-w2sH~?D4UV#4muO#q4Q!n4=4Dk8uRP7f>1Ubv z*i-o7Flr-Em#!|PmGMG4jhn13zR1njz5|`Dg9XGC#yIl%=czpK1R?^u&647gxP;Y9 zFSGvBr!(tp5BOGpTj4Rj@C;)ozl_6SHNkH8qcMslS2;>zJ9KWmo(T}s?*ifY{fr!c z5>+2-*>Q>lj2t_QDbE}LAYv%YewuJ(4s3!r*Hh+3=PAye89Zx=@hMI}3@%1pg!J0i zo=^VJ3AVhjZ(8n;ekC9nnL`tcxZU+bP@F)5V#;!Z1Cmw+tJ^cx`$Wphiiqiw=b$e{ zn}D{#B|Y;#_~7gTxY^Z_v}&jm)b_rsqL4(*o;M+LAnGhp{W|f~Cs6HiXEn{Zv5v;A zL02Rp+ISPa|8bn#g?6$X;@T2uGWgc&tY5^nZzCq(v)qWAH)(IYbue!BsJ={l?P6E8 zxgDi;GpfByvT^ZX$avRUr*Z9f6sG_So%RJ#gJP$#fW zsuNH{tGYz{$}5@4_)LJftrc!v{t3>u5!V41eP9}mh~qZZ#pl7c51vD8{PRcT4xb`7 z^~g3XBsddLUHmS|+G3^-(PX!jviZkv6K`I^0gB)hTvxp)f^`Y?H(n%q_k8A_Ju|C& zN75E3pM09!v<8N}dhMAG;VjVtGgmS15nB6}d+2r9?%NA5#RNYbtmZ(c%MtL#_b7h8gsR0kLu2hN>X&~>v~mHpZT#VBiu0dg?7qhc3Zp23Aat6ysJ-(GHvaT| zqSZJ0a*4YF5=9+r_0`mq+hosETmm*CEL0deb~d}#GQ%?zr#=peMegA>GD+M0Od`r3 z`NEFd>z+>)W*6}Md?o{ep4!VMvl_DjIxGB_hjO1nCk)&kk_YlnLPk*=>C*QZY22V)zd|rHi6HyjR0<}be*O1ZNED^^*B=lR4ik>fr8kt` z%l7SF^Zu_UzqPVR>u)b)C*vh3Q95>x+=m{)D^6kjeD_OTTGrj4<@bIO5!8XTE$r3} zn%7>XbNS^ROQW8wt|?6uPMjjFJcwVO#~+%-1VzNl0j4`xaChzU2mI$Eh?w*}Nz%ba zw@J3Hlhl`pHs2;%zX0vEeHaIs5R)ro!ZA#~f>)ft%a3CUC|1o zB{8nEg^R1W<_5M?#WvS)olRU+Lp$|dtL%&>jgp=pk<{YI-Tm&t-7iX2?|A+Uz5jm! XhaOC+^TC4~00000NkvXXu0mjfm8cqT literal 0 HcmV?d00001 diff --git a/graphics/contact_trans.png b/graphics/contact_trans.png new file mode 100644 index 0000000000000000000000000000000000000000..4675c81d8658d90daa4e05ab7a79dca5e1b8362b GIT binary patch literal 3043 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 literal 0 HcmV?d00001 diff --git a/graphics/contact_trans_120.png b/graphics/contact_trans_120.png new file mode 100644 index 0000000000000000000000000000000000000000..5b85495a037a0279d91351af7d85644f84f806cc GIT binary patch literal 5512 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 KMNUMnLSTXhs!+uM literal 0 HcmV?d00001 diff --git a/graphics/contact_trans_50.png b/graphics/contact_trans_50.png new file mode 100644 index 0000000000000000000000000000000000000000..d32484e127cf8f966ed4c9e0ca18af59a1fe83ad GIT binary patch literal 2319 zcmV+q3GnubP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2igJ_ z6FUhj&4hmd00@ssL_t(&-rZVjY!ufO{?475-P!lU#t&?4uz8dO;t&XkM-m_k5NJe` zG_)#6{Al~5N|lO6sHs$`t(yLbqNFX&&-OMJ;@8b63(`oC1|f9z1nS_QF+bu7HEg0t`-*I)_q^MEIN@pE z06E@MHW4aka%lc$WX}HuzB%{Y-LQK1-f;8EStN7@t81;xM1pL`!bsm+y@UI{ycNJ{ z@0`0(?0u_x9(S7H2RD1;3)h28NQtR}NEj5DxqNM4**EV2fWUY9sz)TaXuIL5TfEMQv;fj& zQVP=mYr@m$uV3~x03!E`mg*4^kU`B8+(;zA$|fiq(*S869}Iu(ZD?LSv#OzGClgKN z3D!X}NCKE9NHRR(78&l?&Q;w<7|H+xP|Q$F)0+zr2tHj&+^a!fi`E(bii8R7u9O#AiW3!nO-E-nH*J+4tH$ z0N{}`)i10*Hfyl+xL&hxJA6$6sU%CqBo*UofNchieemmEyX(a-0sv||fc#+9Wqc`z z*De8Mrg!wz3u~NYcR?vd3RLn9gP8%vfGcfE_Z&Fqj-I_W{Pim(?nvkVMyU$`Dn9^Y z&Vx{w-yF3viQntq$XX#hQAk^dbVxZ_$YOFhf9c)*g%i(wmGcAXV%Gt{%~UEN$}4pz z@$-z}f}Pv+@SOQ%1h|+PkWQxWp!2U+-kA7KxCuyK#Q&91e0KFbQolQa!KY^dK)^e1 z(?jvO_pO6jv(-v|w0Hc-51)dfJp6pvBfa?vt+luL>t$NCJR1ZzJS~hi?p#hI^mH!0SIK zsrMy2za446_nG+oEkZX;uymQ3KQ1wtNF$I2b}cYV2*Y10URW`+A~1u903rtIR4k-0 z+WqRFl}c<&ANlFq0F>|cohY1q{>FI31dPbWr+*Y_TmQX4e4fUowH z2~6)ANtUG8VI$N?y1#ZEg=SgSg*T2N-Om-8YoZ-{(&%J-gj61*elpbypTrw~- zT^TC@0t1>iqOt32&_Xj`v-;mlRD_5&qXTlh8vvs5RlAP_Tkq1@bwCV438*BP0b+(H z(gG(pJYSO7?~ZocWlI#vCC`Qy@Ayf4?nYBNIVN_28w6q(%r1x>_Sbi;fzTc)bpjj8 z46Txw^VhEY?mln4U4wFordT{(F9-@y5}Fw!*Rf)So~FY(;7ZWv z)EX6mBtQ`nGkmdmckA^FA{9};{-zaQ5kmKZUBV3vtN#YG3&n@EQ)JZ+Eye1nAYq~Rh2*eyN;;EA$`c-l5O>=|q~4%0V@ZNRaM{$g+tz>BMqrXPON&`kx->%`{ff%$O*f zh)XOc&NH|gE&=2eZ>&$=oMkY(1a?aLp&Cr4cw8}g)^dp;Rp|t?8bpYIDfa30$=C6W zk$xQbj?nL3z7-|;*`Jw9|5}X5n z+m~Q<|EAj>Ie8TRnGI5SYo$_tMFu1UNhU}JO9n{=NS-DDNG6s{Bw0X83ER%Ywvxl? z%O?(HkN~iwPOriS&!U%#4Qz<)Br|fKum*!A5AMc{2N3^2Z7Psd0GGf002ovPDHLkV1g>ES|R`d literal 0 HcmV?d00001 diff --git a/inbox_model.py b/inbox_model.py new file mode 100644 index 0000000..e83d632 --- /dev/null +++ b/inbox_model.py @@ -0,0 +1,24 @@ +from PyQt4 import * +from PyQt4.QtCore import * +from PyQt4.QtGui import * +import sys + + +class InboxModel(QAbstractListModel): + def __init__(self, mlist): + QAbstractListModel.__init__(self) + + + self._items = mlist + + + def rowCount(self, parent = QModelIndex()): + return len(self._items) + + + + def data(self, index, role = Qt.DisplayRole): + if role == Qt.DisplayRole: + return QVariant(self._items[index.row()].getSenderName()) + else: + return QVariant() diff --git a/main.py b/main.py new file mode 100644 index 0000000..dee8242 --- /dev/null +++ b/main.py @@ -0,0 +1,128 @@ +import sys +from PyQt4.QtCore import * +from PyQt4.QtGui import * +from csv_service import csvServ +from models import * +#from windows import * +from GUI.main_window import * +from GUI.inbox_window import * +from GUI.message_window import * +from GUI.sent_window import * + +msgs=csvServ("sms.csv", "sent.csv") + +def showInboxMessages(): + #ui.stackedWidget.setCurrentIndex(1) + inboxWindow.show() + +def showSentMessages(): + #ui.stackedWidget.setCurrentIndex(3) + sentWindow.show() + +def showMsg(): + #ui.stackedWidget.setCurrentIndex(2) + msg = msgs.getMsg(inboxWindow.listView.currentIndex().row()) + print msg.getMsgText() + inboxMsgWindow.msg_text.setText(msg.getMsgText()) + inboxMsgWindow.msg_address.setText(msg.getSenderName()) + inboxMsgWindow.msg_date.setText(msg.getDate()) + + ##################################### + + + if msg.getImageData() == "": + inboxMsgWindow.frame.setPixmap(QPixmap("graphics/contact_trans_120.png")) + else: + + arr=QByteArray(msg.getImageData()) + img = QPixmap() + img.loadFromData(arr) + + inboxMsgWindow.frame.setPixmap(img.scaled(120,120, Qt.KeepAspectRatioByExpanding)) + + inboxMsgWindow.show() + + +def showSentMsg(): + #ui.stackedWidget.setCurrentIndex(4) + msg = msgs.getMsg(sentWindow.listView.currentIndex().row(), 1) + sentMsgWindow.msg_text.setText(msg.getMsgText()) + sentMsgWindow.msg_address.setText(msg.getRecName()) + sentMsgWindow.msg_date.setText(msg.getDate()) + + ##################################### + + if msg.getImageData() == "": + sentMsgWindow.frame.setPixmap(QPixmap("graphics/contact_trans_120.png")) + else: + arr=QByteArray(msg.getImageData()) + img = QPixmap() + img.loadFromData(arr) + + sentMsgWindow.frame.setPixmap(img.scaled(120,120, Qt.KeepAspectRatioByExpanding)) + + sentMsgWindow.show() + +def populateInbox(): + #allSenders=msgs.getAllSenders() + #for x in allSenders: + + recvModel=RecvModel(msgs.recvLst) + inboxWindow.listView.setModel(recvModel) + +def populateSent(): + #allSenders=msgs.getAllSenders() + #for x in allSenders: + + sentModel=SentModel(msgs.sentLst) + sentWindow.listView.setModel(sentModel) + + #for x in msgs.sentLst: + #print x.getRecName() + + +def init(): + ################## Connect SIGNALS ####################### + + QObject.connect(mainWindow.inbox_button, SIGNAL("clicked()"), showInboxMessages) + QObject.connect(mainWindow.sent_button, SIGNAL("clicked()"),showSentMessages) + QObject.connect(inboxWindow.listView, SIGNAL("clicked(QModelIndex)"),showMsg) + QObject.connect(sentWindow.listView, SIGNAL("clicked(QModelIndex)"),showSentMsg) + #QObject.connect(ui.msg_back, SIGNAL("clicked()"),showInboxMessages) + #QObject.connect(ui.sent_msg_back, SIGNAL("clicked()"),showSentMessages) + #QObject.connect(ui.sentView, SIGNAL("clicked(QModelIndex)"),showSentMsg) + + ############################################################ + + ################# Other Init functions ##################### + + populateInbox() + populateSent() + + ########################################################### + +if __name__ == '__main__': + app = QApplication(sys.argv) + #MainWindow = QtGui.QMainWindow() + #ui = Ui_MainWindow() + #ui.setupUi(MainWindow) + #MainWindow.show() + + ####### Initialization ######### + mainWindow = Ui_MainWindow() + inboxWindow = Ui_InboxWindow(mainWindow) + sentWindow = Ui_SentWindow(mainWindow) + inboxMsgWindow = Ui_MessageWindow(inboxWindow) + sentMsgWindow = Ui_MessageWindow(sentWindow) + #mainWindow=QMainWindow() + init() + + ################################ + + + mainWindow.show() + sys.exit(app.exec_()) + + + + diff --git a/message.py b/message.py new file mode 100644 index 0000000..d0b810f --- /dev/null +++ b/message.py @@ -0,0 +1,34 @@ +from PyQt4 import * +from PyQt4.QtCore import * +from PyQt4.QtGui import * + +class message: + + def __init__(self, msg, date): + self.msg=msg + self.date=date + self.imgData = "" + self.imgLength="" + self.img ="" + + def getDate(self): + return self.date + + def getMsgText(self): + return self.msg + + def getSummary(self): + return self.msg[0:20] + + def setImageData(self, data, length): + self.imgData = data + self.imgLength = length + + imgX = QImage() + arr = QByteArray(self.getImageData()) + imgX.loadFromData(arr) + self.img = imgX.scaled(50,50, Qt.KeepAspectRatio) + + + def getImageData(self): + return self.imgData diff --git a/message.pyc b/message.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ff1dac4445c0d4ec29d38b0ff8d4ea981da9e1bf GIT binary patch literal 1798 zcmcIkO>fgc5M4XzM*;4owm z_*?uHt{mXKaZ)O{R3gOL@yzV*yxF%i{`P&P{q@J^-JzNO7V&<8;h#dJ_y^|Ln1iVn zTxub-(4-3{ZI~~{To`jWXqdEV`Vm89KkdpLl%A{O}tYpP7jk6qa7<&T5v*t<4#6$q)TB%+@kBf%iqVeV(yMG zYT=(j>l~GZ>xiw~ac9rEqFmi^A6?$rugVW@D69Rwen*^_&b!=prtGbsj%68plO#LI zBuPlDZ$p@%HGPI8b~cm;F2YGOo{ke;m32zAV@8})a>N=r0Xgm#R8KZdaP6GPRh``& zb0R;;Y0r-i+$XsM>(8_Zt5h-Pnkp0pif^s2m)Qk(An+bUo!$S;vwv0;wi**`mM7s@ zjI1Kf^AO74r7a;_@w~yJt|o>#QQ@b(@g|wAowjH(OP6DqSY*ubkjMZ928L!d7rM zSh;>Ble2kOa!kV3Fs5}8u}P-igA-f0B+*+*lA=t{a+oo{PqE(N4Qf11{D6Xye)Fc< zzkHNpen)s@C2TQlEwvi@w7WG5?@YL0f83KNS}m%r_hh@QoG`ta$6I|VBB1iS)| z!$a^2JOVEO^G%Yr{2UMj36ku1yxyJpX7-zLK7L-9|M2O}gOnzpwp?$?@O=@P{0wao zJ)UT0PYcFcKwBa8L&`#O4SHrMYtTEQw?t3-P0E_n+1B1{i?V=v9r($=$fsjOV~8so zd`K=mSMqw5xnd7fAhUO5_(+5!>WdqK!G1t4gfl_;&QQNWu1UFiz-^msuM^6i6c(mq z4VKP}U_oGLSI`Brk`u`rINWo26Bh(yCaYV7 z)eq&^B+hS^w!sBFTvAhlMd&75b@$I~xAjpur_04nPYDnTvJJ_jfV?1LP$#43dFrFI zDp`0C3mZxwUt3)nm4gmgE2f1f%!lQ2H}|6=*|AmOG#A|`Nu4JpYu*{AB|AJX*MVc} z(v4*3_$W5Iw5k)%t5Wx3Wj-9}`E>6OlYvu8jt>ndmzSA)t!%5s*GxF3*0O|?lVaZk z6q!Y{Y!=%W%u=u%bils}`%A$s>_;GREG*qFsE6j|iP9)UO|Vjr$* ze^M9d9%v{Yh1fEO+Q*vON+h>0|D9H1K@m;QcLitxdp{k2k_k}evW(yC5Efbd9vx16 zHt4{DRiOJ%8-fMZf3YDPU^{xUCe@;z7`IaR@}A3FjoP=1Sg-_vx6OW$+Y^{WCC(=Q zD7$Mi4%T(+KwaC@@OK6RM6zcg{%+}>6Bh{XK Python mapping from http://faq.pygtk.org/index.py?req=show&file=faq23.041.htp""" + _fields_ = [ + ('register_class', + ctypes.PYFUNCTYPE(ctypes.c_void_p, ctypes.c_char_p, + ctypes.c_int, ctypes.py_object, + ctypes.py_object)), + ('register_wrapper', + ctypes.PYFUNCTYPE(ctypes.c_void_p, ctypes.py_object)), + ('register_sinkfunc', + ctypes.PYFUNCTYPE(ctypes.py_object, ctypes.c_void_p)), + ('lookupclass', + ctypes.PYFUNCTYPE(ctypes.py_object, ctypes.c_int)), + ('newgobj', + ctypes.PYFUNCTYPE(ctypes.py_object, ctypes.c_void_p)), + ] + + +# ------------------------------------------------------------------------- +class PyGObjectCAPI(object): + """GObject <-> Python mapping from http://faq.pygtk.org/index.py?req=show&file=faq23.041.htp""" + + def __init__(self): + addr = ctypes.pythonapi.PyCObject_AsVoidPtr( + ctypes.py_object(gobject._PyGObject_API)) + self._api = _PyGObject_Functions.from_address(addr) + + def pygobject_new(self, addr): + return self._api.newgobj(addr) + + +# ------------------------------------------------------------------------- +class GList(Structure): + """GList representation and convenience functions, based on Java's Iterable. + + Copyright (c) Andrew Flegg 2009. + Released under the Artistic Licence.""" + + + # ----------------------------------------------------------------------- + @classmethod + def new(clazz, ptr = None): + """Return a reference to an empty, or valid, GList at the + given pointer address.""" + + if ptr: + return cast(c_void_p(ptr), POINTER(GList)).contents + else: + return GList() + + + # ----------------------------------------------------------------------- + _fields_ = [('_data', c_void_p), + ('_next', c_void_p), + ('_prev', c_void_p)] + + _ptr = None # Initialises to before the list for `while(has_next)...' + + + # ----------------------------------------------------------------------- + def reset(self): + """Rewind the iterable to the start of the list.""" + + self._ptr = None + + # ----------------------------------------------------------------------- + def has_next(self): + """Return True if the list has an item on which next can be called.""" + + return (not self._ptr and self._data) or (self._ptr and self._ptr._next) + + + # ----------------------------------------------------------------------- + def next(self, as_a = None): + """Move the pointer on to the next item in the list and return its value, or + raise an exception if already on the last.""" + + if self._ptr and not self._ptr._next: + raise Exception("IndexOutOfBounds") + + self._ptr = self._ptr and cast(self._ptr._next, POINTER(GList)).contents or self + if not self._ptr._data: + return None + elif as_a: + return cast(self._ptr._data, POINTER(as_a)).contents + else: + return self._ptr._data + + + # ----------------------------------------------------------------------- + def set(self, value): + """Set the data in the current position in the list.""" + + if not self._ptr: + self._ptr = self + + self._ptr._data = cast(value, c_void_p); + + + + # ----------------------------------------------------------------------- + def add(self): + """Add a new entry on to the end of the list, ready to be "set".""" + + self.reset() + while self.has_next(): + self.next() + + if not self._ptr: + self._ptr = self + else: + new = GList() + new._prev = addressof(self._ptr) + self._ptr._next = addressof(new) + self._ptr = new + + +# ------------------------------------------------------------------------- +class EContactPhoto_inlined(Structure): + _fields_ = [('mime_type', c_char_p), + ('length', c_uint), + ('data', c_void_p)] + +class EContactPhoto_data(Union): + _fields_ = [('inlined', EContactPhoto_inlined), + ('uri', c_char_p)] + +class EContactPhoto(Structure): + _fields_ = [('type', c_int), + ('data', EContactPhoto_data)] + +class EContactDate(Structure): + _fields_ = [('year', c_uint), + ('month', c_uint), + ('day', c_uint)] + +# ------------------------------------------------------------------------- +class EVCardAttribute(Structure): + _fields_ = [('group', c_char_p), + ('name', c_char_p), + ('params', POINTER(GList)), + ('values', POINTER(GList)),] + + def value(self): + if not self.values: + return None + + return self.values.contents + diff --git a/pygobject.pyc b/pygobject.pyc new file mode 100644 index 0000000000000000000000000000000000000000..39eeaa16ea10931b5e06b2b7663292b9094d7446 GIT binary patch literal 5944 zcmcIoO_S8d8E(xdv+S~ff#3ve6;AAN3h!X-isJ+b%d${7X4z;l33E|trJfmiXQV;u z*<~mvsS2*jA*Y;j%Rk61eRY8=D)qEmQ&C;%y7V^6-iC^rO53p~%HF1mT1D?l*?U4oCzWo=3ae%Bii*~Xv8T%3 zlPX#-dQX?Vt13EE^qwty*C^9o`z=Ts{~N!ygPLLS!yR)DH-C3}|Iz-}IyC;hNfMek zP4W_{6Buv@SN<0i5Zod|92~wXu1N{eQEx~o0>>w$enPzjBp6(g=Hg&Hs>mbYS*~Me z)r&`Vye;jcX7R|raq&?xt6x{$mh$%64Q~4>ikWoojgM}*yHhhr6L%Dh$8pkkds#Yi z2gZzl(&_YqXB*>b-yCeDS-%q}k$#T$&oce&WW^7Jj z^-TBU+~~{?he4j3(~Dh48Q!Bab7rwKkCTHQfj)`eVVWLH#&#-MndqZ_y8m^11$9I4 zeLo3C+V>56e1DWilOdZN?E6s~qE1OeGac((M(sYm_tnnUc5IXZ&v>yH&nsJS8efipQ11@G)Ki1sZ^DzsTkaJ`2TB1 zL0NHAeIw0pphB3vf_ZYKoi5}zv2>f;msYNaJ*jZWvXnlfaGb=(_us**a&lEUE$6%w z^3}y9=+Sn7Nh|tYf7H@Qw1F-JmJ7h$F)!`5hJ zbYl5mQOMrhOpn1YotS`e#0`?j4b$XMC$UaK?TX)HfVt}K2f2=1jQJus3_i%+2k@c6 z{!nkMxcEtd`&K%hW^sRD+;;e(yP1H!NAA6$?)TjrSRAd}n6popeapRm?b_#dI%ax$ zsO1$Cc=F6O1MO~R2KdFH`(+$*I~yeh38hf5g9@0JURDn57-7=V(7>9jV#F23ygi34 z*ex*L6Efz%!bDG-Nd}>TLQiKRut|Y|t4Cuqz3Qf!dl(Gk=&EbM3JkYZh)S{hF`#nC zDf}|_JTumf9pRoBXBgzhqcw}!?>>64^LX3yF0q5G1l9)N=hm#n#}9)SFR)wqc(XjS z=6W!XYq(j9t~Z^_72&8K1yDX;4Fh^^Yz?G16mMC0%q`BOrw4*`gGi=IC_h5Cr;iYU zMQibl7%s4+7IOq2e+bCxId7MqO8_(r)2SH920f-R|=4cRy z1DD{sA-eZ9Zo{FDHYDVEA8@7jSbQJF8^C}>!(@*xP43Z*V3RogC> z@-CyxV^9_Q_ugeq^!`3-^AIWK0CfdRGXg4@p!@>&oIzXFE;^?x*PS(|?$8mGewFZU zaTGm;g?_xYphIfjI$7`mDzZa-#IMpDe2kfUT0Eso*W%8U5Kc0PvE-Wke(vJ#8hAMO)T>Yt~arV%_wpM zc#g{+s*6td1DSlaV` zz!4I-V)+^LO3ule9&Q6;rw%3w4Ifuy!Y^0HJ zM;^^b_9lVWBf%|`UK5qMf=7DJWsutOLW~$Q*U6dRHfoJp)mcB;Ldv{eY1CScR&(`C z>!dl4hud2S_d#fO2dPPMmK(;2jzT<;A1&YxuAIuz#nD~cQ@5PnXD9O-6GNtf_2Sqh zx*Nqfck)yz=gXl^`eq=$gjOi0>jfYg%I!JSpCEaeBez^^KEZ2#Lz#FAXaJLzW6q-b zDiYja2?Kc{Fu17vFBtmxwj+l|nyI8#Gc+Z0nq=|o**`bpQD~vZa)tacmVJpUrv@pc zoJ(F2@i@|PRjSqd5h}0CCHBD$yaBm>ie-O~Yc3bPav|5y6}lWVb;mD7+xh&(g_Q?3N#r#74(K7L0PK zO8m(2R#4Jq=`hOQ=`<{rb3xX?Y5O+uUrwfzc1 zMceOTa>BQ18$F3A>Z=3?V^3_4mg12{9$>G31zd!+u7*MRn&FP^|DnTxGTT_FEU$ NEQVM literal 0 HcmV?d00001 diff --git a/rec_model.py b/rec_model.py new file mode 100644 index 0000000..2075f8a --- /dev/null +++ b/rec_model.py @@ -0,0 +1,31 @@ +from PyQt4 import * +from PyQt4.QtCore import * +from PyQt4.QtGui import * +import sys + + +class RecModel(QAbstractListModel): + def __init__(self, mlist): + QAbstractListModel.__init__(self) + + + self._items = mlist + + + def rowCount(self, parent = QModelIndex()): + return len(self._items) + + + + def data(self, index, role = Qt.DisplayRole): + if role == Qt.DisplayRole: + return QVariant(self._items[index.row()].getSenderName()) + elif role == Qt.DecorationRole: + + #img = QImage() + #arr = QByteArray(self._items[index.row()].getImageData()) + #img.loadFromData(arr) + + return QVariant(self._items[index.row()].img) + else: + return QVariant() diff --git a/recv.py b/recv.py new file mode 100644 index 0000000..ed0608c --- /dev/null +++ b/recv.py @@ -0,0 +1,27 @@ +from message import message +from contactsServ import * + +class recv(message): + + def __init__(self, fromNum, date, msg): + self.fromNum=fromNum + #message.date=date; + #self.contacts=address_book() + + + + message.__init__(self, msg, date) + + + + def setSenderName(self, name): + self.fromName=name + + def getSenderName(self): + try: + return self.fromName + except: + return self.fromNum + + + diff --git a/recv.pyc b/recv.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0aeabeb6d5e824e75e12ed9c99f8d620e3a64edb GIT binary patch literal 1036 zcmb_aO>fgc5PfT>fy7h-i7Qg1a1{{2IV>+e9;w_@&0piU)AzV@w6d@?T{hjrh?J7GgrRWm^>;+Sj3XSxY?K253BPw4D)lXdnV+=Ec z?CcJEi)P{Y9LFd4NYJwHd{KIr*mW Co5?@` literal 0 HcmV?d00001 diff --git a/sent.csv b/sent.csv new file mode 100644 index 0000000..aa0beb6 --- /dev/null +++ b/sent.csv @@ -0,0 +1,160 @@ +sms,submit,"","0102412751","","2010.01.15 22:30","","Log base 2 byb2a (log el 7aga)/log 2" +sms,submit,"","0102412751","","2010.01.14 12:43","","Ana s7eet law 3yza tenzeli badri" +sms,submit,"","0124641123","","2010.01.12 03:20","","Call menna ya reem :D" +sms,submit,"","+20124641123","","2010.01.10 12:22","","Yes, 3nd nora" +sms,submit,"","+20102412751","","2010.01.10 02:54","","9:30 hnak isA" +sms,submit,"","+20102412751","","2010.01.03 02:44","","A baz khales wala a? :D" +sms,submit,"","+20102412751","","2009.12.25 04:40","","Tab forward 3laya w h2olk tom isA" +sms,submit,"","+20102412751","","2009.12.25 04:33","","Call if u can 3shan ana bra" +sms,submit,"","+20102412751","","2009.12.24 14:23","","Ok :)" +sms,submit,"","0106676915","","2009.12.16 21:09","","La2" +sms,submit,"","0146068600","","2009.12.13 18:28","","Fi tawsila wala astana" +sms,submit,"","0102412751","","2009.12.11 15:39","","70044501980526" +sms,submit,"","+20102412751","","2009.12.11 00:47","","Ok w reem 2altli nb2a n2olha, 2olelha" +sms,submit,"","+20100046084","","2009.12.09 18:15","","Ok man waiting" +sms,submit,"","0100046084","","2009.12.09 18:06","","tigi m3aya wala amshi ana?" +sms,submit,"","0102412751","","2009.12.09 07:21","","Thx ya menna bs no printer" +sms,submit,"","+20106676915","","2009.12.07 02:33","","eshta ya GaWeeeZYY :D (k)" +sms,submit,"","0106676915","","2009.12.07 02:01","","Kol sana wnta tyb ya seeeeeees" +sms,submit,"","+20106614819","","2009.12.06 05:10","","hehehehehehe" +sms,submit,"","0102412751","","2009.12.05 01:37","","bkra 1st" +sms,submit,"","0100046084","","2009.11.27 04:45","","w haPpY 3id :D" +sms,submit,"","0100046084","","2009.11.27 04:44","","Happy BD YA mAAAAN W 3o2bal DisHILioN SanA :D:D" +sms,submit,"","0102412751","","2009.11.22 16:18","","tyb" +sms,submit,"","0102412751","","2009.11.22 12:34","","Call me lama ts7i" +sms,submit,"","+20106614819","","2009.11.17 17:29","","No" +sms,submit,"","0180742083","","2009.11.12 19:31","","0197920358" +sms,submit,"","0101272889","","2009.11.09 16:49","","Assi el multimedia copy mn 3l net wala our own words" +sms,submit,"","0102412751","","2009.11.09 14:32","","Khaliha 2" +sms,submit,"","0101272889","","2009.11.03 10:40","","Fen el lec" +sms,submit,"","0101272889","","2009.10.28 15:29","","Ana khalast el mafrood a3mlo f scad" +sms,submit,"","0101272889","","2009.10.27 10:36","","El lec fen" +sms,submit,"","0101884293","","2009.10.24 12:29","","Happy Birthday ya Raghda :)" +sms,submit,"","+20102540550","","2009.10.18 13:27","","5th" +sms,submit,"","0102412751","","2009.10.16 09:00","","boring boring boring boring boring boring boring boring boring boring" +sms,submit,"","0102412751","","2009.10.12 13:07","","Call me when u finish" +sms,submit,"","+20111224971","","2009.10.10 17:39","","713445487498082" +sms,submit,"","0102412751","","2009.10.08 08:36","","Ana s7EET :D" +sms,submit,"","0102412751","","2009.10.07 09:55","","m3lsh kont nayem. call me anytime lama tes7i" +sms,submit,"","0182222662","","2009.10.04 22:59","","Happy Birthday ya REHAM :D 3o2bal gogellion sana :D ana ba3t 3la fkra mn el sob7 bs ektashaft eni ba3t le nemra ghalat :D:D" +sms,submit,"","01812222662","","2009.10.04 13:10","","Happy Birthday ya REHAM :D 3o2bal gogellion sana :D" +sms,submit,"","0104446308","","2009.09.17 20:17","","Ya shero howa reham 3arfa wala la2 en fi bday bahaa. wna tare2, e7teyati :D" +sms,submit,"","0123526683","","2009.09.07 13:01","","Ana gai m3ak" +sms,submit,"","+20102412751","","2009.09.07 11:10","","Tiggo!:D Allah ybark fiki :) w 3am lama y3emekkk" +sms,submit,"","0102412751","","2009.09.06 21:33","","Sa7 3arbya :)" +sms,submit,"","0101272889","","2009.09.03 07:34","","Event esmaha SafeNameEvent" +sms,submit,"","+20102412751","","2009.08.21 22:05","","wnti tyba ya monmon looollll" +sms,submit,"","+20106504570","","2009.08.21 22:03","","wnti tyba ya samia Ramadan karim" +sms,submit,"","0122257078","","2009.08.20 14:51","","0104601814" +sms,submit,"","0103405520","","2009.08.18 13:00","","0106614819" +sms,submit,"","0123174186","","2009.08.17 06:35","","Reneli lama tes7a" +sms,submit,"","0122257078","","2009.08.17 03:42","","Reneli lw sa7i" +sms,submit,"","0122257078","","2009.08.16 08:58","","Kalmni awl mats7a" +sms,submit,"","0100046084","","2009.08.14 06:01","","El shela el gamda awi:D" +sms,submit,"","0119999764","","2009.08.06 03:20","","Kol sana wnti tyba :)" +sms,submit,"","0111966691","","2009.08.04 21:42","","Plz answer tarek" +sms,submit,"","+491639498283","","2009.07.28 18:29","","Sa2lt mal2tsh liki :P w b3den hwa enti katabti 3a2d asln:D 3ayz ashfko awel matigo isA rg3in emta" +sms,submit,"","+491639498283","","2009.07.28 17:00","","Ana l2et certificate wasfi m3aya ahe nw. El mfrod 2 slots lih 1800 bs lazm id bta3o 3shn el chek. Enti msh l2ilek 7aga esra7a w mfish 7d hna as2lo wla abosafi." +sms,submit,"","0112365365","","2009.07.24 09:14","","SalamoOOoOooo" +sms,submit,"","0127620656","","2009.07.20 12:40","","Kalmni lama ts7a" +sms,submit,"","0102412751","","2009.07.10 03:06","","Kol sana wnti tayba ya manoun :):) isA ya rab y72a2lk kol el bttmanih w tb2i btd7aki 3la tol daymn :)" +sms,submit,"","0104446308","","2009.07.09 21:50","","El me7war msh byt7arrakk!!!!!!" +sms,submit,"","+20102412751","","2009.07.09 04:59","","yes mshit, bs ftni el maghrb bs kont f cinema w nsit khales :s bs tale3 el beet aho dlw2ti w hasalih. Thx 4 checkin :)" +sms,submit,"","0101272889","","2009.07.07 06:53","","Xp-dev is down. 3shan kda svn msh sha3'al nw 3nd kolo" +sms,submit,"","0106247887","","2009.06.28 16:17","","Fi 7alet na7s" +sms,submit,"","+20105213977","","2009.06.25 14:13","","No problem, Sunday at 1 pm then. Tarek Galal" +sms,submit,"","0106960034","","2009.06.19 16:54","","Law hatgib fool, 2 fool bl beed, 1 batates" +sms,submit,"","0123526683","","2009.06.15 11:02","","Ana rakeb taxi speranza :D:D" +sms,submit,"","+20102540550","","2009.06.09 16:19","","E7na fe beet samo haneegy kaman shewaya" +sms,submit,"","0109900966","","2009.06.08 15:46","","H10" +sms,submit,"","0182222662","","2009.06.03 18:40","","aiwa b2aaaa obama gayelnaa el KHALIFAAA :D:D" +sms,submit,"","0109900966","","2009.06.03 03:13","","Happy Happy Happy Birthday ya lamaa w 3o2bal isA lama yt7a22lek btetmani :) w enjoy b2a u turn 20 once brdo:D" +sms,submit,"","+20101326461","","2009.06.02 14:27","","3enaya" +sms,submit,"","+20101326461","","2009.06.02 14:25","","Nop" +sms,submit,"","0101272889","","2009.06.01 12:13","","Room el CA el kona fiha" +sms,submit,"","0101272889","","2009.06.01 12:06","","Meeting room" +sms,submit,"","0109900966","","2009.06.01 11:58","","Khaliki kda nayma f betkooo :D" +sms,submit,"","0106676915","","2009.05.28 15:12","","Ana fakes msh haynf3" +sms,submit,"","0109900966","","2009.05.23 17:58","","Et2agl bokra bleel" +sms,submit,"","0103734088","","2009.05.20 10:52","","2alek ray7a el 2ola.. No comment! :D" +sms,submit,"","+20106676915","","2009.05.19 03:31","","Fucken thanks ya gweeezooo :D" +sms,submit,"","+20101884293","","2009.05.19 03:25","","Thanks raghdad:)" +sms,submit,"","+20109900966","","2009.05.19 03:24","","Sanks :D yalla 3o2balek kda lama tkbari w tb2i 2adi" +sms,submit,"","+20161056130","","2009.05.09 15:28","","Ana fl gm3a w msh h3raf akhosh onln lel asaf enhrda.. ema arwa7 b2a:D" +sms,submit,"","0161056130","","2009.05.09 15:13","","GOT MY 1ST RENTACODER JOB!! :D:D" +sms,submit,"","0112365365","","2009.05.08 03:40","","Ana budu" +sms,submit,"","0112365365","","2009.05.08 03:40","","Solom ma3lesh ma3ish feloos 5ales walahi mesh ha3raf agy" +sms,submit,"","+20106614819","","2009.05.02 14:47","","" +sms,submit,"","0126111564","","2009.04.29 09:23","","Call amrehab" +sms,submit,"","0127620656","","2009.04.27 05:40","","Please bring tomorrow a copy of ur guc id and ur personal id and forward this msg to wasfi" +sms,submit,"","0100048666","","2009.04.22 21:36","","Kol sana wnti taybaa! :):) sry 4 being that late.. isA ya rab y7a22lek el btetmamih :)" +sms,submit,"","0127620656","","2009.03.17 13:47","","3al2et moot haynzl bokra ya mao" +sms,submit,"","0127620656","","2009.03.17 12:03","","Samo 3andak??" +sms,submit,"","+20106614819","","2009.03.07 15:03","","Abu safi" +sms,submit,"","0106676915","","2009.02.23 23:03","","ana 3omri mhb3tlk msg tani" +sms,submit,"","0106676915","","2009.02.23 23:01","","Fi KENTAKY FEL BEET!! :D" +sms,submit,"","0106676915","","2009.02.23 22:59","","KENTAKY FEL BEET!!" +sms,submit,"","0106504570","","2009.02.23 22:55","","3shan lw 7ad kan fhemni ghalat, ana kan asdi mayfn3sh ne2ta3 m3ah tb3an" +sms,submit,"","0100704241","","2009.02.22 06:41","","With you" +sms,submit,"","0100046084","","2009.02.21 14:28","","Password el gweez Nothing_88 eb2a 2olo tl3 fiha underscore" +sms,submit,"","0109958830","","2009.02.20 01:04","","Aisha e7na lesa fl gam3a!!! G3aaaaaan" +sms,submit,"","0100704241","","2009.02.18 07:21","","m3ako ya no7 isA... w 7ale2 el mradi" +sms,submit,"","+20127620656","","2009.02.16 16:44","","Qwerty_456" +sms,submit,"","0100704241","","2009.02.16 01:15","","m3ako ya nanno bokra isA. has7a 9 kda eb2i kalmini. w hakoon 7ale2 :D" +sms,submit,"","0106504570","","2009.01.24 00:19","","Kol sana wnti tyba ya samsoon w 3o2bal ya rab y7a22lek el btetmanih w yrzo2k b fares el a7lam kda ader ya karim:D" +sms,submit,"","0109958830","","2009.01.21 14:30","","Sent" +sms,submit,"","0106676915","","2009.01.20 07:26","","Lazem ya ged3an tigo tshofo haifaa labsa ezay enhrda ""A 7 A"" :D" +sms,submit,"","+20101326461","","2009.01.08 08:57","","matnsashh" +sms,submit,"","+20106504570","","2009.01.04 00:49","","aho enti el koko! :D" +sms,submit,"","0109958830","","2009.01.04 00:43","","ya aisha msh 3aref 2a2olek a:D gebt 8/10 bel rules el khadtaha menek :D akhiran zedt 3an el 3 :D" +sms,submit,"","0106614819","","2009.01.03 14:27","","Makaltsh ya3ni :P" +sms,submit,"","+20109958830","","2009.01.01 00:23","","may all ur dreams come true too ya Aisha :) Happy new year <: o)" +sms,submit,"","0123526683","","2008.12.28 12:13","","KOL DA" +sms,submit,"","0123366769","","2008.12.21 08:00","","Kalmni awel mats7a abl matnzl mn el beet" +sms,submit,"","0109958830","","2008.12.19 17:18","","ya aisha ya t3bana assi el graphics sahl awi :P" +sms,submit,"","+20182222662","","2008.12.08 00:17","","wnti tayba ya reham thnks. aho abadt w sha7ant w radeet :D" +sms,submit,"","+20109958830","","2008.12.07 04:00","","thnks ya aisha kol sana wnti tayeba :)" +sms,submit,"","0122768786","","2008.12.06 12:12","","FesFes :D kol sana wnta tayb w 3o2bal meet sana <: o)" +sms,submit,"","0106676915","","2008.12.06 12:10","","Gwezzwezyyyyyyyy kol sana wnta tayb ya man w 3o2bal el enta 3ayzo isA <:oD :D. t3ala yalla 3shan na7tafel :D" +sms,submit,"","0106614819","","2008.11.29 14:26","","ana ta7t" +sms,submit,"","0102540550","","2008.11.28 18:46","","Ebtedi be tani wa7da" +sms,submit,"","0123526683","","2008.11.16 11:25","","Matensash el flash" +sms,submit,"","0101768332","","2008.11.15 17:05","","Call me when u finish..fawzy" +sms,submit,"","0106504570","","2008.11.15 09:55","","Call me awel ema tigi" +sms,submit,"","0103734088","","2008.11.05 09:26","","msh 3andek el 1st ya bent :@" +sms,submit,"","0106960034","","2008.11.03 14:54","","Efta7 el comp bta3i pass: unfaithful w keyring:00-10-15. Efta7 amsn recieved fel home hatla2i grid eb3atholi nw drory" +sms,submit,"","0102540550","","2008.11.03 13:21","","Hwa da math :D" +sms,submit,"","+64212322048","","2008.10.30 22:06","","ana raye7 7aflet mounir fl guc mngherek :p" +sms,submit,"","0100046084","","2008.10.30 17:13","","kalmni awel matokhrog mn el tut" +sms,submit,"","+20100046084","","2008.10.30 17:07","","Wna m3aya wa7da brdo" +sms,submit,"","0105136548","","2008.10.29 19:05","","enti fen el lab aw el tut bta3ek" +sms,submit,"","0100704241","","2008.10.29 18:30","","Kol daaaaaaaa :@" +sms,submit,"","0100046084","","2008.10.29 17:14","","Yes" +sms,submit,"","0101884293","","2008.10.24 02:05","","Happy birthday ya raghdadd w 3o2bal 100 sana isA :) :)" +sms,submit,"","0103734088","","2008.10.22 19:01","","Call me when u finish 3shan msh mrawa7 fl bus" +sms,submit,"","+20106676915","","2008.10.18 13:03","","3amalt a" +sms,submit,"","0101202017","","2008.10.14 20:03","","msh adeerrrrrrrr" +sms,submit,"","0105541210","","2008.10.04 22:46","","bos ana haro7 agib 7aga mn compume f city stars watla3 3lehom" +sms,submit,"","0123366769","","2008.09.15 02:39","","ekhlas ya sees" +sms,submit,"","+20101884293","","2008.08.23 22:24","","raghadeeeed enti kman wa7shani walahi :)) ana rag3 kman esbo3 kda isA, awel magi lazm nokhrog 3ala tol, el ghorba w7sha awi :D" +sms,submit,"","0123553896","","2008.08.20 02:09","","Rod ya 3am ana mn3em" +sms,submit,"","+447624801423","","2008.07.28 22:20","","help" +sms,submit,"","+447624801423","","2008.07.28 22:19","","gamdwj" +sms,submit,"","0106960034","","2008.07.27 19:10","","18568921241835" +sms,submit,"","0112365365","","2008.07.26 07:12","","Kalemni lama tes7a" +sms,submit,"","666","","2008.07.22 15:50","","3" +sms,submit,"","666","","2008.07.22 15:49","","" +sms,submit,"","0123526683","","2008.07.20 13:05","","el strength nezel" +sms,submit,"","0106676915","","2008.07.15 12:40","","Elect nezel hehehehehehehe" +sms,submit,"","0123526683","","2008.07.15 12:40","","Elect nezel hehehehehehehe" +sms,submit,"","0106614819","","2008.07.15 12:37","","Elect nezel hehehehehehehe" +sms,submit,"","0102540550","","2008.07.15 12:37","","Elect nezel hehehehehehehe" +sms,submit,"","0100011372","","2008.07.01 16:19","","fi 7ad dakhel 3ala mail lina w asking people to buy her kart sha7n w yeb3t el code.." +sms,submit,"","0106504570","","2008.06.24 18:10","","gebti B+ DE ;)" +sms,submit,"","0102540550","","2008.06.21 14:26","","el signals nawart el system :D" +sms,submit,"","0106614819","","2008.06.21 14:26","","el signals nawart el system :D" +sms,submit,"","0100011372","","2008.05.25 00:15","","Happy Happy Happy Happy Happy Happy Happy Happy Happy Birthday!!!! wish u the best isA :) :) 7ayoo abu el fasadd <:o)" +sms,submit,"","+20100046084","","2008.05.19 00:41","","wntaa tayeeeb ya etchyyyy thanks maaaan:D" +sms,submit,"","0105236064","","2008.05.17 01:49","","khlass bokra b2a walla yom tani" +sms,submit,"","0102540550","","2008.05.11 10:48","","l2et mkan ha7dar" +sms,submit,"","250","","2008.01.01 11:02","","" \ No newline at end of file diff --git a/sent.py b/sent.py new file mode 100644 index 0000000..df28d50 --- /dev/null +++ b/sent.py @@ -0,0 +1,28 @@ +from message import message +from contactsServ import * + +class sent(message): + + def __init__(self, toNum, date, msg): + self.toNum=toNum + #self.contacts=address_book() + + message.__init__(self, msg, date) + + + + + + + + def setRecName(self, name): + self.toName=name + + def getRecName(self): + try: + return self.toName + except: + return self.toNum + + + diff --git a/sent.pyc b/sent.pyc new file mode 100644 index 0000000000000000000000000000000000000000..58136eb8dc2dfde07c66a62437f7c2f66297cf70 GIT binary patch literal 1026 zcmb_a&59F25dL~5yK9nN5W%Am@G^LCE*?chy~zgY5!76oai%wpnIB2_E-d6AtZ(5{ z`6|AE)>pF|J?n;abyYE4-%t0CpC_~LM_*r8xc(i;{#;ggBB7SQ!3Jo76<}B=*ciO6 zQ+VLapq}6xa0Pr=C8!TjWQTIF`6a*1NEVMIbUuV~?Z*bYkK#mP@O|6^v;Bh2hZ1D= zN@jzzIoD{C5}ln1Y>}n%UBxjs>m^SwB?oCSkryu}g53s)Ry$EOkJn-Z(7J zJ1Ys|9SP1geG{F_IQW`qduEBJRb56OS#@EZ$p#H-SpI3~d>+fK-{hyI?}o)If8pEw z&35?gtGFmmi#+-e^N($rQ~u*GmzFRzEii$Zrd1;Q%~Dk-(%7r2AuiLdN#92LCvi~Q+IFk{*Uw>$VP#Of|BJX1 zrP*q$>QLUdMR&cYdtX2Tkzi6YmzAkM>^Mh({y}<^Z35m+57%uef8(%*S7^No+0KJ7=9n3#Aj$q^nRh48!eb? z0Zl`igj9xPdvs!`?9nyRH=>V|K9vEbQ6GWaFFcWf#v+~^@(QNZHhj>Qwz|n4VD}Y< zk0C741OZ6`P6D!_gaw{!Lz5oaKDmKpkmZn)Gz#HUNQC7WNuk3X06jI@z zL5n}NwT(IN>@+^eZQbtd+e=%;M_qen3*Jc&(wMF1__)erkAh^iRAl#jmIxn7?j;GC z_3&?U>-YiWzzqCAZplZniGO9AMBEi^A|RE*Iq)>M2UTm-wVy}rMZ+6N;spSiLLe;1 zNcK^4x(XHtau!g#O@;#{5E4$t_2iHrxxP$7$SkY}B-UI1wjRz+5eQx>axCj0<-;z{ zmH95Fedo`se3rD8Rm|fLdFS$mwMHDm0xWnH^Qq;;7KeFl`JOo1qU~~aZKJ+o>FQJM zn|W2W%bU`E(U$0t;MN*JBbGVm50TXiI5L}N+iVWDf=C&P$g&1t(V}9INf%vISZWt3 z_px5JH-a&d+n0!8B2`HqK>UHL+W$7MTyyy^@p5AZW@Wh1k3`jrax@$BQ(nVTwcRm~ o+RiG<<;Lp^r|02kK9K`VB;f60)DGC27wWl$_fp4IBkx-H8xMgDsQ>@~ literal 0 HcmV?d00001 diff --git a/sms.csv b/sms.csv new file mode 100644 index 0000000..0d64ee0 --- /dev/null +++ b/sms.csv @@ -0,0 +1,260 @@ +sms,deliver,"Vodafone","","","2010.01.16 17:42","","فودافون حولتلك 3 جنيه تخصم عند أول عملية شحن. رصيدك الحالي 2.83" +sms,deliver,"Vodafone","","","2010.01.16 11:08","","فودافون حولتلك 3 جنيه تخصم عند أول عملية شحن. رصيدك الحالي 2.67" +sms,deliver,"Vodafone","","","2010.01.16 10:45","","فودافون ممكن تحولك6جنيه رصيد على مرتين،3جنيه كل مرة.اضغط#3*868* ب50قرش" +sms,deliver,"9771","","","2010.01.15 18:11","","+20102090035, 04, 15-01-2010 18:21" +sms,deliver,"777","","","2010.01.15 18:09","","You have 4 missed call(s). To retrieve your call(s) dial *777# for 50pt or to receive your missed calls automatically for a month send SMS to 7777 for 5LE" +sms,deliver,"+20123526683","","","2010.01.15 16:25","","كلمنى شكرا Pls Call Me اتكلم دولي ب1.99جنيه بس للدقيقة.كلم800مجانا" +sms,deliver,"+20123526683","","","2010.01.15 16:15","","كلمنى شكرا Pls Call Me اتكلم دولي ب1.99جنيه بس للدقيقة.كلم800مجانا" +sms,deliver,"+20102412751","","","2010.01.14 13:32","","كلمنى شكرا Pls Call Me اتكلم دولي ب1.99جنيه بس للدقيقة.كلم800مجانا" +sms,deliver,"Bianco","","","2010.01.14 11:55","","Leading fashion footwear Brand in Scandinavia, now open in Mohandeseen 15 Jazeerat el Arab, Benefit from our 30% Discount by showing this sms in the shop To stop SMS adds send STOP to 2020 for free" +sms,deliver,"Bianco","","","2010.01.14 11:39","","Leading fashion footwear Brand in Scandinavia, now open in Mohandeseen 15 Jazeerat el Arab, Benefit from our 30% Discount by showing this sms in the shop" +sms,deliver,"+20124641123","","","2010.01.10 10:22","","Tarek enta sa7y?" +sms,deliver,"+20102412751","","","2010.01.10 00:48","","Tarek eh nzam toM ?Hatro7o emta?" +sms,deliver,"+20102090066","","","2010.01.05 22:05","","Hatly pepsi m3ak" +sms,deliver,"+20108554395","","","2009.12.30 13:18","","3azzab@gmail.com" +sms,deliver,"+20127620656","","","2009.12.28 12:53","","Da ragel me3arras aslo" +sms,deliver,"+20102412751","","","2009.12.25 02:29","","L2 msh 7ga ha2OLHA , ASL EL RAGEL B3atly el aCCEPTANCE LETTER WITH FURTHER Details aBT THE PROJECT AND I CNT REALLY UNDerstand w 7asa el tanya a7la! Lol , i just wanteD 2 KNW UR OPINIOn aBT IT 3SHAN AKARAR MAX BY TOm isA" +sms,deliver,"+20102412751","","","2009.12.25 02:26","","Hi tarek , if u cAN GO Online n0w plz do , 3yZA A7'OD R2YAK F 7GA .. Thnk u so much" +sms,deliver,"+20102412751","","","2009.12.24 12:15","","Tarek 1:30 b2a =)" +sms,deliver,"+20106676915","","","2009.12.16 19:08","","Mat3rfsh tgbhaly" +sms,deliver,"+20106676915","","","2009.12.16 19:03","","Hwa nta 3andak cd el office" +sms,deliver,"+20102090084","","","2009.12.14 11:25","","This is a reminder for todays meeting 5.30 in c1" +sms,deliver,"+20102550678","","","2009.12.11 12:17","","Hey tarek , its menna , bos ana babaya karar en lazem aro7 agib el cAR b3D el sala, so let it be 3la 2 kda" +sms,deliver,"+20102412751","","","2009.12.10 22:27","","Tarek 7'aliha at 1 f cilantro isA AND TELL HESHAM =)" +sms,deliver,"+20100046084","","","2009.12.09 15:43","","Ana fadely 30 mins kda fa shof enta" +sms,deliver,"+20102412751","","","2009.12.08 21:46","","Tarek bos , el net 2ata3 fag2A msh 3rfa leh! Knt araBT A7'ALAS EL PNEUMATICS , FA ANA AFASHT B2A , had7'ol anam w aB2A as7a aBL EL GM3A A3MELO WLA 7GA , START KDA PLC , FI LECTURE KAMLA 3N EL PLC , TAKE IT AS A REFERENCE , LW EL NET GEH Abl manam i'll send it 2 u" +sms,deliver,"+20106676915","","","2009.12.07 00:29","","7abeibyyyy :D" +sms,deliver,"+20106676915","","","2009.12.07 00:24","","Wnta tayb yabo el takateik. Kont hafsha5ak law makontsh kalmtny :D. Fakes ba2a el za3al wl gaw el r5is da :D:D TEKY YA TEKY DON'T B SAD (Y)" +sms,deliver,"+20100046084","","","2009.12.07 00:12","","141 585 019 501 11" +sms,deliver,"+20106614819","","","2009.12.06 03:03","","El nour 2ta3 :s beed" +sms,deliver,"+20106650502","","","2009.11.28 21:20","","Happy feast everyone ,, enjoy =)" +sms,deliver,"+20102249990","","","2009.11.27 15:16","","Happy Eid... Hope u enjoy it 2 da max... Have a blast :) mina samir p.s: that's my new number" +sms,deliver,"+20127200682","","","2009.11.27 08:27","","Kol sana wento tayebeen =)" +sms,deliver,"+20101422278","","","2009.11.26 21:14","","Eid Adha Mubarak everyone :-) budu" +sms,deliver,"+20104994713","","","2009.11.25 13:17","","Please send me the WEP of the wi fi of guc and tell me which one to use on black berry Khaled taha elsherbiny" +sms,deliver,"+20104446308","","","2009.11.24 15:36","","Hey all plz dont b late 2day at 7 isa fi quaY .. WAITING 4 U ALL =)" +sms,deliver,"+20106614819","","","2009.11.23 12:30","","Lecture bedan..lw hatamshy 2oli 3ashan no car" +sms,deliver,"+20102412751","","","2009.11.22 14:12","","Tarek bos , shklaha kda fakes el nharda !" +sms,deliver,"+20124641123","","","2009.11.21 21:24","","Ew3a ya tarek te3mel elly 2olt 3aleh =)" +sms,deliver,"+20100046084","","","2009.11.18 15:17","","Ill call u in 10" +sms,deliver,"+20100046084","","","2009.11.18 15:17","","Quiz :s ill call u in" +sms,deliver,"+20102412751","","","2009.11.18 00:18","","Tarek bos , reem msh hato3od tzaker t0m! W asln el w2t daya2 W 3yzin nerga3 aBL EL MATCH, FA BOS FAKES M0ZAKRA TOm b2a" +sms,deliver,"+20106614819","","","2009.11.17 15:24","","Enta msh gy?" +sms,deliver,"+20146068600","","","2009.11.15 08:40","","A5dt mnk 20 gneh w hdhomlk enhrda 3shan r7t gm3a btaxi" +sms,deliver,"+20127200682","","","2009.11.15 03:08","","fe 3'alta fely ba3ato 11-14 fel lcd metwasalen le 37-40 mesh 21-24 w fel pic 13 w 14 homa ely ma3 elclock" +sms,deliver,"+20180742083","","","2009.11.12 16:51","","I will be abit late due our lovely country's traffic" +sms,deliver,"+20101272889","","","2009.11.09 14:46","","Akeed ur own words e3mel searching from different sources" +sms,deliver,"+20102412751","","","2009.11.09 12:28","","Mashy ya si tarek" +sms,deliver,"+20180742083","","","2009.11.08 10:22","","I have the trainning evaluation forms with me today.. Call me to get it Mostafa sheshtawy" +sms,deliver,"+20103895929","","","2009.11.08 09:23","","Hi tarek, its menna , ana msh hagy el gm3a , s7eit kda 7aseit eny msh adra.. Sorry" +sms,deliver,"+20102540550","","","2009.11.05 09:13","","Sa7y kalmny" +sms,deliver,"+20101272889","","","2009.10.27 08:32","","H9" +sms,deliver,"+20123174186","","","2009.10.21 02:12","","Shrif msh gyely fa eshta momkn tgely mt2a5ar shwia 3la 12:30" +sms,deliver,"+20102540550","","","2009.10.20 01:55","","Lama tes7a kalmny" +sms,deliver,"+20102540550","","","2009.10.19 13:25","","Hatmshy emta" +sms,deliver,"+20123354981","","","2009.10.15 10:27","","Where is ur class?" +sms,deliver,"+20146068600","","","2009.10.09 12:35","","Lw htgeb akl gbly m3ak 1 fol bl bed,1 btates" +sms,deliver,"+20103405520","","","2009.10.06 18:58","","If u will meet sherif today or tomorrow give him the iso image of windows" +sms,deliver,"+20182222662","","","2009.10.04 22:25","","Ya teccccc thnxxxxxx we 7elwa gogellion dih lolllll" +sms,deliver,"+20102540550","","","2009.10.03 10:23","","Ana gy el gam3a now mesh haynfa3 agy ba3d el second" +sms,deliver,"+20123354981","","","2009.09.27 02:56","","Ya man call me whn u wake up to c whether we r going to the uni or not 3shan ana delwa2ty metzawel" +sms,deliver,"+20146068600","","","2009.09.08 13:26","","28905190101116" +sms,deliver,"+20100046084","","","2009.09.07 12:54","","Sloveh-4" +sms,deliver,"+20102412751","","","2009.09.07 02:13","","Mabro0k el 3araBEYA YA 3AM =D , gebt eh? Sry 4 the late reply !" +sms,deliver,"+20102412751","","","2009.08.21 19:39","","Kol sana wento tybin =) ramadan karim =)" +sms,deliver,"+20106504570","","","2009.08.21 16:46","","Kol sana w enta tayeb ya tek Happy ramadan;)" +sms,deliver,"+20103405520","","","2009.08.19 10:19","","We will meet today at 8:00 pm isa at my home at koleyet el banat call me if u need a description 4 the way. Waiting 4 u there my brother" +sms,deliver,"+20146068600","","","2009.08.17 21:54","","Ana neseit gzma fi shantet el 3rbeya" +sms,deliver,"+20146068600","","","2009.08.15 02:27","","Abl mtmsh 2oly" +sms,deliver,"+20100046084","","","2009.08.14 05:25","","TarooKa, nemt wala aa??:D" +sms,deliver,"+20123174186","","","2009.08.11 18:03","","Meeting today at 8 pm sharp Cilantro Abbas" +sms,deliver,"+20120897159","","","2009.08.08 15:15","","Yabny im pierre i have questions" +sms,deliver,"+20120897159","","","2009.08.03 10:15","","Yabny rodd ana pierre" +sms,deliver,"+20100046084","","","2009.08.02 20:43","","Law 7ad m3ah flashaya 3andak garab el program keda w tameny wenaby :D" +sms,deliver,"+491639498283","","","2009.07.28 15:57","","Aug 21 isA! Tyb ana olt ymkn yb2ly" +sms,deliver,"+491639498283","","","2009.07.28 14:10","","Ana lama took my certificates bs tl3ly zayoko f mmkn ykonly floos f law 3rft ts2aly plz=)" +sms,deliver,"+491639498283","","","2009.07.28 13:38","","Tarek 3amel a? Howz evth? Ba2olak 3yzin 7'edma=) mmkn men fdlak law enta fel gm3a t7'od certificate wasfi w ts2alena law leena floos w ad a w law mmkn 7ad ya7'odlna el chek w m7tag a? Plz let me knw .Thank u thank u! Rana tawakkol" +sms,deliver,"+20123354981","","","2009.07.28 02:09","","Ya brence 2morow we go together 2 the uni inshaalah call me when u wake up" +sms,deliver,"+20103405520","","","2009.07.26 01:11","","Tomorrow we will meet with the people at 4:00 at the university" +sms,deliver,"+20102412751","","","2009.07.10 02:10","","Ya tarek thnk u awYYy bgd =)" +sms,deliver,"+20104446308","","","2009.07.09 19:51","","LOL .. m-oltlak 7ayb2a za7ma moot =D lef w arg3 w ta3la bkra ;)" +sms,deliver,"+20102412751","","","2009.07.09 01:51","","Tarek =) hw r u? Ana msh d7'la oNLINE TOD, BUT I WANTEd 2 kn0w whether msheit 3la el etaf2na 3alih yest wla l2 ?! =)" +sms,deliver,"+20123366769","","","2009.07.06 08:02","","Lama tes7a zbatly plz el selk ana mosh un plugged bas mosh shayef 7ad fel network wla fe net" +sms,deliver,"+20106676915","","","2009.07.06 06:14","","Lsa darbin 3aza w a :D 7aga t2rf. Matkalmnish lama tshouf el msg :D:D :D" +sms,deliver,"+20101272889","","","2009.07.01 08:54","","El meeting ma3 abousafy haieb2a el sa3a 12 plz come in time" +sms,deliver,"+20105213977","","","2009.06.25 11:19","","Great, thx" +sms,deliver,"+20105213977","","","2009.06.25 11:16","","Hello Tarek, something has come up I'll have to postpone our meeting today, can u make it Sunday, same time? Sorry for the inconvenience. - Fadia Badrawi, DCI" +sms,deliver,"+20123526683","","","2009.06.15 08:26","","La ta3liik :d:d:d" +sms,deliver,"+20102540550","","","2009.06.09 13:20","","Mesh el eval el sa3a 1 20?" +sms,deliver,"+20102540550","","","2009.06.09 13:18","","Ento fen send back by msg 3alashn ana fi el os" +sms,deliver,"+20101326461","","","2009.06.02 11:27","","Tab momken teb3attha 3alashan manelbessh?" +sms,deliver,"+20101326461","","","2009.06.02 11:26","","Wala tarek u sent the DSD form?" +sms,deliver,"+20101272889","","","2009.05.29 08:21","","Call me when u wake up" +sms,deliver,"+20102540550","","","2009.05.27 17:10","","Ana mashy" +sms,deliver,"+20101272889","","","2009.05.22 09:57","","When u wake up call me" +sms,deliver,"+20106614819","","","2009.05.20 20:51","","On da run" +sms,deliver,"+20106676915","","","2009.05.19 00:33","","U r fuckin welcome :D" +sms,deliver,"+20101884293","","","2009.05.19 00:08","","Happy birthday ya tech=)) have a blast!" +sms,deliver,"+20106676915","","","2009.05.19 00:06","","Happy fuckin bd ya takateiko w isA el sana el gaya tkoun ba2it scadawy ad el donya ;)" +sms,deliver,"+20109900966","","","2009.05.18 23:43","","Happy birthday:):).. Yala b2a msh 5sara fik:p.. U only turn 20 once;)" +sms,deliver,"+20102412751","","","2009.05.17 14:47","","Hi tarek , ezayak ? May u plz cALL ME WHEN U C THis msg .. Asl i have n0 credit =s lol =)" +sms,deliver,"+20161056130","","","2009.05.10 12:16","","WOHOO! Mabrok! Am doin an acnt 2dy isA. W hadeelak kman websites tnya zayo=D" +sms,deliver,"+20101422278","","","2009.05.02 13:20","","10 min n i'll call u" +sms,deliver,"+20106676915","","","2009.04.30 10:51","","Kalmny lama tetla3" +sms,deliver,"+20103405520","","","2009.04.27 02:12","","Please bring tomorrow a copy of ur guc id and ur personal id and forward this msg to wasfi" +sms,deliver,"+20103405520","","","2009.04.26 11:47","","When u finish ur exam please pass by" +sms,deliver,"+20103405520","","","2009.04.25 19:34","","Rabena m3ak my brother in all your exams isa shed 7elak and you will do great isa" +sms,deliver,"+20106676915","","","2009.04.19 12:45","","Ya tch i lost 7.2 kilos in 1 week :D :D" +sms,deliver,"+20112365365","","","2009.04.18 16:12","","PRISON BREAK IS OUT YA MAW" +sms,deliver,"+20119654293","","","2009.04.14 16:55","","" +sms,deliver,"+20108168190","","","2009.04.13 22:52","","Yaa tecccc 3amel eh? Plsss get with u 2morow the office w ana haklmk awl lama aro7 el gam3a. Thank u awi ya tec w ma3lsh 3shan ta3btk" +sms,deliver,"+20102540550","","","2009.04.13 16:45","","Ta3ala 3ala el main gate lama te7'als" +sms,deliver,"+20105350209","","","2009.04.13 05:45","","Thnx ya taroka i found it" +sms,deliver,"+20105350209","","","2009.04.13 05:40","","Ab3atli ya taroka el assignment beta3 el os abl matanzl el gam3a..el samo" +sms,deliver,"+20161056130","","","2009.03.31 12:58","","Hatakol pizza?" +sms,deliver,"+20102540550","","","2009.03.29 13:37","","Fakes ha7'odhom men gohar" +sms,deliver,"+20101272889","","","2009.03.29 12:16","","Can u put the os book on the svn" +sms,deliver,"+20123526683","","","2009.03.28 00:58","","Mn 3ss lel tarook..w enta tayeb ya man ..thnxxx :E:E" +sms,deliver,"+20106676915","","","2009.03.26 20:46","","T3ala online" +sms,deliver,"+20102540550","","","2009.03.25 12:42","","Hatly 7ama ma3ak" +sms,deliver,"+20106676915","","","2009.03.24 16:41","","Nawar yabo tch nawar :D" +sms,deliver,"+20106614819","","","2009.03.24 16:24","","Hatli 3sir manga men cilantro" +sms,deliver,"+20123354981","","","2009.03.23 01:53","","Tarook if u can plz bring z ubunto cd" +sms,deliver,"+20127620656","","","2009.03.17 12:07","","Ah" +sms,deliver,"+20161056130","","","2009.03.09 23:42","","Hagy 1st isA. Cal me wn u gt there isA b2a" +sms,deliver,"+20106614819","","","2009.03.07 14:55","","Enta fean?" +sms,deliver,"+20123354981","","","2009.02.27 20:30","","Username pierre.fares email pierre_247@hotmail.com" +sms,deliver,"+20101884293","","","2009.02.23 23:06","","Wana kaman da kan ra2ii" +sms,deliver,"+20106676915","","","2009.02.23 22:58","","Hwa enta kont montazr rad tany ?" +sms,deliver,"+20106676915","","","2009.02.23 22:55","","Tb bel hana wl shefa" +sms,deliver,"+20106676915","","","2009.02.23 22:52","","???" +sms,deliver,"+20106676915","","","2009.02.23 18:56","","Fi a" +sms,deliver,"+20127620656","","","2009.02.16 16:25","","Hatem.el-ghannam FAT00M_12 , these are zeros not Os .. Can u check also the grade and give me a ring .. Shokran 7obbi" +sms,deliver,"+20109958830","","","2009.02.16 00:29","","Hey there, i'll come bokra met2a5ar. if u need any thing call me i'll be at home :D" +sms,deliver,"+20100046084","","","2009.01.22 23:08","","Etwasa ba2a bel salsa ya basha ..... 7ot ma3la2et salsa kaman ya basha hahahahaha :D" +sms,deliver,"+20109958830","","","2009.01.21 14:34","","Thanks" +sms,deliver,"+20100773775","","","2009.01.20 20:33","","Hey Tarek, sorry 4 disturbing but i'll do the report and i want u to send all procedures. aisha‎" +sms,deliver,"+20101272889","","","2009.01.20 08:34","","Call me" +sms,deliver,"+20100773775","","","2009.01.13 08:37","","Hi Tarek, this is Aisha, i'm in the study room, C7." +sms,deliver,"+20101326461","","","2009.01.08 09:56","","Ana gayy fel seka we ma3aya el cd" +sms,deliver,"+20106504570","","","2009.01.03 22:21","","Tek tek thank u awi 4 caring.bgd enta koko awi:)" +sms,deliver,"+20109958830","","","2009.01.01 00:06","","Happy New Year Tarek! may all ur dreams come true." +sms,deliver,"+20102540550","","","2008.12.31 07:32","","Hatly ma3ak el windos wenaby" +sms,deliver,"+20106086929","","","2008.12.23 23:13","","Ana fakes mesh 2ader anzel..ma3lesh ya tarook" +sms,deliver,"+20101326461","","","2008.12.20 22:31","","Wala tarek please dont forget the sources bokra" +sms,deliver,"+20109958830","","","2008.12.19 17:17","","oh really? congrat if u did it gd 4 u tarek, i didn't reach that level yet :p" +sms,deliver,"+20105350209","","","2008.12.18 14:46","","Database nazel ya tarokaa" +sms,deliver,"+20108168190","","","2008.12.08 16:01","","Happy feast for u and ur family.. Ozo" +sms,deliver,"+20161000453","","","2008.12.08 13:41","","Kol sana wenta tyb ya techi we 3id sa3ed" +sms,deliver,"+20122768786","","","2008.12.08 13:18","","Happy 3iiid...koooooool sanaaaa wenta tayeeeb :) Zaklama" +sms,deliver,"+20182222662","","","2008.12.08 12:27","","Loooool" +sms,deliver,"+20160779553","","","2008.12.07 22:01","","Happy feast ya m3alem... enjoy ;)" +sms,deliver,"+20182222662","","","2008.12.07 18:25","","Kol sana wento tayebeen w 3eed sa3eed 3lekom game3an" +sms,deliver,"+20109958830","","","2008.12.07 15:40","","Tarek, 3edak mobarak :) enjoy" +sms,deliver,"+20101884293","","","2008.12.07 14:38","","جعل الله فجر يوم عرفه لكم نور و ظهره سرور و عصره إستبشار و مغربه غفران و جعل لك دعوة لا ترد و وهبك رزق لا يعد و فتح لك باب في الجنة لا يسد. Happy Eid" +sms,deliver,"+20106676915","","","2008.12.05 17:57","","Hat el sb7a m3ak" +sms,deliver,"+20102540550","","","2008.12.01 12:48","","Wala fih quiz lazem teegy" +sms,deliver,"+20109958830","","","2008.11.30 22:55","","Thanks. i'll call u when i arrive uni bokra no prob gd night :)" +sms,deliver,"+20109958830","","","2008.11.30 22:30","","Hey Tarek, sorry 4 sending at this time. just wana ask about the d.b poject, we choosed no 2 right?" +sms,deliver,"+20106614819","","","2008.11.29 12:15","","Hatli wa7ed btates viena wenaby" +sms,deliver,"+20102540550","","","2008.11.20 10:35","","Lama ts7a kalmny" +sms,deliver,"+20106676915","","","2008.11.18 20:19","","Kalm samo" +sms,deliver,"+20102540550","","","2008.11.17 00:35","","Matnsash wenaby" +sms,deliver,"+20102540550","","","2008.11.15 10:29","","El quiz now" +sms,deliver,"+20123366769","","","2008.11.10 00:58","","Eftah elbab law enta wake" +sms,deliver,"+20102540550","","","2008.11.08 22:23","","7'osh online" +sms,deliver,"+20123366769","","","2008.11.08 07:13","","Law wake eftah el m$n" +sms,deliver,"+20102540550","","","2008.11.03 11:16","","Yala nemshy?" +sms,deliver,"+20102540550","","","2008.11.03 11:14","","Aywa" +sms,deliver,"+20102540550","","","2008.10.31 23:41","","Sherifmoharam89 el pass beta3 el site met law le72t" +sms,deliver,"+20100046084","","","2008.10.30 15:01","","Eshta eb2a olaha b2a en el tickets mawgoda" +sms,deliver,"+20100046084","","","2008.10.30 14:58","","Ana m3aya 2 wa7da liha w wa7da l souka na2es wa7da bta3et sa7ebha da .... Enta a nzamak ??" +sms,deliver,"+20100704241","","","2008.10.29 16:24","","6 tickets? Etla3 tyeb" +sms,deliver,"+20100046084","","","2008.10.29 15:06","","Howa nta 3andak 7aga el 5" +sms,deliver,"+20101202017","","","2008.10.28 18:18","","Come directly at the doctor" +sms,deliver,"+20123366769","","","2008.10.24 10:51","","Law sa7y now rennely" +sms,deliver,"+20101884293","","","2008.10.24 00:14","","Thank u ya techo 2wi=) 2b2a ro7 shof saw bokra b2a;)" +sms,deliver,"Vodafone","","","2008.10.21 18:57","","Dial *999*Mob No#: PUK *999*4#: VF Live Activation *999*5#: Roaming Activation" +sms,deliver,"+20106614819","","","2008.10.21 00:47","","Saw 2 ya man 3la mbc 2" +sms,deliver,"+20106614819","","","2008.10.19 15:32","","Fi mkan 3ndak yad?" +sms,deliver,"+20106676915","","","2008.10.18 13:09","","C+ eb3atly el pas wl user ashoflak" +sms,deliver,"+20106676915","","","2008.10.18 13:02","","El co nezel" +sms,deliver,"+20106676915","","","2008.10.17 16:31","","El rgim etnafa5 :D" +sms,deliver,"+20106504570","","","2008.10.14 21:50","","Thanks ya tektek Allah yesalemk;) adaha w edod isa" +sms,deliver,"+20182222662","","","2008.10.04 00:17","","Thnx ya tec w 3o2bal lama tb2a 20 isa. W 2lbak 2swed 2nta lesa faker.lol" +sms,deliver,"+20127777981","","","2008.09.19 22:05","","Hii hw r u ? Hwz everythin? my birthday is tom (20-9) @ 8 pm n casper cafe out area in citystars... u r invited =)" +sms,deliver,"+20106676915","","","2008.09.09 11:05","","Lama ts7a kalmny" +sms,deliver,"+20102540550","","","2008.09.08 18:35","","Kalmny" +sms,deliver,"+20106960034","","","2008.08.25 13:22","","Lw sa7y klmny" +sms,deliver,"+20101884293","","","2008.08.23 22:11","","TechOoOoOoOo! 3aml eh? Wa7shny wallahi.. Rage3 emta mil sa7el? 3awza ashofak b2a" +sms,deliver,"+20106676915","","","2008.08.14 08:33","","Efta7 el kana el 2oula" +sms,deliver,"+20100704241","","","2008.07.31 23:23","","Look, a friend of mine 90% will pick me up so you dont have to come, i will call you if there's any changes ok. Noha" +sms,deliver,"+20100704241","","","2008.07.31 23:16","","Take your time, 27na lesa mwslnash" +sms,deliver,"+467374940501","","","2008.07.29 03:39","","Hi tghazali! Your Jaiku activation code is: 90e7. Please enter this code on the Web now" +sms,deliver,"+447624801423","","","2008.07.28 22:19","","Your device has been verified and is on. Send 'off' at any time to silence. Send 'help' for more." +sms,deliver,"+20106676915","","","2008.07.25 01:53","","Ma3lish shwaya w gai" +sms,deliver,"+17819060003","","","2008.07.22 00:50","","TeleMessage login details: Login: 20106960035 Password: 57855866" +sms,deliver,"MobinilWiFi","","","2008.07.20 07:36","","Activation Code: 130257" +sms,deliver,"MobinilWiFi","","","2008.07.20 07:36","","Activation Code: 135343" +sms,deliver,"+20118869193","","","2008.07.16 14:10","","Game nazel ya vein" +sms,deliver,"+20106676915","","","2008.07.10 11:22","","Msh da el e7na 3awzeino" +sms,deliver,"+20123526683","","","2008.06.30 19:44","","E7na f ciao..Ely 3and koliet el banat" +sms,deliver,"+20106614819","","","2008.06.24 15:35","","C- ya man" +sms,deliver,"+20100046084","","","2008.06.24 15:32","","Shofly el grades pass: 1234-aaa" +sms,deliver,"+20106676915","","","2008.06.24 15:28","","Ana f dars. 5eirrr" +sms,deliver,"+20106676915","","","2008.06.13 19:10","","Law 7'alst mozakra we 3andk wa2t ta3alaly" +sms,deliver,"+20101884293","","","2008.06.11 16:29","","Vielen Dank Herr Tech:)" +sms,deliver,"+20101726624","","","2008.06.04 23:58","","Tarook matensash ta5od el circuit mn gohar 3ashan bokra el eval" +sms,deliver,"+20102540550","","","2008.06.04 02:39","","Fi bokra mat lab quiz wala la" +sms,deliver,"+20106960034","","","2008.06.02 18:03","","Go online ahmed 3wzk" +sms,deliver,"+20100046084","","","2008.05.28 14:57","","Bye Bye ya RPeee =')" +sms,deliver,"+20106676915","","","2008.05.27 02:21","","Perfect :D" +sms,deliver,"+20102540550","","","2008.05.25 11:31","","Ba2olk ya tarek ma3lshy law fi ay 7aga make it to me" +sms,deliver,"+20100046084","","","2008.05.22 13:05","","Efta7 shof grades el rpw :s" +sms,deliver,"+20182222662","","","2008.05.19 09:58","","Happy birthday ya tec w 3o2bal milliooon sana" +sms,deliver,"+20106676915","","","2008.05.19 01:08","","Haby bezy yoyo haby bezy yoyo haby bezy yo tar2 .haby bezy yoyo" +sms,deliver,"+20106504570","","","2008.05.19 00:06","","Kol sana w enta tayeb ya takatek w 3o2bal kter isa ya best tek ever" +sms,deliver,"+20105541210","","","2008.05.19 00:04","","Kol sana wenta tayeb ya Tch ... W 3o2bal 1,000,000 sana keda .. ;)" +sms,deliver,"+20100048666","","","2008.05.19 00:02","","Happy b-day ticko w 3o2bal 10000000000000000000 sana isa hun.bgd ur one of da bst ppl in ma life.luv u sooo much my bst brother ever:)" +sms,deliver,"+20100046084","","","2008.05.18 23:57","","TeChaaAAAaWaaaaaAAaayyY aiwa ba2a ya maaan 19 sana yedba7o el katkoot :D yalla kol sana wenta tayeb w 3o2bal 1000000 sana ya prince isA :D:D" +sms,deliver,"+20127244556","","","2008.05.15 12:44","","Tar2 matnsanish ha!!" +sms,deliver,"+20123526683","","","2008.05.14 14:27","","Mina alaa..10-3184... Ahmed essam 10-2541" +sms,deliver,"+20121275651","","","2008.05.14 14:21","","Eh yabo tar2 ana omar 3amaltly eh fl hwar sa2alt wala eh" +sms,deliver,"+20101726624","","","2008.05.12 11:30","","Tarook momken lw 3reft ta5odli attendance fi el circuits 10-1200 w ana hakalemak 3la 5 kda 3ashan netefe2 3la el game." +sms,deliver,"+20105726318","","","2008.04.29 01:41","","Eh ya ebniiii shayel mobile ashn msh trod 3lih :@" +sms,deliver,"+20167409090","","","2008.04.19 10:44","","Ya tech mesh 7ynf3 2agy ... See u beleil isa" +sms,deliver,"+20106676915","","","2008.04.15 20:06","","E7na f c5" +sms,deliver,"+20101326461","","","2008.04.13 09:19","","Wala we need your help fe 7aga bas we7yat abook" +sms,deliver,"+20106614819","","","2008.03.29 17:36","","Physics lab nezal" +sms,deliver,"+20100046084","","","2008.03.19 14:31","","Howa a el site bta3 el mob fb ? :)" +sms,deliver,"+20106676915","","","2008.01.28 14:54","","T3ala" +sms,deliver,"+20106676915","","","2008.01.12 14:55","","7awel tektebly attendance ya tech 10-2883" +sms,deliver,"+20101661659","","","2007.12.31 15:02","","Wish you a happy new year full of happiness and joy" +sms,deliver,"+20100046084","","","2007.12.30 09:53","","91% ...... Ya m3alem =D" +sms,deliver,"+20100046084","","","2007.12.30 08:36","","Cs nezel !!" +sms,deliver,"+20108168190","","","2007.12.20 13:38","","Happy feast ya gama3a.hope it will be good feast" +sms,deliver,"+20106014977","","","2007.12.19 13:42","","Kol sana w ento tayben:) samia" +sms,deliver,"+20106676915","","","2007.12.09 10:51","","Afta7 el facebook ezay :D" +sms,deliver,"+20106504570","","","2007.11.08 16:17","","Ana gohar kalm 3sam 2olo ya5d nouchy m3ah .kalmo delwa2ty" +sms,deliver,"+20106676915","","","2007.11.05 02:22","","Matkalmneish bokra 3ashan ana gai el talta" +sms,deliver,"Vodafone","","","2007.10.31 18:52","","(3SSF1A) تم شحن:100.00 رصيدكم الان:115.03 (وزيادة 15% علي رصيدك)" +sms,deliver,"+20106676915","","","2007.10.29 13:21","","Enta fein 3ashan el lab bta3y etla3'a wana zhe2t" +sms,deliver,"+20106676915","","","2007.10.27 12:38","","Enta fein" +sms,deliver,"+20106676915","","","2007.10.20 00:29","","El gadwal nezel :p :p (ma3teeeeeeh)" +sms,deliver,"+20129200988","","","2007.10.13 22:35","","kol sana w enta tayeb ya 7obby!" +sms,deliver,"+20106504570","","","2007.10.13 14:35","","Kol sana w enta tayb ya taktok" +sms,deliver,"+20106504570","","","2007.10.08 16:12","","Tek el gpa tl3 2.1 enta 3mlt e.h? M3lsh kont nyma" +sms,deliver,"+20102221110","","","2007.10.05 23:37","","Gebt el 3arabeyaaaaaa...:)" +sms,deliver,"+20106614819","","","2007.09.27 13:05","","Tarook..ana salet el dohr w hanam nw ab2a sa7iny 3ala 5 b nafs el tari2a bs el marady el 3asr w ab2a at2aked eny se7it isa:)" +sms,deliver,"+20101413071","","","2007.09.21 01:00","","2b2a 2ablny law shoftlha dera3 tany..H" +sms,deliver,"+20106504570","","","2007.09.14 18:50","","Lol walahi lesa kont hb3tlk msg a2olk .mercie ya tek i'll call u kman shwya" +sms,deliver,"+20129200988","","","2007.09.12 14:58","","wa7awy ya wa7awy. Ramadan karim" +sms,deliver,"+20123366769","","","2007.09.11 07:40","","Bta3et link zaharet 2day el sob7 w 3amalt lakad komt belsadad w2alle el net hayege kaman 2 hours wel mosta7akat 752 geneh" +sms,deliver,"+20122310776","","","2007.09.02 14:49","","3mlt 7lw 7mdulilah" +sms,deliver,"+20122310776","","","2007.09.02 08:39","","Merci awe awe bgd howa 1 w nos isA.ed3ili ya tare2 bgd khyfa awe awe aweeee" +sms,deliver,"+20122310776","","","2007.08.20 11:54","","Thank u awe bgd 4 coming yesterday" +sms,deliver,"+20122310776","","","2007.07.24 14:54","","E7em...isA isA!LOL! um on my way 2 uni asln" +sms,deliver,"+20122310776","","","2007.07.24 14:45","","MABROOOOOOKKKKK!!! Bgd enta msh motakhayal ana mabsootalak ezay! Keep it up ya tare2 w 3o2bal kol sana isA ya rab =) yalla enzl entalek w celebrate!" +sms,deliver,"+20161000453","","","2007.07.11 20:20","","5osh 3ala el net" +sms,deliver,"+20106676915","","","2007.07.05 11:49","","3ashan ana ensan fa2ri verb habe msh zay el ba2y byeb2a hast wl tany tele3 3aks mana 3amalto :F :F" +sms,deliver,"+20122502589","","","2007.02.01 09:10","","Kol 3am w enta b 1000 7'er w kol sna ben3ad 3lekm." \ No newline at end of file diff --git a/stacked.ui b/stacked.ui new file mode 100644 index 0000000..1512326 --- /dev/null +++ b/stacked.ui @@ -0,0 +1,188 @@ + + + MainWindow + + + + 0 + 0 + 800 + 400 + + + + MainWindow + + + + + + 0 + 0 + 800 + 400 + + + + + + + 0 + 0 + 801 + 361 + + + + + + + Inbox + + + + + + + Sent + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + 0 + 0 + 800 + 400 + + + + + + + + + 0 + 0 + 801 + 371 + + + + + + + + + msg_from + + + + + + + msg_date + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + 0 + 0 + + + + <!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:'Arial'; 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;">msg_text</p></body></html> + + + + + + + + + Delete + + + + + + + Back + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + + 0 + 0 + 800 + 25 + + + + + + + + diff --git a/stacked2.ui b/stacked2.ui new file mode 100644 index 0000000..b3b8ae7 --- /dev/null +++ b/stacked2.ui @@ -0,0 +1,217 @@ + + + MainWindow + + + + 0 + 0 + 800 + 400 + + + + Retro Conversations + + + + + + + 0 + 0 + 800 + 400 + + + + + QLayout::SetMaximumSize + + + + + + + QFrame::Box + + + QFrame::Raised + + + 5 + + + 0 + + + xxxxxx + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + 5 + + + 0 + + + + + + 26 + + + + color:rgb(106, 106, 106) + + + TextLabel + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + QFrame::StyledPanel + + + TextLabel + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + background:rgb(50, 50, 50); + + + QFrame::Plain + + + 5 + + + Qt::Horizontal + + + + + + + margin-top:5px + + + TextLabel + + + true + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + Delete + + + + + + + Back + + + + + + + + + + + + + 0 + 0 + 800 + 25 + + + + + + + Option 1 + + + + + Option 2 + + + + + blabla2 + + + + + + diff --git a/test/GUI/__init__.py b/test/GUI/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/test/GUI/__init__.pyc b/test/GUI/__init__.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9637d4a7e88cb21ddfccbb206128776c8527e74a GIT binary patch literal 147 zcmcckiI>Y~OOtmp0~9a*#a3E{| literal 0 HcmV?d00001 diff --git a/test/GUI/inbox.ui b/test/GUI/inbox.ui new file mode 100644 index 0000000..46ebfbe --- /dev/null +++ b/test/GUI/inbox.ui @@ -0,0 +1,42 @@ + + + InboxWindow + + + + 0 + 0 + 800 + 400 + + + + MainWindow + + + + + + 0 + 0 + 800 + 400 + + + + + + + + 0 + 0 + 800 + 25 + + + + + + + + diff --git a/test/GUI/inbox_window.py b/test/GUI/inbox_window.py new file mode 100644 index 0000000..2b74a81 --- /dev/null +++ b/test/GUI/inbox_window.py @@ -0,0 +1,38 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'inbox.ui' +# +# Created: Mon Feb 22 18:29:55 2010 +# by: PyQt4 UI code generator 4.6 +# +# WARNING! All changes made in this file will be lost! + +from PySide import QtCore, QtGui + +class Ui_InboxWindow(QtGui.QMainWindow): + def __init__(self, parent): + QtGui.QMainWindow.__init__(self, parent) + self.setObjectName("InboxWindow") + self.resize(800, 400) + self.centralwidget = QtGui.QWidget(self) + self.centralwidget.setObjectName("centralwidget") + self.listView = QtGui.QListView(self.centralwidget) + self.listView.setGeometry(QtCore.QRect(0, 0, 800, 400)) + self.listView.setObjectName("listView") + self.setCentralWidget(self.centralwidget) + self.menubar = QtGui.QMenuBar(self) + self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 25)) + self.menubar.setObjectName("menubar") + self.setMenuBar(self.menubar) + self.statusbar = QtGui.QStatusBar(self) + self.statusbar.setObjectName("statusbar") + self.setStatusBar(self.statusbar) + + self.retranslateUi() + QtCore.QMetaObject.connectSlotsByName(self) + + self.setAttribute(QtCore.Qt.WA_Maemo5StackedWindow) + + def retranslateUi(self): + self.setWindowTitle(QtGui.QApplication.translate("InboxWindow", "MainWindow", None, QtGui.QApplication.UnicodeUTF8)) + diff --git a/test/GUI/inbox_window.pyc b/test/GUI/inbox_window.pyc new file mode 100644 index 0000000000000000000000000000000000000000..04d483c181800c29aac3f62c4c6990d133e95032 GIT binary patch literal 1724 zcmcIk&2G~`5S~raG;L`qEiHeS3L%sOA_s)T0ipgNDg+JKAyo8Y9D55(T|2TTlp?qg z9)RcJEqE1P0KOT!2?vf~dB?juGvECC$Ir$2&)>g1iKu!S_-!WVYygj(R9p=7t9`dGQ)tw%_p2i{~5+$E2MJBiEI%Xmd(;^Ak_FWaJ<**Eg zSD+GQX$nVrNyf$YsYX~KZ87I=Fk;Ix03P!?KKon2UTBZAyRZ`-*|^MEIf#;i!X}5B zqG6aLrZ%ofNwJAt=Pk0(VX%%m3bXOhzPCx|d7eprH+p-$4%>n|gCy+i_8)hg%x`d_ z1AKdU>Pv#9_{B{SGOK3MESnXqHFF(Q_Ge$5YV%l;6j|0}gm2*>J&C006qkc5<2t#S zIhzJ;NAw+aeW9B9X|J@kIP$MS4a-!#aGcn(u_TY))^M1(C}fwV+8&d7u%xS-rB=(* zPhFJ7w*TVMy|y^(UjzBq*;@nV4Xi>6N~SFyRPCOkwbAa + + MainWindow + + + + 0 + 0 + 800 + 400 + + + + MainWindow + + + + + + 0 + 0 + 801 + 371 + + + + + + + Inbox + + + + + + + Sent + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + 0 + 0 + 800 + 25 + + + + + + + + diff --git a/test/GUI/main_window.py b/test/GUI/main_window.py new file mode 100644 index 0000000..b23bd7b --- /dev/null +++ b/test/GUI/main_window.py @@ -0,0 +1,43 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'main.ui' +# +# Created: Mon Feb 22 18:09:04 2010 +# by: PyQt4 UI code generator 4.6 +# +# WARNING! All changes made in this file will be lost! + +from PySide import QtCore, QtGui + +class Ui_MainWindow(QtGui.QMainWindow): + + def __init__(self): + QtGui.QMainWindow.__init__(self) + self.setObjectName("MainWindow") + self.resize(800, 400) + self.centralwidget = QtGui.QWidget(self) + self.centralwidget.setObjectName("centralwidget") + self.verticalLayoutWidget = QtGui.QWidget(self.centralwidget) + self.verticalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 800, 400)) + self.verticalLayoutWidget.setObjectName("verticalLayoutWidget") + self.verticalLayout = QtGui.QVBoxLayout(self.verticalLayoutWidget) + self.verticalLayout.setObjectName("verticalLayout") + self.inbox_button = QtGui.QPushButton(self.verticalLayoutWidget) + + + self.inbox_button.setObjectName("inbox_button") + self.verticalLayout.addWidget(self.inbox_button) + self.sent_button = QtGui.QPushButton(self.verticalLayoutWidget) + self.sent_button.setObjectName("sent_button") + self.verticalLayout.addWidget(self.sent_button) + + + self.spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + + + self.verticalLayout.addItem(self.spacerItem) + + #QtCore.QMetaObject.connectSlotsByName(self) + + + #self.setAttribute(QtCore.Qt.WA_Maemo5StackedWindow) diff --git a/test/GUI/main_window.pyc b/test/GUI/main_window.pyc new file mode 100644 index 0000000000000000000000000000000000000000..367319d36cd7deba74f4e0fde48386f858089058 GIT binary patch literal 1408 zcmcIk&2G~`5FR^e(!Z4SmurQP$cY@dB81was)CfnR;lR4a_nup)Uhjj(l&?_g*(s0 z8}KT;0DLoc6G5+Fc_%ZwGv9nWGtQ5nt;Mh3KfjKsdg}OniB&voDXx>>nM0iYg{R{};|9clceC8EoD6t>Y`F#P$OgU8 zrpGpov+HSk2PZpN#VUj$$qEukfyAEQk>f~&EP>v|Dl9BUR)?%hpFqbU2R~p4_IC#8 zxkC3AHxTE!$`g)3Lv-8Fh`L5hJ+KP|acZhllk7b40@+21=kzU6%P@g~2NG+TCR(cE zDwt(8m({5`&DHwTX+_Nyb()`E0YML{1G$xO{41`l$8C*UxF6S^=3Av07g*A=t&v^7 zQ#RCqvA!q%w+cl8+CVi0JMkeJvOs;KwX4qnbcmv|f zl^57bBFk%qsz zxeU|Tre|9AViqU~fGr^UZLsh!OmZs4Ar-|QwC*`>(d95V7u{ZHM%nhBxiU$&pJ!5$ zZNKMt*%aIzCSj@UA02c@_&$Sc{Xm~yPCRM3bgOs_K~CFgVXa|pI*(LBtF@hV*pRg+ zwGM`Ysz#(JIvODuK`_eVaRO5zXH@?&U-|!$Q7S}fxQF`Jq>b-Sd>b2WsSb}PJ@Ulu Sf05BDJTLG4LW-cIw%p(3KPYkl literal 0 HcmV?d00001 diff --git a/test/GUI/main_window.py~ b/test/GUI/main_window.py~ new file mode 100644 index 0000000..4bb1dc2 --- /dev/null +++ b/test/GUI/main_window.py~ @@ -0,0 +1,43 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'main.ui' +# +# Created: Mon Feb 22 18:09:04 2010 +# by: PyQt4 UI code generator 4.6 +# +# WARNING! All changes made in this file will be lost! + +from PySide import QtCore, QtGui + +class Ui_MainWindow(QtGui.QMainWindow): + + def __init__(self): + QtGui.QMainWindow.__init__(self) + self.setObjectName("MainWindow") + self.resize(800, 400) + self.centralwidget = QtGui.QWidget(self) + self.centralwidget.setObjectName("centralwidget") + self.verticalLayoutWidget = QtGui.QWidget(self.centralwidget) + self.verticalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 800, 400)) + self.verticalLayoutWidget.setObjectName("verticalLayoutWidget") + self.verticalLayout = QtGui.QVBoxLayout(self.verticalLayoutWidget) + self.verticalLayout.setObjectName("verticalLayout") + self.inbox_button = QtGui.QPushButton(self.verticalLayoutWidget) + + + self.inbox_button.setObjectName("inbox_button") + self.verticalLayout.addWidget(self.inbox_button) + self.sent_button = QtGui.QPushButton(self.verticalLayoutWidget) + self.sent_button.setObjectName("sent_button") + self.verticalLayout.addWidget(self.sent_button) + + + spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + + + self.verticalLayout.addItem(spacerItem) + + #QtCore.QMetaObject.connectSlotsByName(self) + + + #self.setAttribute(QtCore.Qt.WA_Maemo5StackedWindow) diff --git a/test/main.py b/test/main.py new file mode 100644 index 0000000..5f9912b --- /dev/null +++ b/test/main.py @@ -0,0 +1,21 @@ +import sys +from PySide.QtCore import * +from PySide.QtGui import * +#from csv_service import csvServ +#from sent_model import * +#from windows import * +from GUI.main_window import * +from GUI.inbox_window import * + +if __name__ == '__main__': + app = QApplication(sys.argv) + + mainWindow=Ui_MainWindow() + + + mainWindow.show() + sys.exit(app.exec_()) + + + + diff --git a/test/main.py~ b/test/main.py~ new file mode 100644 index 0000000..389baed --- /dev/null +++ b/test/main.py~ @@ -0,0 +1,21 @@ +import sys +from PySide.QtCore import * +from PySide.QtGui import * +#from csv_service import csvServ +#from sent_model import * +#from windows import * +from GUI.main_window import * +from GUI.inbox_window import * + +if __name__ == '__main__': + app = QApplication(sys.argv) + + mainWindow=Ui_InboxWindow() + + + mainWindow.show() + sys.exit(app.exec_()) + + + + diff --git a/testother.py b/testother.py new file mode 100644 index 0000000..7c0f766 --- /dev/null +++ b/testother.py @@ -0,0 +1,48 @@ +import sys +from PyQt4.QtCore import * +from PyQt4.QtGui import * + +#################################################################### +def main(): + app = QApplication(sys.argv) + w = MyWindow() + w.show() + sys.exit(app.exec_()) + +#################################################################### +class MyWindow(QWidget): + def __init__(self, *args): + QWidget.__init__(self, *args) + + # create table + list_data = ["Tarek","Ehab","Galal"] + lm = MyListModel(list_data, self) + lv = QListView() + lv.setViewMode(QListView.IconMode) + lv.setModel(lm) + + # layout + layout = QVBoxLayout() + layout.addWidget(lv) + self.setLayout(layout) + +#################################################################### +class MyListModel(QAbstractListModel): + def __init__(self, datain, parent=None, *args): + """ datain: a list where each item is a row + """ + QAbstractListModel.__init__(self, parent, *args) + self.listdata = datain + + def rowCount(self, parent=QModelIndex()): + return len(self.listdata) + + def data(self, index, role): + if index.isValid() and role == Qt.DisplayRole: + return QVariant(self.listdata[index.row()]) + else: + return QVariant() + +#################################################################### +if __name__ == "__main__": + main() diff --git a/testother2.py b/testother2.py new file mode 100644 index 0000000..863bea6 --- /dev/null +++ b/testother2.py @@ -0,0 +1,124 @@ +#Written by Robin Burchell +# No licence specified or required, but please give credit where it's due, and please let me know if this helped you. +# Feel free to contact with corrections or suggestions. +# +# We're using PySide, Nokia's official LGPL bindings. +# You can however easily use PyQt (Riverside Computing's GPL bindings) by commenting these and fixing the appropriate imports. +#from PySide.QtCore import * +#from PySide.QtGui import * +from PyQt4 import * +from PyQt4.QtCore import * +from PyQt4.QtGui import * +import sys + +# This is our model. It will maintain, modify, and present data to our view(s). +# As this is read-only, it's pretty straightforward, but it can get pretty complex. +# This is something that Qt Development Frameworks/Nokia are aware of and working on, in terms of +# better documentation, as well as a better implementation of all this, but both of those aren't +# really within the scope of this tutorial. ;) +# +# For more information on list models, take a look at: +# http://doc.trolltech.com/4.6/qabstractitemmodel.html +# but do bear in mind there are other models (like tables) available, depending on your data needs. +# Again, beyond the scope of this tutorial for now. :) +class SimpleListModel(QAbstractListModel): + def __init__(self, mlist): + QAbstractListModel.__init__(self) + + # Cache the passed data list as a class member. + self._items = mlist + + # We need to tell the view how many rows we have present in our data. + # For us, at least, it's fairly straightforward, as we have a python list of data, + # so we can just return the length of that list. + def rowCount(self, parent = QModelIndex()): + return len(self._items) + + # Here, it's a little more complex. + # data() is where the view asks us for all sorts of information about our data: + # this can be purely informational (the data itself), as well as all sorts of 'extras' + # such as how the data should be presented. + # + # For the sake of keeping it simple, I'm only going to show you the data, and one presentational + # aspect. + # + # For more information on what kind of data the views can ask for, take a look at: + # http://doc.trolltech.com/4.6/qabstractitemmodel.html#data + # + # Oh, and just to clarify: when it says 'invalid QVariant', it means a null QVariant. + # i.e. QVariant(). + # + # 'index' is of type QModelIndex, which actually has a whole host of stuff, but we + # only really care about the row number for the sake of this tutorial. + # For more information, see: + # http://doc.trolltech.com/4.6/qmodelindex.html + def data(self, index, role = Qt.DisplayRole): + if role == Qt.DisplayRole: + # The view is asking for the actual data, so, just return the item it's asking for. + return QVariant(self._items[index.row()]) + elif role == Qt.BackgroundRole: + # Here, it's asking for some background decoration. + # Let's mix it up a bit: mod the row number to get even or odd, and return different + # colours depending. + # (you can, and should, more easily do this using this: + # http://doc.trolltech.com/4.6/qabstractitemview.html#alternatingRowColors-prop + # but I deliberately chose to show that you can put your own logic/processing here.) + # + # Exercise for the reader: make it print different colours for each row. + # Implementation is up to you. + if index.row() % 2 == 0: + return QVariant(QColor(Qt.gray)) + else: + return QVariant(QColor(Qt.lightGray)) + else: + # We don't care about anything else, so make sure to return an empty QVariant. + return QVariant() + +# This widget is our view of the readonly list. +# Obviously, in a real application, this will be more complex, with signals/etc usage, but +# for the scope of this tutorial, let's keep it simple, as always. +# +# For more information, see: +# http://doc.trolltech.com/4.6/qlistview.html +class SimpleListView(QListView): + def __init__(self, parent = None): + QListView.__init__(self, parent) + +# Our main application window. +# You should be used to this from previous tutorials. +class MyMainWindow(QWidget): + def __init__(self): + QWidget.__init__(self, None) + + # main section of the window + vbox = QVBoxLayout() + + # create a data source: + m = SimpleListModel(["test", "tes1t", "t3est", "t5est", "t3est"]) + + # let's add two views of the same data source we just created: + v = SimpleListView() + v.setModel(m) + vbox.addWidget(v) + + # second view.. + v = SimpleListView() + v.setModel(m) + vbox.addWidget(v) + + # bottom section of the window + hbox = QHBoxLayout() + + # add bottom to main window layout + vbox.addLayout(hbox) + + # set layout on the window + self.setLayout(vbox) + +# set things up, and run it. :) +if __name__ == '__main__': + app = QApplication(sys.argv) + w = MyMainWindow() + w.show() + app.exec_() + sys.exit() diff --git a/windows.py b/windows.py new file mode 100644 index 0000000..b6681c8 --- /dev/null +++ b/windows.py @@ -0,0 +1,203 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'stacked2.ui' +# +# Created: Mon Feb 22 15:27:51 2010 +# by: PyQt4 UI code generator 4.6 +# +# WARNING! All changes made in this file will be lost! + +from PyQt4 import QtCore, QtGui + +class Ui_MainWindow(object): + def setupUi(self, MainWindow): + MainWindow.setObjectName("MainWindow") + MainWindow.resize(800, 425) + self.centralwidget = QtGui.QWidget(MainWindow) + self.centralwidget.setObjectName("centralwidget") + self.stackedWidget = QtGui.QStackedWidget(self.centralwidget) + self.stackedWidget.setGeometry(QtCore.QRect(0, 0, 800, 425)) + self.stackedWidget.setObjectName("stackedWidget") + self.page = QtGui.QWidget() + self.page.setObjectName("page") + self.verticalLayoutWidget = QtGui.QWidget(self.page) + self.verticalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 800, 425)) + self.verticalLayoutWidget.setObjectName("verticalLayoutWidget") + self.verticalLayout = QtGui.QVBoxLayout(self.verticalLayoutWidget) + self.verticalLayout.setObjectName("verticalLayout") + self.inboxButton = QtGui.QPushButton(self.verticalLayoutWidget) + self.inboxButton.setObjectName("inboxButton") + self.verticalLayout.addWidget(self.inboxButton) + self.sentButton = QtGui.QPushButton(self.verticalLayoutWidget) + self.sentButton.setObjectName("sentButton") + self.verticalLayout.addWidget(self.sentButton) + spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.verticalLayout.addItem(spacerItem) + self.stackedWidget.addWidget(self.page) + self.inboxMessages = QtGui.QWidget() + self.inboxMessages.setObjectName("inboxMessages") + self.listView = QtGui.QListWidget(self.inboxMessages) + self.listView.setGeometry(QtCore.QRect(0, 0, 800, 425)) + self.listView.setObjectName("listView") + self.stackedWidget.addWidget(self.inboxMessages) + self.page_2 = QtGui.QWidget() + self.page_2.setObjectName("page_2") + self.verticalLayoutWidget_2 = QtGui.QWidget(self.page_2) + self.verticalLayoutWidget_2.setGeometry(QtCore.QRect(0, 0, 800, 425)) + self.verticalLayoutWidget_2.setObjectName("verticalLayoutWidget_2") + self.verticalLayout_2 = QtGui.QVBoxLayout(self.verticalLayoutWidget_2) + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.horizontalLayout_2 = QtGui.QHBoxLayout() + self.horizontalLayout_2.setObjectName("horizontalLayout_2") + self.msg_from = QtGui.QLabel(self.verticalLayoutWidget_2) + self.msg_from.setObjectName("msg_from") + self.horizontalLayout_2.addWidget(self.msg_from) + self.line_2 = QtGui.QFrame(self.verticalLayoutWidget_2) + self.line_2.setFrameShape(QtGui.QFrame.VLine) + self.line_2.setFrameShadow(QtGui.QFrame.Sunken) + self.line_2.setObjectName("line_2") + self.horizontalLayout_2.addWidget(self.line_2) + spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) + self.horizontalLayout_2.addItem(spacerItem1) + self.msg_date = QtGui.QLabel(self.verticalLayoutWidget_2) + self.msg_date.setObjectName("msg_date") + self.horizontalLayout_2.addWidget(self.msg_date) + self.verticalLayout_2.addLayout(self.horizontalLayout_2) + self.line = QtGui.QFrame(self.verticalLayoutWidget_2) + self.line.setFrameShape(QtGui.QFrame.HLine) + self.line.setFrameShadow(QtGui.QFrame.Sunken) + self.line.setObjectName("line") + self.verticalLayout_2.addWidget(self.line) + self.msg_text = QtGui.QTextBrowser(self.verticalLayoutWidget_2) + sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.msg_text.sizePolicy().hasHeightForWidth()) + self.msg_text.setSizePolicy(sizePolicy) + self.msg_text.setObjectName("msg_text") + self.verticalLayout_2.addWidget(self.msg_text) + spacerItem2 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.verticalLayout_2.addItem(spacerItem2) + self.horizontalLayout = QtGui.QHBoxLayout() + self.horizontalLayout.setObjectName("horizontalLayout") + self.msg_delete = QtGui.QPushButton(self.verticalLayoutWidget_2) + self.msg_delete.setObjectName("msg_delete") + self.horizontalLayout.addWidget(self.msg_delete) + self.msg_back = QtGui.QPushButton(self.verticalLayoutWidget_2) + self.msg_back.setObjectName("msg_back") + self.horizontalLayout.addWidget(self.msg_back) + self.verticalLayout_2.addLayout(self.horizontalLayout) + self.stackedWidget.addWidget(self.page_2) + self.sentPage = QtGui.QWidget() + self.sentPage.setObjectName("sentPage") + self.sentView = QtGui.QListView(self.sentPage) + self.sentView.setGeometry(QtCore.QRect(0, 0, 800, 425)) + self.sentView.setObjectName("sentView") + self.sentView.setProperty("FingerScrollable", True) + self.stackedWidget.addWidget(self.sentPage) + self.sentMessageView = QtGui.QWidget() + self.sentMessageView.setObjectName("sentMessageView") + self.verticalLayoutWidget_3 = QtGui.QWidget(self.sentMessageView) + self.verticalLayoutWidget_3.setGeometry(QtCore.QRect(0, 0, 800, 425)) + self.verticalLayoutWidget_3.setObjectName("verticalLayoutWidget_3") + self.verticalLayout_3 = QtGui.QVBoxLayout(self.verticalLayoutWidget_3) + self.verticalLayout_3.setSizeConstraint(QtGui.QLayout.SetMaximumSize) + self.verticalLayout_3.setObjectName("verticalLayout_3") + self.horizontalLayout_3 = QtGui.QHBoxLayout() + self.horizontalLayout_3.setObjectName("horizontalLayout_3") + self.frame = QtGui.QLabel(self.verticalLayoutWidget_3) + self.frame.setFrameShape(QtGui.QFrame.Box) + self.frame.setFrameShadow(QtGui.QFrame.Raised) + self.frame.setLineWidth(5) + self.frame.setMidLineWidth(0) + self.frame.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) + self.frame.setObjectName("frame") + self.horizontalLayout_3.addWidget(self.frame) + self.verticalLayout_4 = QtGui.QVBoxLayout() + self.verticalLayout_4.setContentsMargins(5, -1, 0, -1) + self.verticalLayout_4.setObjectName("verticalLayout_4") + self.sent_msg_to = QtGui.QLabel(self.verticalLayoutWidget_3) + font = QtGui.QFont() + font.setPointSize(26) + self.sent_msg_to.setFont(font) + self.sent_msg_to.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) + self.sent_msg_to.setObjectName("sent_msg_to") + self.verticalLayout_4.addWidget(self.sent_msg_to) + self.sent_msg_date = QtGui.QLabel(self.verticalLayoutWidget_3) + self.sent_msg_date.setFrameShape(QtGui.QFrame.StyledPanel) + self.sent_msg_date.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) + self.sent_msg_date.setObjectName("sent_msg_date") + self.verticalLayout_4.addWidget(self.sent_msg_date) + spacerItem3 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.verticalLayout_4.addItem(spacerItem3) + self.horizontalLayout_3.addLayout(self.verticalLayout_4) + spacerItem4 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) + self.horizontalLayout_3.addItem(spacerItem4) + self.verticalLayout_3.addLayout(self.horizontalLayout_3) + self.line_3 = QtGui.QFrame(self.verticalLayoutWidget_3) + self.line_3.setFrameShadow(QtGui.QFrame.Plain) + self.line_3.setLineWidth(5) + self.line_3.setFrameShape(QtGui.QFrame.HLine) + self.line_3.setFrameShadow(QtGui.QFrame.Sunken) + self.line_3.setObjectName("line_3") + self.verticalLayout_3.addWidget(self.line_3) + self.sent_msg_text = QtGui.QLabel(self.verticalLayoutWidget_3) + self.sent_msg_text.setWordWrap(True) + self.sent_msg_text.setObjectName("sent_msg_text") + self.verticalLayout_3.addWidget(self.sent_msg_text) + spacerItem5 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.verticalLayout_3.addItem(spacerItem5) + self.horizontalLayout_4 = QtGui.QHBoxLayout() + self.horizontalLayout_4.setObjectName("horizontalLayout_4") + self.sent_msg_delete = QtGui.QPushButton(self.verticalLayoutWidget_3) + self.sent_msg_delete.setObjectName("sent_msg_delete") + self.horizontalLayout_4.addWidget(self.sent_msg_delete) + self.sent_msg_back = QtGui.QPushButton(self.verticalLayoutWidget_3) + self.sent_msg_back.setObjectName("sent_msg_back") + self.horizontalLayout_4.addWidget(self.sent_msg_back) + self.verticalLayout_3.addLayout(self.horizontalLayout_4) + self.stackedWidget.addWidget(self.sentMessageView) + MainWindow.setCentralWidget(self.centralwidget) + self.menubar = QtGui.QMenuBar(MainWindow) + self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 25)) + self.menubar.setObjectName("menubar") + MainWindow.setMenuBar(self.menubar) + self.statusbar = QtGui.QStatusBar(MainWindow) + self.statusbar.setObjectName("statusbar") + MainWindow.setStatusBar(self.statusbar) + self.actionOption_1 = QtGui.QAction(MainWindow) + self.actionOption_1.setObjectName("actionOption_1") + self.actionOption_2 = QtGui.QAction(MainWindow) + self.actionOption_2.setObjectName("actionOption_2") + self.actionBlabla2 = QtGui.QAction(MainWindow) + self.actionBlabla2.setObjectName("actionBlabla2") + + self.retranslateUi(MainWindow) + QtCore.QMetaObject.connectSlotsByName(MainWindow) + + def retranslateUi(self, MainWindow): + MainWindow.setWindowTitle(QtGui.QApplication.translate("MainWindow", "Retro Conversations", None, QtGui.QApplication.UnicodeUTF8)) + self.inboxButton.setText(QtGui.QApplication.translate("MainWindow", "Inbox", None, QtGui.QApplication.UnicodeUTF8)) + self.sentButton.setText(QtGui.QApplication.translate("MainWindow", "Sent", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_from.setText(QtGui.QApplication.translate("MainWindow", "msg_from", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_date.setText(QtGui.QApplication.translate("MainWindow", "msg_date", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_text.setHtml(QtGui.QApplication.translate("MainWindow", "\n" +"\n" +"

msg_text

", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_delete.setText(QtGui.QApplication.translate("MainWindow", "Delete", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_back.setText(QtGui.QApplication.translate("MainWindow", "Back", None, QtGui.QApplication.UnicodeUTF8)) + self.frame.setText(QtGui.QApplication.translate("MainWindow", "xxxxxx", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_msg_to.setStyleSheet(QtGui.QApplication.translate("MainWindow", "color:rgb(106, 106, 106)", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_msg_to.setText(QtGui.QApplication.translate("MainWindow", "TextLabel", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_msg_date.setText(QtGui.QApplication.translate("MainWindow", "TextLabel", None, QtGui.QApplication.UnicodeUTF8)) + self.line_3.setStyleSheet(QtGui.QApplication.translate("MainWindow", "background:rgb(50, 50, 50);", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_msg_text.setStyleSheet(QtGui.QApplication.translate("MainWindow", "margin-top:5px", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_msg_text.setText(QtGui.QApplication.translate("MainWindow", "TextLabel", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_msg_delete.setText(QtGui.QApplication.translate("MainWindow", "Delete", None, QtGui.QApplication.UnicodeUTF8)) + self.sent_msg_back.setText(QtGui.QApplication.translate("MainWindow", "Back", None, QtGui.QApplication.UnicodeUTF8)) + self.actionOption_1.setText(QtGui.QApplication.translate("MainWindow", "Option 1", None, QtGui.QApplication.UnicodeUTF8)) + self.actionOption_2.setText(QtGui.QApplication.translate("MainWindow", "Option 2", None, QtGui.QApplication.UnicodeUTF8)) + self.actionBlabla2.setText(QtGui.QApplication.translate("MainWindow", "blabla2", None, QtGui.QApplication.UnicodeUTF8)) + diff --git a/windows.py.bak b/windows.py.bak new file mode 100644 index 0000000..0e88d3d --- /dev/null +++ b/windows.py.bak @@ -0,0 +1,110 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'stacked2.ui' +# +# Created: Mon Feb 15 02:28:40 2010 +# by: PyQt4 UI code generator 4.6 +# +# WARNING! All changes made in this file will be lost! + +from PyQt4 import QtCore, QtGui + +class Ui_MainWindow(object): + def setupUi(self, MainWindow): + MainWindow.setObjectName("MainWindow") + MainWindow.resize(800, 400) + self.centralwidget = QtGui.QWidget(MainWindow) + self.centralwidget.setObjectName("centralwidget") + self.stackedWidget = QtGui.QStackedWidget(self.centralwidget) + self.stackedWidget.setGeometry(QtCore.QRect(0, 0, 800, 400)) + self.stackedWidget.setObjectName("stackedWidget") + self.page = QtGui.QWidget() + self.page.setObjectName("page") + self.verticalLayoutWidget = QtGui.QWidget(self.page) + self.verticalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 800,400)) + self.verticalLayoutWidget.setObjectName("verticalLayoutWidget") + self.verticalLayout = QtGui.QVBoxLayout(self.verticalLayoutWidget) + self.verticalLayout.setObjectName("verticalLayout") + self.inboxButton = QtGui.QPushButton(self.verticalLayoutWidget) + self.inboxButton.setObjectName("inboxButton") + self.verticalLayout.addWidget(self.inboxButton) + self.pushButton_2 = QtGui.QPushButton(self.verticalLayoutWidget) + self.pushButton_2.setObjectName("pushButton_2") + self.verticalLayout.addWidget(self.pushButton_2) + spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.verticalLayout.addItem(spacerItem) + self.stackedWidget.addWidget(self.page) + self.inboxMessages = QtGui.QWidget() + self.inboxMessages.setObjectName("inboxMessages") + self.listView = QtGui.QListWidget(self.inboxMessages) + self.listView.setGeometry(QtCore.QRect(0, 0, 800, 400)) + self.listView.setObjectName("listView") + self.stackedWidget.addWidget(self.inboxMessages) + self.page_2 = QtGui.QWidget() + self.page_2.setObjectName("page_2") + self.verticalLayoutWidget_2 = QtGui.QWidget(self.page_2) + self.verticalLayoutWidget_2.setGeometry(QtCore.QRect(0, 0, 800, 400)) + self.verticalLayoutWidget_2.setObjectName("verticalLayoutWidget_2") + self.verticalLayout_2 = QtGui.QVBoxLayout(self.verticalLayoutWidget_2) + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.horizontalLayout_2 = QtGui.QHBoxLayout() + self.horizontalLayout_2.setObjectName("horizontalLayout_2") + self.msg_from = QtGui.QLabel(self.verticalLayoutWidget_2) + self.msg_from.setObjectName("msg_from") + self.horizontalLayout_2.addWidget(self.msg_from) + self.msg_date = QtGui.QLabel(self.verticalLayoutWidget_2) + self.msg_date.setObjectName("msg_date") + self.horizontalLayout_2.addWidget(self.msg_date) + spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) + self.horizontalLayout_2.addItem(spacerItem1) + self.verticalLayout_2.addLayout(self.horizontalLayout_2) + + self.line = QtGui.QFrame(self.verticalLayoutWidget_2) + self.line.setFrameShape(QtGui.QFrame.HLine) + self.line.setFrameShadow(QtGui.QFrame.Sunken) + self.line.setObjectName("line") + self.verticalLayout_2.addWidget(self.line) + + #self.msg_text = QtGui.QTextBrowser(self.verticalLayoutWidget_2) + self.msg_text = QtGui.QLabel(self.verticalLayoutWidget_2) + sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.msg_text.sizePolicy().hasHeightForWidth()) + self.msg_text.setSizePolicy(sizePolicy) + self.msg_text.setObjectName("msg_text") + self.msg_text.setWordWrap(True) + self.verticalLayout_2.addWidget(self.msg_text) + self.horizontalLayout = QtGui.QHBoxLayout() + self.horizontalLayout.setObjectName("horizontalLayout") + self.msg_delete = QtGui.QPushButton(self.verticalLayoutWidget_2) + self.msg_delete.setObjectName("msg_delete") + self.horizontalLayout.addWidget(self.msg_delete) + self.msg_back = QtGui.QPushButton(self.verticalLayoutWidget_2) + self.msg_back.setObjectName("msg_back") + self.horizontalLayout.addWidget(self.msg_back) + self.verticalLayout_2.addLayout(self.horizontalLayout) + #spacerItem2 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + #self.verticalLayout_2.addItem(spacerItem2) + self.stackedWidget.addWidget(self.page_2) + MainWindow.setCentralWidget(self.centralwidget) + self.menubar = QtGui.QMenuBar(MainWindow) + self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 25)) + self.menubar.setObjectName("menubar") + MainWindow.setMenuBar(self.menubar) + self.statusbar = QtGui.QStatusBar(MainWindow) + self.statusbar.setObjectName("statusbar") + MainWindow.setStatusBar(self.statusbar) + + self.retranslateUi(MainWindow) + QtCore.QMetaObject.connectSlotsByName(MainWindow) + + def retranslateUi(self, MainWindow): + MainWindow.setWindowTitle(QtGui.QApplication.translate("MainWindow", "MainWindow", None, QtGui.QApplication.UnicodeUTF8)) + self.inboxButton.setText(QtGui.QApplication.translate("MainWindow", "Inbox", None, QtGui.QApplication.UnicodeUTF8)) + self.pushButton_2.setText(QtGui.QApplication.translate("MainWindow", "Sent", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_from.setText(QtGui.QApplication.translate("MainWindow", "msg_from", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_date.setText(QtGui.QApplication.translate("MainWindow", "msg_date", None, QtGui.QApplication.UnicodeUTF8)) + + self.msg_delete.setText(QtGui.QApplication.translate("MainWindow", "Delete", None, QtGui.QApplication.UnicodeUTF8)) + self.msg_back.setText(QtGui.QApplication.translate("MainWindow", "Back", None, QtGui.QApplication.UnicodeUTF8)) diff --git a/windows.pyc b/windows.pyc new file mode 100644 index 0000000000000000000000000000000000000000..acbd92dad167f8b8660f31e6e7b9074c1ac0a5bb GIT binary patch literal 8108 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 F{STkFdNKe2 literal 0 HcmV?d00001 diff --git a/yagami.jpg b/yagami.jpg new file mode 100755 index 0000000000000000000000000000000000000000..b66b94809647677b3881e104a798537845265619 GIT binary patch literal 1519 zcmb7BdpOit7(Tz78JA&Z%t%?emP^|-GmKnvUEzn8v5`x)tSAgMHjFMrxvUf=-9(6x zRD>wC+8xr?Wmoy8sA+ zfE%%ZdxRN;a3v&OHi$;1)a!02hCB z;u1CF6K4|~`@}C2d;u^q?_-ybl_kMGxpCMFVj!1*uK)tW3!4B+Y>bRyD2geOND5>X zB^4EAC1qubDxFGErKu__Q#GhGbq15kR8d=`slm{sGnkA869^%CP)rfS6d4p{3gdr6 z-U?`Bzy@3d(g!dNLTHd&477>I5%(wJUy#TOh#~}|7*RH(0ti813`P;fj{*orXaL0& z^hk7lj-xuC!F3Xbq`V|E7a7E+9x16MnzRVR|2PtQL;*lBi6|Pp`pySy@v?9-SB*Bu|;?C?V#)BUBZQRH-f z@H|peM=h^-?v0#O6JhqFT`C1j8l-&N4dp|R3$~8bHr&z=olTD4yfXdKeY7pHe(3ME z?lfvyC4ISKzb`-c>J{-QW%4KUay>MTl78FyPEl)8Tz2!V`uYc#q+R`1A&EWrjq2L} z@G9)QH(?*C(UNgRK%Ox;$3Hxz{WkN3Wkgb6PtH2WU{6=!tY5NGO0s6DHjXbPR~wil zh9y?`cLYfq%gqbVjHNoao~=8uc^>WY_Rp4>$_}GnzXqKTR{mAruPDhrsdO+gr zz`edn^!iQ0_I5G9jlqy^JI}4P5;)Gb7kl~3LH(uz|-O}JZLu0qgL2pPMUauN6 zpmAvKuG3PF5^YCE9Q#J*P8#!;UA?|lZ(EyWi$|+*ndpF+9|^?_Neymhw!iZfJ<;h* z-gVNf|DmIFTWMHe#7@@A>~`N$e7E}D~+RtU5okcgz#}xY?7(u zA|pk|bLpt3Ko`%S3RpJ6I{K#~y11|Y?SO#Cym?`eAEg)W*x2IoV6|3?UH9_Ze1TIs z?pw3AI&yAahu+YjxyG)hxx3k^Pq3hx}UdcfX> zx(=T*sZVbn)h_yOib3e$;N|Qb<|;Fp3g^iC&>G$1%6PMuoM`cTrYuA>Qq*p)89O1_ zm-0(S*7eLOyBAZ%fhTkmXO^zwJ9yTrlodnu?pPja0OkKlulZ CiyMCc literal 0 HcmV?d00001 -- 1.7.9.5