Added some code for starting
This commit is contained in:
0
src/wxUI/__init__.py
Normal file
0
src/wxUI/__init__.py
Normal file
9
src/wxUI/commonMessages.py
Normal file
9
src/wxUI/commonMessages.py
Normal file
@@ -0,0 +1,9 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
import wx
|
||||
import application
|
||||
|
||||
def no_data_entered():
|
||||
return wx.MessageDialog(None, _(u"You must provide Both user and password."), _(u"Information needed"), wx.ICON_ERROR).ShowModal()
|
||||
|
||||
def no_update_available():
|
||||
return wx.MessageDialog(None, _(u"Your {0} version is up to date").format(application.name,), _(u"Update"), style=wx.OK).ShowModal()
|
1
src/wxUI/dialogs/__init__.py
Normal file
1
src/wxUI/dialogs/__init__.py
Normal file
@@ -0,0 +1 @@
|
||||
import message
|
122
src/wxUI/dialogs/message.py
Normal file
122
src/wxUI/dialogs/message.py
Normal file
@@ -0,0 +1,122 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
import wx
|
||||
import widgetUtils
|
||||
|
||||
class textMessage(widgetUtils.BaseDialog):
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(textLimited, self).__init__(parent=None, *args, **kwargs)
|
||||
|
||||
def createTextArea(self, message="", text=""):
|
||||
self.panel = wx.Panel(self)
|
||||
self.label = wx.StaticText(self.panel, -1, message)
|
||||
self.text = wx.TextCtrl(self.panel, -1, text, size=(439, -1), style=wx.TE_MULTILINE)
|
||||
self.text.SetFocus()
|
||||
self.textBox = wx.BoxSizer(wx.HORIZONTAL)
|
||||
self.textBox.Add(self.label, 0, wx.ALL, 5)
|
||||
self.textBox.Add(self.text, 0, wx.ALL, 5)
|
||||
|
||||
def create_privacy_box(self):
|
||||
lbl = wx.StaticText(self.panel, wx.NewId(), _(u"Privacy"))
|
||||
self.privacy = wx.ComboBox(self.panel, wx.NewId(), choices=[_(u"All users"), _(u"Friends of friends"),], value=_(u"All users"), style=wx.CB_READONLY)
|
||||
self.privacyBox = wx.BoxSizer(wx.HORIZONTAL)
|
||||
self.privacyBox.Add(lbl, 0, wx.ALL, 5)
|
||||
self.privacyBox.Add(self.privacy, 0, wx.ALL, 5)
|
||||
|
||||
def text_focus(self):
|
||||
self.text.SetFocus()
|
||||
|
||||
def get_text(self):
|
||||
return self.text.GetValue()
|
||||
|
||||
def set_text(self, text):
|
||||
return self.text.ChangeValue(text)
|
||||
|
||||
def enable_button(self, buttonName):
|
||||
if getattr(self, buttonName):
|
||||
return getattr(self, buttonName).Enable()
|
||||
|
||||
def disable_button(self, buttonName):
|
||||
if getattr(self, buttonName):
|
||||
return getattr(self, buttonName).Disable()
|
||||
|
||||
def onSelect(self, ev):
|
||||
self.text.SelectAll()
|
||||
|
||||
def set_cursor_at_end(self):
|
||||
self.text.SetInsertionPoint(len(self.text.GetValue()))
|
||||
|
||||
def set_cursor_at_position(self, position):
|
||||
self.text.SetInsertionPoint(position)
|
||||
|
||||
def get_position(self):
|
||||
return self.text.GetInsertionPoint()
|
||||
|
||||
class post(textMessage):
|
||||
def createControls(self, title, message, text):
|
||||
self.mainBox = wx.BoxSizer(wx.VERTICAL)
|
||||
self.createTextArea(message, text)
|
||||
self.mainBox.Add(self.textBox, 0, wx.ALL, 5)
|
||||
self.create_privacy_box()
|
||||
self.mainBox.Add(self.privacyBox, 0, wx.ALL, 5)
|
||||
self.upload_image = wx.Button(self.panel, -1, _(u"Upload a picture"), size=wx.DefaultSize)
|
||||
self.upload_image.Enable(False)
|
||||
self.spellcheck = wx.Button(self.panel, -1, _("Spelling correction"), size=wx.DefaultSize)
|
||||
self.translateButton = wx.Button(self.panel, -1, _(u"Translate message"), size=wx.DefaultSize)
|
||||
self.okButton = wx.Button(self.panel, wx.ID_OK, _(u"Send"), size=wx.DefaultSize)
|
||||
self.okButton.SetDefault()
|
||||
cancelButton = wx.Button(self.panel, wx.ID_CANCEL, _(u"Close"), size=wx.DefaultSize)
|
||||
self.buttonsBox1 = wx.BoxSizer(wx.HORIZONTAL)
|
||||
self.buttonsBox1.Add(self.upload_image, 0, wx.ALL, 10)
|
||||
self.buttonsBox1.Add(self.spellcheck, 0, wx.ALL, 10)
|
||||
self.buttonsBox1.Add(self.translateButton, 0, wx.ALL, 10)
|
||||
self.mainBox.Add(self.buttonsBox1, 0, wx.ALL, 10)
|
||||
self.ok_cancelSizer = wx.BoxSizer(wx.HORIZONTAL)
|
||||
self.ok_cancelSizer.Add(self.okButton, 0, wx.ALL, 10)
|
||||
self.ok_cancelSizer.Add(cancelButton, 0, wx.ALL, 10)
|
||||
self.mainBox.Add(self.ok_cancelSizer)
|
||||
selectId = wx.NewId()
|
||||
self.Bind(wx.EVT_MENU, self.onSelect, id=selectId)
|
||||
self.accel_tbl = wx.AcceleratorTable([
|
||||
(wx.ACCEL_CTRL, ord('A'), selectId),])
|
||||
self.SetAcceleratorTable(self.accel_tbl)
|
||||
self.panel.SetSizer(self.mainBox)
|
||||
|
||||
def __init__(self, title, message, text):
|
||||
super(post, self).__init__()
|
||||
self.createControls(message, title, text)
|
||||
self.SetClientSize(self.mainBox.CalcMin())
|
||||
|
||||
def get_image(self):
|
||||
openFileDialog = wx.FileDialog(self, _(u"Select the picture to be uploaded"), "", "", _("Image files (*.png, *.jpg, *.gif)|*.png; *.jpg; *.gif"), wx.FD_OPEN | wx.FD_FILE_MUST_EXIST)
|
||||
if openFileDialog.ShowModal() == wx.ID_CANCEL:
|
||||
return None
|
||||
return openFileDialog.GetPath()
|
||||
|
||||
class comment(textMessage):
|
||||
def createControls(self, title, message, text):
|
||||
self.mainBox = wx.BoxSizer(wx.VERTICAL)
|
||||
self.createTextArea(message, text)
|
||||
self.mainBox.Add(self.textBox, 0, wx.ALL, 5)
|
||||
self.spellcheck = wx.Button(self.panel, -1, _("Spelling correction"), size=wx.DefaultSize)
|
||||
self.translateButton = wx.Button(self.panel, -1, _(u"Translate message"), size=wx.DefaultSize)
|
||||
self.okButton = wx.Button(self.panel, wx.ID_OK, _(u"Send"), size=wx.DefaultSize)
|
||||
self.okButton.SetDefault()
|
||||
cancelButton = wx.Button(self.panel, wx.ID_CANCEL, _(u"Close"), size=wx.DefaultSize)
|
||||
self.buttonsBox1 = wx.BoxSizer(wx.HORIZONTAL)
|
||||
self.buttonsBox1.Add(self.spellcheck, 0, wx.ALL, 10)
|
||||
self.buttonsBox1.Add(self.translateButton, 0, wx.ALL, 10)
|
||||
self.mainBox.Add(self.buttonsBox1, 0, wx.ALL, 10)
|
||||
self.ok_cancelSizer = wx.BoxSizer(wx.HORIZONTAL)
|
||||
self.ok_cancelSizer.Add(self.okButton, 0, wx.ALL, 10)
|
||||
self.ok_cancelSizer.Add(cancelButton, 0, wx.ALL, 10)
|
||||
self.mainBox.Add(self.ok_cancelSizer)
|
||||
selectId = wx.NewId()
|
||||
self.Bind(wx.EVT_MENU, self.onSelect, id=selectId)
|
||||
self.accel_tbl = wx.AcceleratorTable([(wx.ACCEL_CTRL, ord('A'), selectId),])
|
||||
self.SetAcceleratorTable(self.accel_tbl)
|
||||
self.panel.SetSizer(self.mainBox)
|
||||
|
||||
def __init__(self, title, message, text):
|
||||
super(comment, self).__init__()
|
||||
self.createControls(message, title, text)
|
||||
self.SetClientSize(self.mainBox.CalcMin())
|
104
src/wxUI/dialogs/postDialogs.py
Normal file
104
src/wxUI/dialogs/postDialogs.py
Normal file
@@ -0,0 +1,104 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
import wx
|
||||
import widgetUtils
|
||||
|
||||
class basicPost(widgetUtils.BaseDialog):
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(basicPost, self).__init__(parent=None, *args, **kwargs)
|
||||
self.panel = wx.Panel(self, -1)
|
||||
self.sizer = wx.BoxSizer(wx.VERTICAL)
|
||||
|
||||
def done(self):
|
||||
self.panel.SetSizer(self.sizer)
|
||||
self.SetClientSize(self.sizer.CalcMin())
|
||||
|
||||
def create_post_view(self, label=_(u"Message")):
|
||||
lbl = wx.StaticText(self.panel, -1, label)
|
||||
self.post_view = wx.TextCtrl(self.panel, -1, size=(730, -1), style=wx.TE_READONLY|wx.TE_MULTILINE)
|
||||
box = wx.BoxSizer(wx.HORIZONTAL)
|
||||
box.Add(lbl, 0, wx.ALL, 5)
|
||||
box.Add(self.post_view, 0, wx.ALL, 5)
|
||||
return box
|
||||
|
||||
def create_comments_list(self):
|
||||
self.comments = widgetUtils.list(self.panel, _(u"User"), _(u"Comment"), _(u"Date"), _(u"Likes"), style=wx.LC_REPORT)
|
||||
box = wx.BoxSizer(wx.HORIZONTAL)
|
||||
box.Add(self.comments.list, 0, wx.ALL, 5)
|
||||
return box
|
||||
|
||||
def create_likes_box(self):
|
||||
self.likes = wx.Button(self.panel, -1, _(u"Loading data..."))
|
||||
return self.likes
|
||||
|
||||
def create_shares_box(self):
|
||||
self.shares = wx.Button(self.panel, -1, _(u"Loading data..."))
|
||||
return self.shares
|
||||
|
||||
def create_action_buttons(self, comment=True):
|
||||
self.like = wx.Button(self.panel, -1, _(u"Like"))
|
||||
if comment: self.comment = wx.Button(self.panel, -1, _(u"Add comment"))
|
||||
box = wx.BoxSizer(wx.HORIZONTAL)
|
||||
box.Add(self.like, 0, wx.ALL, 5)
|
||||
if comment: box.Add(self.comment, 0, wx.ALL, 5)
|
||||
return box
|
||||
|
||||
def create_tools_button(self):
|
||||
self.tools = wx.Button(self.panel, -1, _(u"Actions"))
|
||||
|
||||
def create_dialog_buttons(self):
|
||||
self.close = wx.Button(self.panel, wx.ID_CANCEL, _(u"Close"))
|
||||
return self.close
|
||||
|
||||
def set_post(self, text):
|
||||
if hasattr(self, "post_view"):
|
||||
self.post_view.ChangeValue(text)
|
||||
else:
|
||||
return False
|
||||
|
||||
def insert_comments(self, comments):
|
||||
for i in comments:
|
||||
self.comments.insert_item(False, *i)
|
||||
|
||||
def set_likes(self, likes):
|
||||
if hasattr(self, "likes"):
|
||||
self.likes.SetLabel(_(u"{0} people like this").format(likes,))
|
||||
else:
|
||||
return False
|
||||
|
||||
def set_shares(self, shares):
|
||||
if hasattr(self, "shares"):
|
||||
self.shares.SetLabel(_(u"Shared {0} times").format(shares,))
|
||||
else:
|
||||
return False
|
||||
|
||||
class post(basicPost):
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(post, self).__init__(*args, **kwargs)
|
||||
post_view_box = self.create_post_view()
|
||||
self.sizer.Add(post_view_box, 0, wx.ALL, 5)
|
||||
self.create_tools_button()
|
||||
self.sizer.Add(self.tools, 0, wx.ALL, 5)
|
||||
likes_box = self.create_likes_box()
|
||||
self.sizer.Add(likes_box, 0, wx.ALL, 5)
|
||||
shares_box = self.create_shares_box()
|
||||
self.sizer.Add(shares_box, 0, wx.ALL, 5)
|
||||
actions_box = self.create_action_buttons()
|
||||
self.sizer.Add(actions_box, 0, wx.ALL, 5)
|
||||
comments_box = self.create_comments_list()
|
||||
self.sizer.Add(comments_box, 0, wx.ALL, 5)
|
||||
self.sizer.Add(self.create_dialog_buttons())
|
||||
self.done()
|
||||
|
||||
class comment(basicPost):
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(comment, self).__init__(*args, **kwargs)
|
||||
post_view_box = self.create_post_view()
|
||||
self.sizer.Add(post_view_box, 0, wx.ALL, 5)
|
||||
self.create_tools_button()
|
||||
self.sizer.Add(self.tools, 0, wx.ALL, 5)
|
||||
likes_box = self.create_likes_box()
|
||||
self.sizer.Add(likes_box, 0, wx.ALL, 5)
|
||||
actions_box = self.create_action_buttons(comment=False)
|
||||
self.sizer.Add(actions_box, 0, wx.ALL, 5)
|
||||
self.sizer.Add(self.create_dialog_buttons())
|
||||
self.done()
|
31
src/wxUI/dialogs/select_album.py
Normal file
31
src/wxUI/dialogs/select_album.py
Normal file
@@ -0,0 +1,31 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
import wx
|
||||
|
||||
class selectAlbum(wx.Dialog):
|
||||
def __init__(self, albums):
|
||||
super(selectAlbum, self).__init__(parent=None, title=_(u"Select the album where you will upload the photo"))
|
||||
panel = wx.Panel(self)
|
||||
self.lista = wx.ListBox(panel, -1, choices=albums)
|
||||
self.lista.SetFocus()
|
||||
self.lista.SetSelection(0)
|
||||
self.lista.SetSize(self.lista.GetBestSize())
|
||||
sizer = wx.BoxSizer(wx.VERTICAL)
|
||||
sizer.Add(self.lista, 0, wx.ALL, 5)
|
||||
goBtn = wx.Button(panel, wx.ID_OK)
|
||||
goBtn.SetDefault()
|
||||
cancelBtn = wx.Button(panel, wx.ID_CANCEL)
|
||||
btnSizer = wx.BoxSizer()
|
||||
btnSizer.Add(goBtn, 0, wx.ALL, 5)
|
||||
btnSizer.Add(cancelBtn, 0, wx.ALL, 5)
|
||||
sizer.Add(btnSizer, 0, wx.ALL, 5)
|
||||
panel.SetSizer(sizer)
|
||||
self.SetClientSize(sizer.CalcMin())
|
||||
|
||||
def get_string(self):
|
||||
return self.lista.GetStringSelection()
|
||||
|
||||
def get_item(self):
|
||||
return self.lista.GetSelection()
|
||||
|
||||
def get_response(self):
|
||||
return self.ShowModal()
|
35
src/wxUI/dialogs/urlList.py
Normal file
35
src/wxUI/dialogs/urlList.py
Normal file
@@ -0,0 +1,35 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
import wx
|
||||
|
||||
class urlList(wx.Dialog):
|
||||
def __init__(self):
|
||||
super(urlList, self).__init__(parent=None, title=_(u"Select URL"))
|
||||
panel = wx.Panel(self)
|
||||
self.lista = wx.ListBox(panel, -1)
|
||||
self.lista.SetFocus()
|
||||
self.lista.SetSize(self.lista.GetBestSize())
|
||||
sizer = wx.BoxSizer(wx.VERTICAL)
|
||||
sizer.Add(self.lista, 0, wx.ALL, 5)
|
||||
goBtn = wx.Button(panel, wx.ID_OK)
|
||||
goBtn.SetDefault()
|
||||
cancelBtn = wx.Button(panel, wx.ID_CANCEL)
|
||||
btnSizer = wx.BoxSizer()
|
||||
btnSizer.Add(goBtn, 0, wx.ALL, 5)
|
||||
btnSizer.Add(cancelBtn, 0, wx.ALL, 5)
|
||||
sizer.Add(btnSizer, 0, wx.ALL, 5)
|
||||
panel.SetSizer(sizer)
|
||||
self.SetClientSize(sizer.CalcMin())
|
||||
|
||||
def populate_list(self, urls):
|
||||
for i in urls:
|
||||
self.lista.Append(i)
|
||||
self.lista.SetSelection(0)
|
||||
|
||||
def get_string(self):
|
||||
return self.lista.GetStringSelection()
|
||||
|
||||
def get_item(self):
|
||||
return self.lista.GetSelection()
|
||||
|
||||
def get_response(self):
|
||||
return self.ShowModal()
|
80
src/wxUI/mainWindow.py
Normal file
80
src/wxUI/mainWindow.py
Normal file
@@ -0,0 +1,80 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
import wx
|
||||
import application
|
||||
|
||||
class mainWindow(wx.Frame):
|
||||
def makeMenu(self):
|
||||
mb = wx.MenuBar()
|
||||
buffer = wx.Menu()
|
||||
self.update = buffer.Append(wx.NewId(), _(u"Update current buffer"))
|
||||
self.load_previous_items = buffer.Append(wx.NewId(), _(u"Load previous items"))
|
||||
mb.Append(buffer, _(u"Buffer"))
|
||||
help_ = wx.Menu()
|
||||
self.about = help_.Append(wx.NewId(), _(u"About {0}").format(application.name,))
|
||||
self.check_for_updates = help_.Append(wx.NewId(), _(u"Check for updates"))
|
||||
mb.Append(help_, _(u"Help"))
|
||||
self.SetMenuBar(mb)
|
||||
|
||||
def __init__(self):
|
||||
super(mainWindow, self).__init__(parent=None, id=wx.NewId(), title=application.name)
|
||||
self.makeMenu()
|
||||
self.panel = wx.Panel(self)
|
||||
self.sizer = wx.BoxSizer(wx.VERTICAL)
|
||||
self.sb = self.CreateStatusBar()
|
||||
self.tb = wx.Treebook(self.panel, -1)
|
||||
self.sizer.Add(self.tb, 0, wx.ALL, 5)
|
||||
|
||||
def realize(self):
|
||||
self.panel.SetSizer(self.sizer)
|
||||
self.SetClientSize(self.sizer.CalcMin())
|
||||
|
||||
def change_status(self, status):
|
||||
self.sb.SetStatusText(status)
|
||||
|
||||
def connection_error(self):
|
||||
wx.MessageDialog(self, _(u"There is a connection error. Check your internet connection and try again later."), _(u"Connection error"), wx.ICON_ERROR).ShowModal()
|
||||
|
||||
def get_buffer_count(self):
|
||||
return self.tb.GetPageCount()
|
||||
|
||||
def add_buffer(self, buffer, name):
|
||||
self.tb.AddPage(buffer, name)
|
||||
|
||||
def insert_buffer(self, buffer, name, pos):
|
||||
self.tb.InsertSubPage(pos, buffer, name)
|
||||
|
||||
def search(self, name_):
|
||||
for i in xrange(0, self.tb.GetPageCount()):
|
||||
if self.tb.GetPage(i).name == name_: return i
|
||||
|
||||
def get_current_buffer(self):
|
||||
return self.tb.GetCurrentPage()
|
||||
|
||||
def get_current_buffer_pos(self):
|
||||
return self.tb.GetSelection()
|
||||
|
||||
def get_buffer(self, pos):
|
||||
return self.GetPage(pos)
|
||||
|
||||
def change_buffer(self, position):
|
||||
self.tb.ChangeSelection(position)
|
||||
|
||||
def get_buffer_text(self):
|
||||
return self.tb.GetPageText(self.tb.GetSelection())
|
||||
|
||||
def get_buffer_by_id(self, id):
|
||||
return self.nb.FindWindowById(id)
|
||||
|
||||
def advance_selection(self, forward):
|
||||
self.tb.AdvanceSelection(forward)
|
||||
|
||||
def about_dialog(self, *args, **kwargs):
|
||||
info = wx.AboutDialogInfo()
|
||||
info.SetName(application.name)
|
||||
info.SetVersion(application.version)
|
||||
info.SetDescription(application.description)
|
||||
info.SetCopyright(application.copyright)
|
||||
# info.SetTranslators(application.translators)
|
||||
# info.SetLicence(application.licence)
|
||||
info.AddDeveloper(application.author)
|
||||
wx.AboutBox(info)
|
54
src/wxUI/menus.py
Normal file
54
src/wxUI/menus.py
Normal file
@@ -0,0 +1,54 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
import wx
|
||||
|
||||
class postMenu(wx.Menu):
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(postMenu, self).__init__(*args, **kwargs)
|
||||
self.open = wx.MenuItem(self, wx.NewId(), _(u"Open"))
|
||||
self.AppendItem(self.open)
|
||||
self.like = wx.MenuItem(self, wx.NewId(), _(u"Like"))
|
||||
self.AppendItem(self.like)
|
||||
self.unlike = wx.MenuItem(self, wx.NewId(), _(u"Unlike"))
|
||||
self.AppendItem(self.unlike)
|
||||
self.comment = wx.MenuItem(self, wx.NewId(), _(u"Add comment"))
|
||||
self.AppendItem(self.comment)
|
||||
self.post_in_wall = self.Append(wx.NewId(), _(u"Post to this profile"))
|
||||
self.AppendItem(self.post_in_wall)
|
||||
self.post_in_wall.Enable(False)
|
||||
|
||||
def create_specific_post_options(self):
|
||||
self.update = wx.MenuItem(self, wx.NewId(), _(u"Update"))
|
||||
self.AppendItem(self.update)
|
||||
self.delete = wx.MenuItem(self, wx.NewId(), _(u"Delete"))
|
||||
self.AppendItem(self.delete)
|
||||
|
||||
class commentMenu(wx.Menu):
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(commentMenu, self).__init__(*args, **kwargs)
|
||||
self.open = wx.MenuItem(self, wx.NewId(), _(u"Open"))
|
||||
self.AppendItem(self.open)
|
||||
self.like = wx.MenuItem(self, wx.NewId(), _(u"Like"))
|
||||
self.AppendItem(self.like)
|
||||
self.unlike = wx.MenuItem(self, -1, _(u"Unlike"))
|
||||
self.AppendItem(self.unlike)
|
||||
|
||||
def create_specific_comment_options(self):
|
||||
self.delete = wx.MenuItem(self, wx.NewId(), _(u"Delete"))
|
||||
self.AppendItem(self.delete)
|
||||
|
||||
class notificationsMenu(wx.Menu):
|
||||
def __init__(self):
|
||||
super(notificationsMenu, self).__init__()
|
||||
self.mark_as_read = wx.MenuItem(self, wx.NewId(), _(u"Mark as read"))
|
||||
self.AppendItem(self.mark_as_read)
|
||||
|
||||
class toolsMenu(wx.Menu):
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(toolsMenu, self).__init__(*args, **kwargs)
|
||||
self.url = wx.MenuItem(self, -1, _(u"Open URL"))
|
||||
self.AppendItem(self.url)
|
||||
# self.url.Enable(False)
|
||||
self.translate = wx.MenuItem(self, -1, _(u"Translate"))
|
||||
self.AppendItem(self.translate)
|
||||
self.CheckSpelling = wx.MenuItem(self, -1, _(u"Check Spelling"))
|
||||
self.AppendItem(self.CheckSpelling)
|
0
src/wxUI/tabs/__init__.py
Normal file
0
src/wxUI/tabs/__init__.py
Normal file
99
src/wxUI/tabs/home.py
Normal file
99
src/wxUI/tabs/home.py
Normal file
@@ -0,0 +1,99 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
import wx
|
||||
import widgetUtils
|
||||
from pubsub import pub
|
||||
|
||||
class homeTab(wx.Panel):
|
||||
|
||||
def create_list(self):
|
||||
self.list = widgetUtils.list(self, *[_(u"User"), _(u"Text"), _(u"Date")], style=wx.LC_REPORT)
|
||||
self.list.set_windows_size(0, 80)
|
||||
self.list.set_windows_size(1, 190)
|
||||
self.list.set_windows_size(2, 40)
|
||||
self.list.set_size()
|
||||
self.list.list.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self.OnKeyDown)
|
||||
|
||||
def create_post_buttons(self):
|
||||
self.post = wx.Button(self, -1, _(u"Post in facebook"))
|
||||
self.postBox = wx.BoxSizer(wx.HORIZONTAL)
|
||||
self.postBox.Add(self.post, 0, wx.ALL, 5)
|
||||
|
||||
def __init__(self, parent):
|
||||
super(homeTab, self).__init__(parent=parent)
|
||||
sizer = wx.BoxSizer(wx.VERTICAL)
|
||||
self.create_post_buttons()
|
||||
sizer.Add(self.postBox, 0, wx.ALL, 5)
|
||||
self.create_list()
|
||||
sizer.Add(self.list.list, 0, wx.ALL, 5)
|
||||
self.SetSizer(sizer)
|
||||
self.SetClientSize(sizer.CalcMin())
|
||||
|
||||
def OnKeyDown(self, ev=None):
|
||||
pub.sendMessage("show-current-status", buffer=self.name)
|
||||
ev.Skip()
|
||||
|
||||
def showMenu(self, ev):
|
||||
if self.results.get_count() == 0: return
|
||||
pub.sendMessage("show-menu", position=ev.GetPosition())
|
||||
|
||||
def showMenuByKey(self, ev):
|
||||
if self.results.get_count() == 0: return
|
||||
if ev.GetKeyCode() == wx.WXK_WINDOWS_MENU:
|
||||
pub.sendMessage("show-menu", position=self.results.list.GetPosition())
|
||||
|
||||
class feedTab(homeTab):
|
||||
def __init__(self, parent):
|
||||
super(feedTab, self).__init__(parent=parent)
|
||||
self.name = "me_feed"
|
||||
|
||||
class audioTab(homeTab):
|
||||
def create_list(self):
|
||||
self.list = widgetUtils.list(self, *[_(u"Title"), _(u"Artist"), _(u"Duration")], style=wx.LC_REPORT)
|
||||
self.list.set_windows_size(0, 80)
|
||||
self.list.set_windows_size(1, 190)
|
||||
self.list.set_windows_size(2, 40)
|
||||
self.list.set_size()
|
||||
self.list.list.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self.OnKeyDown)
|
||||
|
||||
class notificationsTab(homeTab):
|
||||
def __init__(self, parent):
|
||||
super(notificationsTab, self).__init__(parent=parent)
|
||||
self.name = "notifications"
|
||||
|
||||
def OnKeyDown(self, ev=None):
|
||||
pub.sendMessage("show-notification", buffer=self.name)
|
||||
ev.Skip()
|
||||
|
||||
def create_list(self):
|
||||
self.list = widgetUtils.list(self, *[_(u"Notification")], style=wx.LC_REPORT)
|
||||
self.list.set_windows_size(0, 190)
|
||||
self.list.list.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self.OnKeyDown)
|
||||
|
||||
class albumTab(homeTab):
|
||||
def __init__(self, parent):
|
||||
super(albumTab, self).__init__(parent=parent)
|
||||
self.name = "albums"
|
||||
|
||||
def OnKeyDown(self, ev=None):
|
||||
pub.sendMessage("show-album", buffer=self.name)
|
||||
ev.Skip()
|
||||
|
||||
def create_list(self):
|
||||
self.list = widgetUtils.list(self, *[_(u"User"), _(u"Name"), _(u"Description"), _(u"Photos"), _(u"Created at")], style=wx.LC_REPORT)
|
||||
self.list.set_windows_size(0, 190)
|
||||
self.list.set_windows_size(1, 320)
|
||||
self.list.set_windows_size(2, 513)
|
||||
self.list.set_windows_size(3, 390)
|
||||
self.list.set_windows_size(4, 180)
|
||||
self.list.list.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self.OnKeyDown)
|
||||
|
||||
class friendsTab(homeTab):
|
||||
def OnKeyDown(self, ev=None):
|
||||
pub.sendMessage("show-album", buffer=self.name)
|
||||
ev.Skip()
|
||||
|
||||
def create_list(self):
|
||||
self.list = widgetUtils.list(self, *[_(u"Name")], style=wx.LC_REPORT)
|
||||
self.list.set_windows_size(0, 400)
|
||||
self.list.list.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self.OnKeyDown)
|
||||
|
Reference in New Issue
Block a user