2016-02-14 00:06:36 +01:00
# -*- coding: utf-8 -*-
import wx
import application
class mainWindow ( wx . Frame ) :
def makeMenu ( self ) :
mb = wx . MenuBar ( )
2016-04-05 00:54:59 +02:00
app_ = wx . Menu ( )
2016-06-19 19:25:06 +02:00
create = wx . Menu ( )
self . audio_album = create . Append ( wx . NewId ( ) , _ ( u " Audio album " ) )
2016-08-14 14:46:41 +02:00
self . video_album = create . Append ( wx . NewId ( ) , _ ( u " Video album " ) )
2016-06-19 19:25:06 +02:00
app_ . AppendMenu ( wx . NewId ( ) , _ ( u " Create " ) , create )
2016-06-29 05:32:32 +02:00
delete = wx . Menu ( )
self . delete_audio_album = delete . Append ( wx . NewId ( ) , _ ( u " Audio album " ) )
2016-08-14 14:46:41 +02:00
self . delete_video_album = delete . Append ( wx . NewId ( ) , _ ( u " Video album " ) )
2016-06-29 05:32:32 +02:00
app_ . AppendMenu ( wx . NewId ( ) , _ ( u " Delete " ) , delete )
2016-04-05 00:54:59 +02:00
self . settings_dialog = app_ . Append ( wx . NewId ( ) , _ ( u " Preferences " ) )
2016-02-14 00:06:36 +01:00
buffer = wx . Menu ( )
2016-06-19 19:25:06 +02:00
search = wx . Menu ( )
self . search_audios = search . Append ( wx . NewId ( ) , _ ( u " Audio " ) )
2016-04-12 22:36:30 +02:00
self . timeline = buffer . Append ( wx . NewId ( ) , _ ( u " &New timeline " ) )
2016-06-19 19:25:06 +02:00
buffer . AppendMenu ( wx . NewId ( ) , _ ( u " Search " ) , search )
2016-02-24 00:49:55 +01:00
self . update_buffer = buffer . Append ( wx . NewId ( ) , _ ( u " Update current buffer " ) )
2016-02-14 00:06:36 +01:00
self . load_previous_items = buffer . Append ( wx . NewId ( ) , _ ( u " Load previous items " ) )
2016-03-27 08:11:52 +02:00
self . remove_buffer_ = buffer . Append ( wx . NewId ( ) , _ ( u " &Remove buffer " ) )
2016-04-05 00:54:59 +02:00
mb . Append ( app_ , _ ( u " Application " ) )
2016-02-14 00:06:36 +01:00
mb . Append ( buffer , _ ( u " Buffer " ) )
2016-07-19 00:34:37 +02:00
player = wx . Menu ( )
self . player_play = player . Append ( wx . NewId ( ) , _ ( u " Play " ) )
self . player_play_all = player . Append ( wx . NewId ( ) , _ ( u " Play all " ) )
self . player_stop = player . Append ( wx . NewId ( ) , _ ( u " Stop " ) )
self . player_previous = player . Append ( wx . NewId ( ) , _ ( u " Previous " ) )
self . player_next = player . Append ( wx . NewId ( ) , _ ( u " Next " ) )
self . player_volume_down = player . Append ( wx . NewId ( ) , _ ( u " Volume down " ) )
self . player_volume_up = player . Append ( wx . NewId ( ) , _ ( u " Volume up " ) )
self . player_mute = player . Append ( wx . NewId ( ) , _ ( u " Mute " ) )
2016-02-14 00:06:36 +01:00
help_ = wx . Menu ( )
self . about = help_ . Append ( wx . NewId ( ) , _ ( u " About {0} " ) . format ( application . name , ) )
2016-06-29 20:16:35 +02:00
self . documentation = help_ . Append ( wx . NewId ( ) , _ ( u " Manual " ) )
2016-02-14 00:06:36 +01:00
self . check_for_updates = help_ . Append ( wx . NewId ( ) , _ ( u " Check for updates " ) )
2016-04-04 18:18:42 +02:00
self . changelog = help_ . Append ( wx . NewId ( ) , _ ( u " Chan&gelog " ) )
2016-07-19 00:34:37 +02:00
mb . Append ( player , _ ( u " Audio player " ) )
2016-02-14 00:06:36 +01:00
mb . Append ( help_ , _ ( u " Help " ) )
self . SetMenuBar ( mb )
def __init__ ( self ) :
super ( mainWindow , self ) . __init__ ( parent = None , id = wx . NewId ( ) , title = application . name )
2016-06-08 12:12:25 +02:00
self . Maximize ( )
2016-02-14 00:06:36 +01:00
self . makeMenu ( )
self . panel = wx . Panel ( self )
self . sizer = wx . BoxSizer ( wx . VERTICAL )
self . sb = self . CreateStatusBar ( )
self . tb = wx . Treebook ( self . panel , - 1 )
2016-06-05 15:11:25 +02:00
self . sizer . Add ( self . tb , 1 , wx . ALL | wx . EXPAND , 5 )
2016-02-14 00:06:36 +01:00
def realize ( self ) :
self . panel . SetSizer ( self . sizer )
self . SetClientSize ( self . sizer . CalcMin ( ) )
2016-06-05 15:11:25 +02:00
self . Layout ( )
self . SetSize ( self . GetBestSize ( ) )
2016-02-14 00:06:36 +01:00
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 ) :
2016-05-25 18:33:57 +02:00
return self . tb . InsertSubPage ( pos , buffer , name )
2016-02-14 00:06:36 +01:00
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 )
2016-04-05 15:35:25 +02:00
info . SetTranslators ( application . translators )
2016-02-14 00:06:36 +01:00
# info.SetLicence(application.licence)
info . AddDeveloper ( application . author )
2016-03-23 15:38:18 +01:00
wx . AboutBox ( info )
2016-03-27 08:11:52 +02:00
def remove_buffer ( self , pos ) :
self . tb . DeletePage ( pos )