Initial Project Commit
authorTarek <tarek@tarek-laptop.(none)>
Mon, 22 Feb 2010 22:58:13 +0000 (00:58 +0200)
committerTarek <tarek@tarek-laptop.(none)>
Mon, 22 Feb 2010 22:58:13 +0000 (00:58 +0200)
90 files changed:
GUI/__init__.py [new file with mode: 0644]
GUI/__init__.pyc [new file with mode: 0644]
GUI/inbox.ui [new file with mode: 0644]
GUI/inbox_window.py [new file with mode: 0644]
GUI/inbox_window.pyc [new file with mode: 0644]
GUI/inbox_window.py~ [new file with mode: 0644]
GUI/main.ui [new file with mode: 0644]
GUI/main_window.py [new file with mode: 0644]
GUI/main_window.pyc [new file with mode: 0644]
GUI/main_window.py~ [new file with mode: 0644]
GUI/message.ui [new file with mode: 0644]
GUI/message_window.py [new file with mode: 0644]
GUI/message_window.pyc [new file with mode: 0644]
GUI/message_window.py~ [new file with mode: 0644]
GUI/sent_window.py [new file with mode: 0644]
GUI/sent_window.pyc [new file with mode: 0644]
GUI/sent_window.py~ [new file with mode: 0644]
GUI/stacked2.ui [new file with mode: 0644]
bak/contactsServ.py [new file with mode: 0644]
bak/contactsServ.pyc [new file with mode: 0644]
bak/csv_service.py [new file with mode: 0644]
bak/csv_service.pyc [new file with mode: 0644]
bak/inbox_model.py [new file with mode: 0644]
bak/main.py [new file with mode: 0644]
bak/message.py [new file with mode: 0644]
bak/message.pyc [new file with mode: 0644]
bak/pygobject.py [new file with mode: 0644]
bak/pygobject.pyc [new file with mode: 0644]
bak/recv.py [new file with mode: 0644]
bak/recv.pyc [new file with mode: 0644]
bak/sent.csv [new file with mode: 0644]
bak/sent.py [new file with mode: 0644]
bak/sent.pyc [new file with mode: 0644]
bak/sent_model.py [new file with mode: 0644]
bak/sent_model.pyc [new file with mode: 0644]
bak/sms.csv [new file with mode: 0644]
bak/stacked.ui [new file with mode: 0644]
bak/stacked2.ui [new file with mode: 0644]
bak/testother.py [new file with mode: 0644]
bak/testother2.py [new file with mode: 0644]
bak/windows.py [new file with mode: 0644]
bak/windows.py.bak [new file with mode: 0644]
bak/windows.pyc [new file with mode: 0644]
bak/yagami.jpg [new file with mode: 0755]
contactsServ.py [new file with mode: 0644]
contactsServ.pyc [new file with mode: 0644]
csv_service.py [new file with mode: 0644]
csv_service.pyc [new file with mode: 0644]
graphics/contact.png [new file with mode: 0644]
graphics/contact_120.png [new file with mode: 0644]
graphics/contact_50.png [new file with mode: 0644]
graphics/contact_trans.png [new file with mode: 0644]
graphics/contact_trans_120.png [new file with mode: 0644]
graphics/contact_trans_50.png [new file with mode: 0644]
inbox_model.py [new file with mode: 0644]
main.py [new file with mode: 0644]
message.py [new file with mode: 0644]
message.pyc [new file with mode: 0644]
models.py [new file with mode: 0644]
models.pyc [new file with mode: 0644]
pygobject.py [new file with mode: 0644]
pygobject.pyc [new file with mode: 0644]
rec_model.py [new file with mode: 0644]
recv.py [new file with mode: 0644]
recv.pyc [new file with mode: 0644]
sent.csv [new file with mode: 0644]
sent.py [new file with mode: 0644]
sent.pyc [new file with mode: 0644]
sent_model.pyc [new file with mode: 0644]
sms.csv [new file with mode: 0644]
stacked.ui [new file with mode: 0644]
stacked2.ui [new file with mode: 0644]
test/GUI/__init__.py [new file with mode: 0644]
test/GUI/__init__.pyc [new file with mode: 0644]
test/GUI/inbox.ui [new file with mode: 0644]
test/GUI/inbox_window.py [new file with mode: 0644]
test/GUI/inbox_window.pyc [new file with mode: 0644]
test/GUI/inbox_window.py~ [new file with mode: 0644]
test/GUI/main.ui [new file with mode: 0644]
test/GUI/main_window.py [new file with mode: 0644]
test/GUI/main_window.pyc [new file with mode: 0644]
test/GUI/main_window.py~ [new file with mode: 0644]
test/main.py [new file with mode: 0644]
test/main.py~ [new file with mode: 0644]
testother.py [new file with mode: 0644]
testother2.py [new file with mode: 0644]
windows.py [new file with mode: 0644]
windows.py.bak [new file with mode: 0644]
windows.pyc [new file with mode: 0644]
yagami.jpg [new file with mode: 0755]

diff --git a/GUI/__init__.py b/GUI/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/GUI/__init__.pyc b/GUI/__init__.pyc
new file mode 100644 (file)
index 0000000..9637d4a
Binary files /dev/null and b/GUI/__init__.pyc differ
diff --git a/GUI/inbox.ui b/GUI/inbox.ui
new file mode 100644 (file)
index 0000000..46ebfbe
--- /dev/null
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>InboxWindow</class>
+ <widget class="QMainWindow" name="InboxWindow">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>800</width>
+    <height>400</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>MainWindow</string>
+  </property>
+  <widget class="QWidget" name="centralwidget">
+   <widget class="QListView" name="listView">
+    <property name="geometry">
+     <rect>
+      <x>0</x>
+      <y>0</y>
+      <width>800</width>
+      <height>400</height>
+     </rect>
+    </property>
+   </widget>
+  </widget>
+  <widget class="QMenuBar" name="menubar">
+   <property name="geometry">
+    <rect>
+     <x>0</x>
+     <y>0</y>
+     <width>800</width>
+     <height>25</height>
+    </rect>
+   </property>
+  </widget>
+  <widget class="QStatusBar" name="statusbar"/>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/GUI/inbox_window.py b/GUI/inbox_window.py
new file mode 100644 (file)
index 0000000..198c531
--- /dev/null
@@ -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 (file)
index 0000000..a3aacfe
Binary files /dev/null and b/GUI/inbox_window.pyc differ
diff --git a/GUI/inbox_window.py~ b/GUI/inbox_window.py~
new file mode 100644 (file)
index 0000000..615da5d
--- /dev/null
@@ -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.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/main.ui b/GUI/main.ui
new file mode 100644 (file)
index 0000000..3495cdf
--- /dev/null
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MainWindow</class>
+ <widget class="QMainWindow" name="MainWindow">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>800</width>
+    <height>400</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>MainWindow</string>
+  </property>
+  <widget class="QWidget" name="centralwidget">
+   <widget class="QWidget" name="verticalLayoutWidget">
+    <property name="geometry">
+     <rect>
+      <x>0</x>
+      <y>0</y>
+      <width>801</width>
+      <height>371</height>
+     </rect>
+    </property>
+    <layout class="QVBoxLayout" name="verticalLayout">
+     <item>
+      <widget class="QPushButton" name="inbox_button">
+       <property name="text">
+        <string>Inbox</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="sent_button">
+       <property name="text">
+        <string>Sent</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <spacer name="verticalSpacer">
+       <property name="orientation">
+        <enum>Qt::Vertical</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>20</width>
+         <height>40</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+    </layout>
+   </widget>
+  </widget>
+  <widget class="QMenuBar" name="menubar">
+   <property name="geometry">
+    <rect>
+     <x>0</x>
+     <y>0</y>
+     <width>800</width>
+     <height>25</height>
+    </rect>
+   </property>
+  </widget>
+  <widget class="QStatusBar" name="statusbar"/>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/GUI/main_window.py b/GUI/main_window.py
new file mode 100644 (file)
index 0000000..6b58e6c
--- /dev/null
@@ -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 (file)
index 0000000..261a690
Binary files /dev/null and b/GUI/main_window.pyc differ
diff --git a/GUI/main_window.py~ b/GUI/main_window.py~
new file mode 100644 (file)
index 0000000..6b58e6c
--- /dev/null
@@ -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 (file)
index 0000000..2a9de00
--- /dev/null
@@ -0,0 +1,225 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MessageWindow</class>
+ <widget class="QMainWindow" name="MessageWindow">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>800</width>
+    <height>400</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Retro Conversations</string>
+  </property>
+  <widget class="QWidget" name="centralwidget">
+   <widget class="QWidget" name="sentMessageView" native="true">
+    <property name="geometry">
+     <rect>
+      <x>0</x>
+      <y>0</y>
+      <width>800</width>
+      <height>400</height>
+     </rect>
+    </property>
+    <widget class="QWidget" name="verticalLayoutWidget_3">
+     <property name="geometry">
+      <rect>
+       <x>0</x>
+       <y>0</y>
+       <width>800</width>
+       <height>400</height>
+      </rect>
+     </property>
+     <layout class="QVBoxLayout" name="verticalLayout_3">
+      <property name="sizeConstraint">
+       <enum>QLayout::SetMaximumSize</enum>
+      </property>
+      <item>
+       <layout class="QHBoxLayout" name="horizontalLayout_3">
+        <item>
+         <widget class="QLabel" name="frame">
+          <property name="frameShape">
+           <enum>QFrame::Box</enum>
+          </property>
+          <property name="frameShadow">
+           <enum>QFrame::Raised</enum>
+          </property>
+          <property name="lineWidth">
+           <number>5</number>
+          </property>
+          <property name="midLineWidth">
+           <number>0</number>
+          </property>
+          <property name="text">
+           <string>xxxxxx</string>
+          </property>
+          <property name="alignment">
+           <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <layout class="QVBoxLayout" name="verticalLayout_4">
+          <property name="leftMargin">
+           <number>5</number>
+          </property>
+          <property name="rightMargin">
+           <number>0</number>
+          </property>
+          <item>
+           <widget class="QLabel" name="msg_address">
+            <property name="font">
+             <font>
+              <pointsize>26</pointsize>
+             </font>
+            </property>
+            <property name="styleSheet">
+             <string>color:rgb(106, 106, 106)</string>
+            </property>
+            <property name="text">
+             <string>TextLabel</string>
+            </property>
+            <property name="alignment">
+             <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <widget class="QLabel" name="sent_msg_date">
+            <property name="frameShape">
+             <enum>QFrame::StyledPanel</enum>
+            </property>
+            <property name="text">
+             <string>TextLabel</string>
+            </property>
+            <property name="alignment">
+             <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <spacer name="verticalSpacer_3">
+            <property name="orientation">
+             <enum>Qt::Vertical</enum>
+            </property>
+            <property name="sizeHint" stdset="0">
+             <size>
+              <width>20</width>
+              <height>40</height>
+             </size>
+            </property>
+           </spacer>
+          </item>
+         </layout>
+        </item>
+        <item>
+         <spacer name="horizontalSpacer_2">
+          <property name="orientation">
+           <enum>Qt::Horizontal</enum>
+          </property>
+          <property name="sizeHint" stdset="0">
+           <size>
+            <width>40</width>
+            <height>20</height>
+           </size>
+          </property>
+         </spacer>
+        </item>
+       </layout>
+      </item>
+      <item>
+       <widget class="Line" name="line_3">
+        <property name="styleSheet">
+         <string>background:rgb(50, 50, 50);</string>
+        </property>
+        <property name="frameShadow">
+         <enum>QFrame::Plain</enum>
+        </property>
+        <property name="lineWidth">
+         <number>5</number>
+        </property>
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLabel" name="sent_msg_text">
+        <property name="styleSheet">
+         <string>margin-top:5px</string>
+        </property>
+        <property name="text">
+         <string>TextLabel</string>
+        </property>
+        <property name="wordWrap">
+         <bool>true</bool>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <spacer name="verticalSpacer_4">
+        <property name="orientation">
+         <enum>Qt::Vertical</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>20</width>
+          <height>40</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+      <item>
+       <layout class="QHBoxLayout" name="horizontalLayout_4">
+        <item>
+         <widget class="QPushButton" name="sent_msg_delete">
+          <property name="text">
+           <string>Delete</string>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <widget class="QPushButton" name="sent_msg_back">
+          <property name="text">
+           <string>Back</string>
+          </property>
+         </widget>
+        </item>
+       </layout>
+      </item>
+     </layout>
+    </widget>
+   </widget>
+  </widget>
+  <widget class="QMenuBar" name="menubar">
+   <property name="geometry">
+    <rect>
+     <x>0</x>
+     <y>0</y>
+     <width>800</width>
+     <height>25</height>
+    </rect>
+   </property>
+  </widget>
+  <widget class="QStatusBar" name="statusbar"/>
+  <action name="actionOption_1">
+   <property name="text">
+    <string>Option 1</string>
+   </property>
+  </action>
+  <action name="actionOption_2">
+   <property name="text">
+    <string>Option 2</string>
+   </property>
+  </action>
+  <action name="actionBlabla2">
+   <property name="text">
+    <string>blabla2</string>
+   </property>
+  </action>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/GUI/message_window.py b/GUI/message_window.py
new file mode 100644 (file)
index 0000000..6d92449
--- /dev/null
@@ -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 (file)
index 0000000..4f78b70
Binary files /dev/null and b/GUI/message_window.pyc differ
diff --git a/GUI/message_window.py~ b/GUI/message_window.py~
new file mode 100644 (file)
index 0000000..f48ebaf
--- /dev/null
@@ -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, 400))
+        self.sentMessageView.setObjectName("sentMessageView")
+        self.verticalLayoutWidget_3 = QtGui.QWidget(self.sentMessageView)
+        self.verticalLayoutWidget_3.setGeometry(QtCore.QRect(0, 0, 800, 400))
+        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/sent_window.py b/GUI/sent_window.py
new file mode 100644 (file)
index 0000000..272a833
--- /dev/null
@@ -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/sent_window.pyc b/GUI/sent_window.pyc
new file mode 100644 (file)
index 0000000..3364549
Binary files /dev/null and b/GUI/sent_window.pyc differ
diff --git a/GUI/sent_window.py~ b/GUI/sent_window.py~
new file mode 100644 (file)
index 0000000..92e66fd
--- /dev/null
@@ -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 (file)
index 0000000..b3b8ae7
--- /dev/null
@@ -0,0 +1,217 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MainWindow</class>
+ <widget class="QMainWindow" name="MainWindow">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>800</width>
+    <height>400</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Retro Conversations</string>
+  </property>
+  <widget class="QWidget" name="centralwidget">
+    <widget class="QWidget" name="sentMessageView">
+     <widget class="QWidget" name="verticalLayoutWidget_3">
+      <property name="geometry">
+       <rect>
+        <x>0</x>
+        <y>0</y>
+        <width>800</width>
+        <height>400</height>
+       </rect>
+      </property>
+      <layout class="QVBoxLayout" name="verticalLayout_3">
+       <property name="sizeConstraint">
+        <enum>QLayout::SetMaximumSize</enum>
+       </property>
+       <item>
+        <layout class="QHBoxLayout" name="horizontalLayout_3">
+         <item>
+          <widget class="QLabel" name="frame">
+           <property name="frameShape">
+            <enum>QFrame::Box</enum>
+           </property>
+           <property name="frameShadow">
+            <enum>QFrame::Raised</enum>
+           </property>
+           <property name="lineWidth">
+            <number>5</number>
+           </property>
+           <property name="midLineWidth">
+            <number>0</number>
+           </property>
+           <property name="text">
+            <string>xxxxxx</string>
+           </property>
+           <property name="alignment">
+            <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <layout class="QVBoxLayout" name="verticalLayout_4">
+           <property name="leftMargin">
+            <number>5</number>
+           </property>
+           <property name="rightMargin">
+            <number>0</number>
+           </property>
+           <item>
+            <widget class="QLabel" name="sent_msg_to">
+             <property name="font">
+              <font>
+               <pointsize>26</pointsize>
+              </font>
+             </property>
+             <property name="styleSheet">
+              <string>color:rgb(106, 106, 106)</string>
+             </property>
+             <property name="text">
+              <string>TextLabel</string>
+             </property>
+             <property name="alignment">
+              <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <widget class="QLabel" name="sent_msg_date">
+             <property name="frameShape">
+              <enum>QFrame::StyledPanel</enum>
+             </property>
+             <property name="text">
+              <string>TextLabel</string>
+             </property>
+             <property name="alignment">
+              <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <spacer name="verticalSpacer_3">
+             <property name="orientation">
+              <enum>Qt::Vertical</enum>
+             </property>
+             <property name="sizeHint" stdset="0">
+              <size>
+               <width>20</width>
+               <height>40</height>
+              </size>
+             </property>
+            </spacer>
+           </item>
+          </layout>
+         </item>
+         <item>
+          <spacer name="horizontalSpacer_2">
+           <property name="orientation">
+            <enum>Qt::Horizontal</enum>
+           </property>
+           <property name="sizeHint" stdset="0">
+            <size>
+             <width>40</width>
+             <height>20</height>
+            </size>
+           </property>
+          </spacer>
+         </item>
+        </layout>
+       </item>
+       <item>
+        <widget class="Line" name="line_3">
+         <property name="styleSheet">
+          <string>background:rgb(50, 50, 50);</string>
+         </property>
+         <property name="frameShadow">
+          <enum>QFrame::Plain</enum>
+         </property>
+         <property name="lineWidth">
+          <number>5</number>
+         </property>
+         <property name="orientation">
+          <enum>Qt::Horizontal</enum>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QLabel" name="sent_msg_text">
+         <property name="styleSheet">
+          <string>margin-top:5px</string>
+         </property>
+         <property name="text">
+          <string>TextLabel</string>
+         </property>
+         <property name="wordWrap">
+          <bool>true</bool>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <spacer name="verticalSpacer_4">
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>40</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+       <item>
+        <layout class="QHBoxLayout" name="horizontalLayout_4">
+         <item>
+          <widget class="QPushButton" name="sent_msg_delete">
+           <property name="text">
+            <string>Delete</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QPushButton" name="sent_msg_back">
+           <property name="text">
+            <string>Back</string>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </widget>
+  <widget class="QMenuBar" name="menubar">
+   <property name="geometry">
+    <rect>
+     <x>0</x>
+     <y>0</y>
+     <width>800</width>
+     <height>25</height>
+    </rect>
+   </property>
+  </widget>
+  <widget class="QStatusBar" name="statusbar"/>
+  <action name="actionOption_1">
+   <property name="text">
+    <string>Option 1</string>
+   </property>
+  </action>
+  <action name="actionOption_2">
+   <property name="text">
+    <string>Option 2</string>
+   </property>
+  </action>
+  <action name="actionBlabla2">
+   <property name="text">
+    <string>blabla2</string>
+   </property>
+  </action>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/bak/contactsServ.py b/bak/contactsServ.py
new file mode 100644 (file)
index 0000000..95aa7f9
--- /dev/null
@@ -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 (file)
index 0000000..9a3b358
Binary files /dev/null and b/bak/contactsServ.pyc differ
diff --git a/bak/csv_service.py b/bak/csv_service.py
new file mode 100644 (file)
index 0000000..b50f24d
--- /dev/null
@@ -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 (file)
index 0000000..526cca6
Binary files /dev/null and b/bak/csv_service.pyc differ
diff --git a/bak/inbox_model.py b/bak/inbox_model.py
new file mode 100644 (file)
index 0000000..e83d632
--- /dev/null
@@ -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/bak/main.py b/bak/main.py
new file mode 100644 (file)
index 0000000..12273ce
--- /dev/null
@@ -0,0 +1,95 @@
+from PyQt4.QtCore import *
+from PyQt4.QtGui import *
+from csv_service import csvServ
+from sent_model import *
+from windows import *
+       
+msgs=csvServ("sms.csv", "sent.csv")
+
+
+def showInboxMessages():
+       ui.stackedWidget.setCurrentIndex(1)
+
+def showSentMessages():
+       ui.stackedWidget.setCurrentIndex(3)
+       
+       
+def showMsg():
+       ui.stackedWidget.setCurrentIndex(2)
+       msg = msgs.getMsg(ui.listView.currentRow())
+       ui.msg_text.setText(msg.getMsgText())
+       ui.msg_from.setText(msg.getSenderName())
+       ui.msg_date.setText(msg.getDate())
+
+
+def showSentMsg():
+       ui.stackedWidget.setCurrentIndex(4)
+       msg = msgs.getMsg(ui.sentView.currentIndex().row(), 1)
+       ui.sent_msg_text.setText(msg.getMsgText())
+       ui.sent_msg_to.setText(msg.getRecName())
+       ui.sent_msg_date.setText(msg.getDate())
+       
+       #####################################
+       
+       arr=QByteArray(msg.getImageData())
+       img = QPixmap()
+       img.loadFromData(arr)
+       
+       ui.frame.setPixmap(img.scaled(100,100))
+       
+def populateInbox():
+       #allSenders=msgs.getAllSenders()
+       #for x in allSenders:
+       
+       for x in msgs.recvLst:
+               ui.listView.addItem(x.getSenderName())
+               
+def populateSent():
+       #allSenders=msgs.getAllSenders()
+       #for x in allSenders:
+       
+       sentModel=SentModel(msgs.sentLst)
+       ui.sentView.setModel(sentModel)
+       
+       #for x in msgs.sentLst:
+               #print x.getRecName()
+       
+
+def init():
+       
+       ################## Connect SIGNALS #######################
+       
+       QObject.connect(ui.inboxButton, SIGNAL("clicked()"),showInboxMessages)
+       QObject.connect(ui.sentButton, SIGNAL("clicked()"),showSentMessages)
+       QObject.connect(ui.listView, SIGNAL("itemClicked(QListWidgetItem*)"),showMsg)
+        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()
+       
+       ###########################################################
+
+import sys
+app = QtGui.QApplication(sys.argv)
+MainWindow = QtGui.QMainWindow()
+ui = Ui_MainWindow()
+ui.setupUi(MainWindow)
+MainWindow.show()
+
+####### Initialization #########
+
+init()
+
+################################
+
+sys.exit(app.exec_())
+
+
+
+
diff --git a/bak/message.py b/bak/message.py
new file mode 100644 (file)
index 0000000..83e0099
--- /dev/null
@@ -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)
+               
+               
+       def getImageData(self):
+               return self.imgData
diff --git a/bak/message.pyc b/bak/message.pyc
new file mode 100644 (file)
index 0000000..f11e345
Binary files /dev/null and b/bak/message.pyc differ
diff --git a/bak/pygobject.py b/bak/pygobject.py
new file mode 100644 (file)
index 0000000..150deae
--- /dev/null
@@ -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 <andrew@bleb.org> 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 (file)
index 0000000..39eeaa1
Binary files /dev/null and b/bak/pygobject.pyc differ
diff --git a/bak/recv.py b/bak/recv.py
new file mode 100644 (file)
index 0000000..ed0608c
--- /dev/null
@@ -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 (file)
index 0000000..92fdc41
Binary files /dev/null and b/bak/recv.pyc differ
diff --git a/bak/sent.csv b/bak/sent.csv
new file mode 100644 (file)
index 0000000..aa0beb6
--- /dev/null
@@ -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 (file)
index 0000000..df28d50
--- /dev/null
@@ -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 (file)
index 0000000..58136eb
Binary files /dev/null and b/bak/sent.pyc differ
diff --git a/bak/sent_model.py b/bak/sent_model.py
new file mode 100644 (file)
index 0000000..6ab34ef
--- /dev/null
@@ -0,0 +1,31 @@
+from PyQt4 import *
+from PyQt4.QtCore import *
+from PyQt4.QtGui import *
+import sys
+
+
+class SentModel(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()].getRecName())
+  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/bak/sent_model.pyc b/bak/sent_model.pyc
new file mode 100644 (file)
index 0000000..7a920a2
Binary files /dev/null and b/bak/sent_model.pyc differ
diff --git a/bak/sms.csv b/bak/sms.csv
new file mode 100644 (file)
index 0000000..0d64ee0
--- /dev/null
@@ -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 (file)
index 0000000..1512326
--- /dev/null
@@ -0,0 +1,188 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MainWindow</class>
+ <widget class="QMainWindow" name="MainWindow">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>800</width>
+    <height>400</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>MainWindow</string>
+  </property>
+  <widget class="QWidget" name="centralwidget">
+   <widget class="QStackedWidget" name="stackedWidget">
+    <property name="geometry">
+     <rect>
+      <x>0</x>
+      <y>0</y>
+      <width>800</width>
+      <height>400</height>
+     </rect>
+    </property>
+    <widget class="QWidget" name="page">
+     <widget class="QWidget" name="verticalLayoutWidget">
+      <property name="geometry">
+       <rect>
+        <x>0</x>
+        <y>0</y>
+        <width>801</width>
+        <height>361</height>
+       </rect>
+      </property>
+      <layout class="QVBoxLayout" name="verticalLayout">
+       <item>
+        <widget class="QPushButton" name="inboxButton">
+         <property name="text">
+          <string>Inbox</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QPushButton" name="pushButton_2">
+         <property name="text">
+          <string>Sent</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <spacer name="verticalSpacer">
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>40</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+    <widget class="QWidget" name="inboxMessages">
+     <widget class="QListView" name="listView">
+      <property name="geometry">
+       <rect>
+        <x>0</x>
+        <y>0</y>
+        <width>800</width>
+        <height>400</height>
+       </rect>
+      </property>
+     </widget>
+    </widget>
+    <widget class="QWidget" name="page_2">
+     <widget class="QWidget" name="verticalLayoutWidget_2">
+      <property name="geometry">
+       <rect>
+        <x>0</x>
+        <y>0</y>
+        <width>801</width>
+        <height>371</height>
+       </rect>
+      </property>
+      <layout class="QVBoxLayout" name="verticalLayout_2">
+       <item>
+        <layout class="QHBoxLayout" name="horizontalLayout_2">
+         <item>
+          <widget class="QLabel" name="msg_from">
+           <property name="text">
+            <string>msg_from</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QLabel" name="msg_date">
+           <property name="text">
+            <string>msg_date</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <spacer name="horizontalSpacer">
+           <property name="orientation">
+            <enum>Qt::Horizontal</enum>
+           </property>
+           <property name="sizeHint" stdset="0">
+            <size>
+             <width>40</width>
+             <height>20</height>
+            </size>
+           </property>
+          </spacer>
+         </item>
+        </layout>
+       </item>
+       <item>
+        <widget class="QTextBrowser" name="msg_text">
+         <property name="sizePolicy">
+          <sizepolicy hsizetype="Expanding" vsizetype="Minimum">
+           <horstretch>0</horstretch>
+           <verstretch>0</verstretch>
+          </sizepolicy>
+         </property>
+         <property name="html">
+          <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Arial'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;msg_text&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <layout class="QHBoxLayout" name="horizontalLayout">
+         <item>
+          <widget class="QPushButton" name="pushButton_3">
+           <property name="text">
+            <string>Delete</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QPushButton" name="pushButton">
+           <property name="text">
+            <string>Back</string>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </item>
+       <item>
+        <spacer name="verticalSpacer_2">
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>40</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </widget>
+  </widget>
+  <widget class="QMenuBar" name="menubar">
+   <property name="geometry">
+    <rect>
+     <x>0</x>
+     <y>0</y>
+     <width>800</width>
+     <height>25</height>
+    </rect>
+   </property>
+  </widget>
+  <widget class="QStatusBar" name="statusbar"/>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/bak/stacked2.ui b/bak/stacked2.ui
new file mode 100644 (file)
index 0000000..1544bef
--- /dev/null
@@ -0,0 +1,399 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MainWindow</class>
+ <widget class="QMainWindow" name="MainWindow">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>800</width>
+    <height>400</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Retro Conversations</string>
+  </property>
+  <widget class="QWidget" name="centralwidget">
+   <widget class="QStackedWidget" name="stackedWidget">
+    <property name="geometry">
+     <rect>
+      <x>0</x>
+      <y>0</y>
+      <width>800</width>
+      <height>400</height>
+     </rect>
+    </property>
+    <widget class="QWidget" name="page">
+     <widget class="QWidget" name="verticalLayoutWidget">
+      <property name="geometry">
+       <rect>
+        <x>0</x>
+        <y>0</y>
+        <width>801</width>
+        <height>361</height>
+       </rect>
+      </property>
+      <layout class="QVBoxLayout" name="verticalLayout">
+       <item>
+        <widget class="QPushButton" name="inboxButton">
+         <property name="text">
+          <string>Inbox</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QPushButton" name="sentButton">
+         <property name="text">
+          <string>Sent</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <spacer name="verticalSpacer">
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>40</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+    <widget class="QWidget" name="inboxMessages">
+     <widget class="QListWidget" name="listView">
+      <property name="geometry">
+       <rect>
+        <x>0</x>
+        <y>0</y>
+        <width>800</width>
+        <height>400</height>
+       </rect>
+      </property>
+     </widget>
+    </widget>
+    <widget class="QWidget" name="page_2">
+     <widget class="QWidget" name="verticalLayoutWidget_2">
+      <property name="geometry">
+       <rect>
+        <x>0</x>
+        <y>0</y>
+        <width>801</width>
+        <height>371</height>
+       </rect>
+      </property>
+      <layout class="QVBoxLayout" name="verticalLayout_2">
+       <item>
+        <layout class="QHBoxLayout" name="horizontalLayout_2">
+         <item>
+          <widget class="QLabel" name="msg_from">
+           <property name="text">
+            <string>msg_from</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="Line" name="line_2">
+           <property name="orientation">
+            <enum>Qt::Vertical</enum>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <spacer name="horizontalSpacer">
+           <property name="orientation">
+            <enum>Qt::Horizontal</enum>
+           </property>
+           <property name="sizeHint" stdset="0">
+            <size>
+             <width>40</width>
+             <height>20</height>
+            </size>
+           </property>
+          </spacer>
+         </item>
+         <item>
+          <widget class="QLabel" name="msg_date">
+           <property name="text">
+            <string>msg_date</string>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </item>
+       <item>
+        <widget class="Line" name="line">
+         <property name="orientation">
+          <enum>Qt::Horizontal</enum>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QTextBrowser" name="msg_text">
+         <property name="sizePolicy">
+          <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+           <horstretch>0</horstretch>
+           <verstretch>0</verstretch>
+          </sizepolicy>
+         </property>
+         <property name="html">
+          <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Arial'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;msg_text&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <spacer name="verticalSpacer_2">
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>40</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+       <item>
+        <layout class="QHBoxLayout" name="horizontalLayout">
+         <item>
+          <widget class="QPushButton" name="msg_delete">
+           <property name="text">
+            <string>Delete</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QPushButton" name="msg_back">
+           <property name="text">
+            <string>Back</string>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+    <widget class="QWidget" name="sentPage">
+     <widget class="QListView" name="sentView">
+      <property name="geometry">
+       <rect>
+        <x>0</x>
+        <y>0</y>
+        <width>800</width>
+        <height>400</height>
+       </rect>
+      </property>
+     </widget>
+    </widget>
+    <widget class="QWidget" name="sentMessageView">
+     <widget class="QWidget" name="verticalLayoutWidget_3">
+      <property name="geometry">
+       <rect>
+        <x>0</x>
+        <y>0</y>
+        <width>801</width>
+        <height>381</height>
+       </rect>
+      </property>
+      <layout class="QVBoxLayout" name="verticalLayout_3">
+       <property name="sizeConstraint">
+        <enum>QLayout::SetMaximumSize</enum>
+       </property>
+       <item>
+        <layout class="QHBoxLayout" name="horizontalLayout_3">
+         <item>
+          <widget class="QLabel" name="frame">
+           <property name="frameShape">
+            <enum>QFrame::Box</enum>
+           </property>
+           <property name="frameShadow">
+            <enum>QFrame::Raised</enum>
+           </property>
+           <property name="lineWidth">
+            <number>5</number>
+           </property>
+           <property name="midLineWidth">
+            <number>0</number>
+           </property>
+           <property name="text">
+            <string>xxxxxx</string>
+           </property>
+           <property name="alignment">
+            <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <layout class="QVBoxLayout" name="verticalLayout_4">
+           <property name="leftMargin">
+            <number>5</number>
+           </property>
+           <property name="rightMargin">
+            <number>0</number>
+           </property>
+           <item>
+            <widget class="QLabel" name="sent_msg_to">
+             <property name="font">
+              <font>
+               <pointsize>26</pointsize>
+              </font>
+             </property>
+             <property name="styleSheet">
+              <string>color:rgb(106, 106, 106)</string>
+             </property>
+             <property name="text">
+              <string>TextLabel</string>
+             </property>
+             <property name="alignment">
+              <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <widget class="QLabel" name="sent_msg_date">
+             <property name="frameShape">
+              <enum>QFrame::StyledPanel</enum>
+             </property>
+             <property name="text">
+              <string>TextLabel</string>
+             </property>
+             <property name="alignment">
+              <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <spacer name="verticalSpacer_3">
+             <property name="orientation">
+              <enum>Qt::Vertical</enum>
+             </property>
+             <property name="sizeHint" stdset="0">
+              <size>
+               <width>20</width>
+               <height>40</height>
+              </size>
+             </property>
+            </spacer>
+           </item>
+          </layout>
+         </item>
+         <item>
+          <spacer name="horizontalSpacer_2">
+           <property name="orientation">
+            <enum>Qt::Horizontal</enum>
+           </property>
+           <property name="sizeHint" stdset="0">
+            <size>
+             <width>40</width>
+             <height>20</height>
+            </size>
+           </property>
+          </spacer>
+         </item>
+        </layout>
+       </item>
+       <item>
+        <widget class="Line" name="line_3">
+         <property name="styleSheet">
+          <string>background:rgb(50, 50, 50);</string>
+         </property>
+         <property name="frameShadow">
+          <enum>QFrame::Plain</enum>
+         </property>
+         <property name="lineWidth">
+          <number>5</number>
+         </property>
+         <property name="orientation">
+          <enum>Qt::Horizontal</enum>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QLabel" name="sent_msg_text">
+         <property name="styleSheet">
+          <string>margin-top:5px</string>
+         </property>
+         <property name="text">
+          <string>TextLabel</string>
+         </property>
+         <property name="wordWrap">
+          <bool>true</bool>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <spacer name="verticalSpacer_4">
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>40</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+       <item>
+        <layout class="QHBoxLayout" name="horizontalLayout_4">
+         <item>
+          <widget class="QPushButton" name="sent_msg_delete">
+           <property name="text">
+            <string>Delete</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QPushButton" name="sent_msg_back">
+           <property name="text">
+            <string>Back</string>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </widget>
+  </widget>
+  <widget class="QMenuBar" name="menubar">
+   <property name="geometry">
+    <rect>
+     <x>0</x>
+     <y>0</y>
+     <width>800</width>
+     <height>25</height>
+    </rect>
+   </property>
+  </widget>
+  <widget class="QStatusBar" name="statusbar"/>
+  <action name="actionOption_1">
+   <property name="text">
+    <string>Option 1</string>
+   </property>
+  </action>
+  <action name="actionOption_2">
+   <property name="text">
+    <string>Option 2</string>
+   </property>
+  </action>
+  <action name="actionBlabla2">
+   <property name="text">
+    <string>blabla2</string>
+   </property>
+  </action>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/bak/testother.py b/bak/testother.py
new file mode 100644 (file)
index 0000000..7c0f766
--- /dev/null
@@ -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 (file)
index 0000000..863bea6
--- /dev/null
@@ -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 (file)
index 0000000..ac64475
--- /dev/null
@@ -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", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Arial\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<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>", 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 (file)
index 0000000..0e88d3d
--- /dev/null
@@ -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 (file)
index 0000000..91dce96
Binary files /dev/null and b/bak/windows.pyc differ
diff --git a/bak/yagami.jpg b/bak/yagami.jpg
new file mode 100755 (executable)
index 0000000..b66b948
Binary files /dev/null and b/bak/yagami.jpg differ
diff --git a/contactsServ.py b/contactsServ.py
new file mode 100644 (file)
index 0000000..93e5fa3
--- /dev/null
@@ -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 (file)
index 0000000..0c0e091
Binary files /dev/null and b/contactsServ.pyc differ
diff --git a/csv_service.py b/csv_service.py
new file mode 100644 (file)
index 0000000..b50f24d
--- /dev/null
@@ -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 (file)
index 0000000..75666b0
Binary files /dev/null and b/csv_service.pyc differ
diff --git a/graphics/contact.png b/graphics/contact.png
new file mode 100644 (file)
index 0000000..84c42b0
Binary files /dev/null and b/graphics/contact.png differ
diff --git a/graphics/contact_120.png b/graphics/contact_120.png
new file mode 100644 (file)
index 0000000..268b04b
Binary files /dev/null and b/graphics/contact_120.png differ
diff --git a/graphics/contact_50.png b/graphics/contact_50.png
new file mode 100644 (file)
index 0000000..55e62fa
Binary files /dev/null and b/graphics/contact_50.png differ
diff --git a/graphics/contact_trans.png b/graphics/contact_trans.png
new file mode 100644 (file)
index 0000000..4675c81
Binary files /dev/null and b/graphics/contact_trans.png differ
diff --git a/graphics/contact_trans_120.png b/graphics/contact_trans_120.png
new file mode 100644 (file)
index 0000000..5b85495
Binary files /dev/null and b/graphics/contact_trans_120.png differ
diff --git a/graphics/contact_trans_50.png b/graphics/contact_trans_50.png
new file mode 100644 (file)
index 0000000..d32484e
Binary files /dev/null and b/graphics/contact_trans_50.png differ
diff --git a/inbox_model.py b/inbox_model.py
new file mode 100644 (file)
index 0000000..e83d632
--- /dev/null
@@ -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 (file)
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 (file)
index 0000000..d0b810f
--- /dev/null
@@ -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 (file)
index 0000000..ff1dac4
Binary files /dev/null and b/message.pyc differ
diff --git a/models.py b/models.py
new file mode 100644 (file)
index 0000000..f700add
--- /dev/null
+++ b/models.py
@@ -0,0 +1,67 @@
+from PyQt4 import *
+from PyQt4.QtCore import *
+from PyQt4.QtGui import *
+import sys
+
+
+class SentModel(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()].getRecName())
+  elif role == Qt.DecorationRole:
+       
+       #img = QImage()
+       #arr = QByteArray(self._items[index.row()].getImageData())
+       #img.loadFromData(arr)
+       
+       
+       if self._items[index.row()].img == "":
+               return QVariant(QImage("graphics/contact_trans_50.png"))
+       else:
+               return QVariant(self._items[index.row()].img)
+  else:
+       return QVariant()
+
+
+############################################################3
+       
+class RecvModel(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)
+       
+       if self._items[index.row()].img == "":
+               return QVariant(QImage("graphics/contact_trans_50.png"))
+       else:
+               return QVariant(self._items[index.row()].img)
+  else:
+       return QVariant()
diff --git a/models.pyc b/models.pyc
new file mode 100644 (file)
index 0000000..595a89d
Binary files /dev/null and b/models.pyc differ
diff --git a/pygobject.py b/pygobject.py
new file mode 100644 (file)
index 0000000..150deae
--- /dev/null
@@ -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 <andrew@bleb.org> 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 (file)
index 0000000..39eeaa1
Binary files /dev/null and b/pygobject.pyc differ
diff --git a/rec_model.py b/rec_model.py
new file mode 100644 (file)
index 0000000..2075f8a
--- /dev/null
@@ -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 (file)
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 (file)
index 0000000..0aeabeb
Binary files /dev/null and b/recv.pyc differ
diff --git a/sent.csv b/sent.csv
new file mode 100644 (file)
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 (file)
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 (file)
index 0000000..58136eb
Binary files /dev/null and b/sent.pyc differ
diff --git a/sent_model.pyc b/sent_model.pyc
new file mode 100644 (file)
index 0000000..0547c37
Binary files /dev/null and b/sent_model.pyc differ
diff --git a/sms.csv b/sms.csv
new file mode 100644 (file)
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 (file)
index 0000000..1512326
--- /dev/null
@@ -0,0 +1,188 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MainWindow</class>
+ <widget class="QMainWindow" name="MainWindow">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>800</width>
+    <height>400</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>MainWindow</string>
+  </property>
+  <widget class="QWidget" name="centralwidget">
+   <widget class="QStackedWidget" name="stackedWidget">
+    <property name="geometry">
+     <rect>
+      <x>0</x>
+      <y>0</y>
+      <width>800</width>
+      <height>400</height>
+     </rect>
+    </property>
+    <widget class="QWidget" name="page">
+     <widget class="QWidget" name="verticalLayoutWidget">
+      <property name="geometry">
+       <rect>
+        <x>0</x>
+        <y>0</y>
+        <width>801</width>
+        <height>361</height>
+       </rect>
+      </property>
+      <layout class="QVBoxLayout" name="verticalLayout">
+       <item>
+        <widget class="QPushButton" name="inboxButton">
+         <property name="text">
+          <string>Inbox</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QPushButton" name="pushButton_2">
+         <property name="text">
+          <string>Sent</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <spacer name="verticalSpacer">
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>40</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+    <widget class="QWidget" name="inboxMessages">
+     <widget class="QListView" name="listView">
+      <property name="geometry">
+       <rect>
+        <x>0</x>
+        <y>0</y>
+        <width>800</width>
+        <height>400</height>
+       </rect>
+      </property>
+     </widget>
+    </widget>
+    <widget class="QWidget" name="page_2">
+     <widget class="QWidget" name="verticalLayoutWidget_2">
+      <property name="geometry">
+       <rect>
+        <x>0</x>
+        <y>0</y>
+        <width>801</width>
+        <height>371</height>
+       </rect>
+      </property>
+      <layout class="QVBoxLayout" name="verticalLayout_2">
+       <item>
+        <layout class="QHBoxLayout" name="horizontalLayout_2">
+         <item>
+          <widget class="QLabel" name="msg_from">
+           <property name="text">
+            <string>msg_from</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QLabel" name="msg_date">
+           <property name="text">
+            <string>msg_date</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <spacer name="horizontalSpacer">
+           <property name="orientation">
+            <enum>Qt::Horizontal</enum>
+           </property>
+           <property name="sizeHint" stdset="0">
+            <size>
+             <width>40</width>
+             <height>20</height>
+            </size>
+           </property>
+          </spacer>
+         </item>
+        </layout>
+       </item>
+       <item>
+        <widget class="QTextBrowser" name="msg_text">
+         <property name="sizePolicy">
+          <sizepolicy hsizetype="Expanding" vsizetype="Minimum">
+           <horstretch>0</horstretch>
+           <verstretch>0</verstretch>
+          </sizepolicy>
+         </property>
+         <property name="html">
+          <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Arial'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;msg_text&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <layout class="QHBoxLayout" name="horizontalLayout">
+         <item>
+          <widget class="QPushButton" name="pushButton_3">
+           <property name="text">
+            <string>Delete</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QPushButton" name="pushButton">
+           <property name="text">
+            <string>Back</string>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </item>
+       <item>
+        <spacer name="verticalSpacer_2">
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>40</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </widget>
+  </widget>
+  <widget class="QMenuBar" name="menubar">
+   <property name="geometry">
+    <rect>
+     <x>0</x>
+     <y>0</y>
+     <width>800</width>
+     <height>25</height>
+    </rect>
+   </property>
+  </widget>
+  <widget class="QStatusBar" name="statusbar"/>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/stacked2.ui b/stacked2.ui
new file mode 100644 (file)
index 0000000..b3b8ae7
--- /dev/null
@@ -0,0 +1,217 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MainWindow</class>
+ <widget class="QMainWindow" name="MainWindow">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>800</width>
+    <height>400</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Retro Conversations</string>
+  </property>
+  <widget class="QWidget" name="centralwidget">
+    <widget class="QWidget" name="sentMessageView">
+     <widget class="QWidget" name="verticalLayoutWidget_3">
+      <property name="geometry">
+       <rect>
+        <x>0</x>
+        <y>0</y>
+        <width>800</width>
+        <height>400</height>
+       </rect>
+      </property>
+      <layout class="QVBoxLayout" name="verticalLayout_3">
+       <property name="sizeConstraint">
+        <enum>QLayout::SetMaximumSize</enum>
+       </property>
+       <item>
+        <layout class="QHBoxLayout" name="horizontalLayout_3">
+         <item>
+          <widget class="QLabel" name="frame">
+           <property name="frameShape">
+            <enum>QFrame::Box</enum>
+           </property>
+           <property name="frameShadow">
+            <enum>QFrame::Raised</enum>
+           </property>
+           <property name="lineWidth">
+            <number>5</number>
+           </property>
+           <property name="midLineWidth">
+            <number>0</number>
+           </property>
+           <property name="text">
+            <string>xxxxxx</string>
+           </property>
+           <property name="alignment">
+            <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <layout class="QVBoxLayout" name="verticalLayout_4">
+           <property name="leftMargin">
+            <number>5</number>
+           </property>
+           <property name="rightMargin">
+            <number>0</number>
+           </property>
+           <item>
+            <widget class="QLabel" name="sent_msg_to">
+             <property name="font">
+              <font>
+               <pointsize>26</pointsize>
+              </font>
+             </property>
+             <property name="styleSheet">
+              <string>color:rgb(106, 106, 106)</string>
+             </property>
+             <property name="text">
+              <string>TextLabel</string>
+             </property>
+             <property name="alignment">
+              <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <widget class="QLabel" name="sent_msg_date">
+             <property name="frameShape">
+              <enum>QFrame::StyledPanel</enum>
+             </property>
+             <property name="text">
+              <string>TextLabel</string>
+             </property>
+             <property name="alignment">
+              <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <spacer name="verticalSpacer_3">
+             <property name="orientation">
+              <enum>Qt::Vertical</enum>
+             </property>
+             <property name="sizeHint" stdset="0">
+              <size>
+               <width>20</width>
+               <height>40</height>
+              </size>
+             </property>
+            </spacer>
+           </item>
+          </layout>
+         </item>
+         <item>
+          <spacer name="horizontalSpacer_2">
+           <property name="orientation">
+            <enum>Qt::Horizontal</enum>
+           </property>
+           <property name="sizeHint" stdset="0">
+            <size>
+             <width>40</width>
+             <height>20</height>
+            </size>
+           </property>
+          </spacer>
+         </item>
+        </layout>
+       </item>
+       <item>
+        <widget class="Line" name="line_3">
+         <property name="styleSheet">
+          <string>background:rgb(50, 50, 50);</string>
+         </property>
+         <property name="frameShadow">
+          <enum>QFrame::Plain</enum>
+         </property>
+         <property name="lineWidth">
+          <number>5</number>
+         </property>
+         <property name="orientation">
+          <enum>Qt::Horizontal</enum>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QLabel" name="sent_msg_text">
+         <property name="styleSheet">
+          <string>margin-top:5px</string>
+         </property>
+         <property name="text">
+          <string>TextLabel</string>
+         </property>
+         <property name="wordWrap">
+          <bool>true</bool>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <spacer name="verticalSpacer_4">
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>40</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+       <item>
+        <layout class="QHBoxLayout" name="horizontalLayout_4">
+         <item>
+          <widget class="QPushButton" name="sent_msg_delete">
+           <property name="text">
+            <string>Delete</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QPushButton" name="sent_msg_back">
+           <property name="text">
+            <string>Back</string>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </widget>
+  <widget class="QMenuBar" name="menubar">
+   <property name="geometry">
+    <rect>
+     <x>0</x>
+     <y>0</y>
+     <width>800</width>
+     <height>25</height>
+    </rect>
+   </property>
+  </widget>
+  <widget class="QStatusBar" name="statusbar"/>
+  <action name="actionOption_1">
+   <property name="text">
+    <string>Option 1</string>
+   </property>
+  </action>
+  <action name="actionOption_2">
+   <property name="text">
+    <string>Option 2</string>
+   </property>
+  </action>
+  <action name="actionBlabla2">
+   <property name="text">
+    <string>blabla2</string>
+   </property>
+  </action>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/test/GUI/__init__.py b/test/GUI/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/test/GUI/__init__.pyc b/test/GUI/__init__.pyc
new file mode 100644 (file)
index 0000000..9637d4a
Binary files /dev/null and b/test/GUI/__init__.pyc differ
diff --git a/test/GUI/inbox.ui b/test/GUI/inbox.ui
new file mode 100644 (file)
index 0000000..46ebfbe
--- /dev/null
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>InboxWindow</class>
+ <widget class="QMainWindow" name="InboxWindow">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>800</width>
+    <height>400</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>MainWindow</string>
+  </property>
+  <widget class="QWidget" name="centralwidget">
+   <widget class="QListView" name="listView">
+    <property name="geometry">
+     <rect>
+      <x>0</x>
+      <y>0</y>
+      <width>800</width>
+      <height>400</height>
+     </rect>
+    </property>
+   </widget>
+  </widget>
+  <widget class="QMenuBar" name="menubar">
+   <property name="geometry">
+    <rect>
+     <x>0</x>
+     <y>0</y>
+     <width>800</width>
+     <height>25</height>
+    </rect>
+   </property>
+  </widget>
+  <widget class="QStatusBar" name="statusbar"/>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/test/GUI/inbox_window.py b/test/GUI/inbox_window.py
new file mode 100644 (file)
index 0000000..2b74a81
--- /dev/null
@@ -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 (file)
index 0000000..04d483c
Binary files /dev/null and b/test/GUI/inbox_window.pyc differ
diff --git a/test/GUI/inbox_window.py~ b/test/GUI/inbox_window.py~
new file mode 100644 (file)
index 0000000..57c61cf
--- /dev/null
@@ -0,0 +1,39 @@
+# -*- 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!
+import sys
+from PySide.QtCore import *
+from PySide.QtGui import *
+
+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/main.ui b/test/GUI/main.ui
new file mode 100644 (file)
index 0000000..3495cdf
--- /dev/null
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MainWindow</class>
+ <widget class="QMainWindow" name="MainWindow">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>800</width>
+    <height>400</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>MainWindow</string>
+  </property>
+  <widget class="QWidget" name="centralwidget">
+   <widget class="QWidget" name="verticalLayoutWidget">
+    <property name="geometry">
+     <rect>
+      <x>0</x>
+      <y>0</y>
+      <width>801</width>
+      <height>371</height>
+     </rect>
+    </property>
+    <layout class="QVBoxLayout" name="verticalLayout">
+     <item>
+      <widget class="QPushButton" name="inbox_button">
+       <property name="text">
+        <string>Inbox</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="sent_button">
+       <property name="text">
+        <string>Sent</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <spacer name="verticalSpacer">
+       <property name="orientation">
+        <enum>Qt::Vertical</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>20</width>
+         <height>40</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+    </layout>
+   </widget>
+  </widget>
+  <widget class="QMenuBar" name="menubar">
+   <property name="geometry">
+    <rect>
+     <x>0</x>
+     <y>0</y>
+     <width>800</width>
+     <height>25</height>
+    </rect>
+   </property>
+  </widget>
+  <widget class="QStatusBar" name="statusbar"/>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/test/GUI/main_window.py b/test/GUI/main_window.py
new file mode 100644 (file)
index 0000000..b23bd7b
--- /dev/null
@@ -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 (file)
index 0000000..367319d
Binary files /dev/null and b/test/GUI/main_window.pyc differ
diff --git a/test/GUI/main_window.py~ b/test/GUI/main_window.py~
new file mode 100644 (file)
index 0000000..4bb1dc2
--- /dev/null
@@ -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 (file)
index 0000000..5f9912b
--- /dev/null
@@ -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 (file)
index 0000000..389baed
--- /dev/null
@@ -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 (file)
index 0000000..7c0f766
--- /dev/null
@@ -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 (file)
index 0000000..863bea6
--- /dev/null
@@ -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 (file)
index 0000000..b6681c8
--- /dev/null
@@ -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", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Arial\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<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>", 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 (file)
index 0000000..0e88d3d
--- /dev/null
@@ -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 (file)
index 0000000..acbd92d
Binary files /dev/null and b/windows.pyc differ
diff --git a/yagami.jpg b/yagami.jpg
new file mode 100755 (executable)
index 0000000..b66b948
Binary files /dev/null and b/yagami.jpg differ