Initial commit (Vesion 0.1)
[tablet-suite] / src / ui / pcsmenu.py
1 # Authors: Amaury Medeiros and Paulo Ouriques
2 # Software License: GPL
3
4 from PyQt4.QtCore import *
5 from PyQt4.QtGui import *
6
7 from backup.pcsbackup import *
8 from pcsuiutils import *
9
10 class PcsMenu(QMenuBar):
11
12     ''' Class that creates a menu bar for Pc Suite '''
13
14     def __init__(self, device_manager, parent = None):
15         super(PcsMenu,self).__init__(parent)
16         self.deviceManager = device_manager
17         self.create_menu_file()
18         #self.create_menu_web()
19         #self.create_menu_settings()
20         #self.create_menu_help()
21     
22     def create_menu_file(self):
23         
24             self.menu_file = QMenu("File")
25             
26             menu_list = [("Backup", self.show_backup_dialog,
27                           BACKUP_IMAGE)]
28 #                         ("Synchronize", self.pass_func, ""),
29 #                         ("Connect to Web", self.pass_func, ""),
30 #                         ("Contacts", self.pass_func, ""),
31 #                         ("Messages", self.pass_func, ""),
32 #                         ("Calendar", self.pass_func, ""),
33 #                         ("File manager", self.pass_func, ""),
34 #                         ("Tranfer music", self.pass_func, ""),
35 #                         ("Store images", self.pass_func, ""),
36 #                         ("Video Transfers", self.pass_func, ""),
37 #                         ("Install Applications", self.pass_func, ""),
38 #                         ("Update Phone's Software", self.pass_func,""),
39 #                         ("Download maps", self.pass_func, ""),
40 #                         ("Quit", self.pass_func, image._nokia_icon)]
41             
42             for tuple in menu_list:
43                 name = tuple[0]
44                 callback = tuple[1]
45                 icon = tuple[2]
46                         
47                 action = QAction(name, self.menu_file)
48                 self.menu_file.addAction(action)
49                 self.connect(action, SIGNAL("triggered()"), callback)
50                 action.setIcon(QIcon(icon))
51             
52             self.addMenu(self.menu_file)
53             
54     def create_menu_web(self):
55         self.menu_web = QMenu("Web")
56         
57         self.menu_web_pc_suite = QMenu("PC Suite at web")
58         self.menu_web.addMenu(self.menu_web_pc_suite)        
59         self.pc_suite_demonstration = QAction("PC Suite demonstration",
60                                               self.menu_web)
61         self.menu_web.addAction(self.pc_suite_demonstration)
62         
63         self.menu_web.addSeparator()
64         
65         self.registration_action = QAction("Registration", self.menu_web)
66         self.menu_web.addAction(self.registration_action)
67         self.browse_updates_action = QAction("Browse updates and complements",
68                                              self.menu_web)
69         self.menu_web.addAction(self.browse_updates_action)
70         
71         self.addMenu(self.menu_web)
72     
73     def create_menu_settings(self):
74         self.menu_settings = QMenu("Options")
75         
76         self.settings_action = QAction("Settings...", self.menu_settings)
77         self.menu_settings.addAction(self.settings_action)
78         self.manage_connections_action = QAction("Manage Connections",
79                                                  self.menu_settings)
80         self.menu_settings.addAction(self.manage_connections_action)
81         self.add_phones_action = QAction("Add more phones",
82                                          self.menu_settings)
83         self.menu_settings.addAction(self.add_phones_action)
84         self.rename_phone_action = QAction("Rename Phone", self.menu_settings)
85         self.menu_settings.addAction(self.rename_phone_action)
86         
87         self.addMenu(self.menu_settings)
88     
89     def create_menu_help(self):
90         self.menu_help = QMenu("?")
91         self.addMenu(self.menu_help)
92         
93     def show_backup_dialog(self):
94         deviceInfo = self.deviceManager.getCurrentDevice()
95         backup = PcsBackup(deviceInfo, self)
96         centralize(backup)
97         backup.show()
98