@ -40,6 +40,7 @@ from efl.elementary import Spinner
# ELM_SEL_FORMAT_TEXT
from . Widgets import UnitSpinner
from . . session import lt_version_post_breaking_change
EXPAND_BOTH = EVAS_HINT_EXPAND , EVAS_HINT_EXPAND
EXPAND_HORIZ = EVAS_HINT_EXPAND , 0.0
@ -139,9 +140,13 @@ seed, this flag has no effect.'''
def __init__ ( self , parent , session , t_uri = None ) :
DialogWindow . __init__ (
self , parent , " addtorrent " , _ ( " Add Torrent " ) ,
size = ( scale * 400 , scale * 400 ) , autodel = Tru e
size = ( scale * 400 , scale * 400 ) , autodel = Fals e
)
def _cb_close ( self ) :
self . hide ( )
self . callback_delete_request_add ( lambda o : _cb_close ( o ) )
self . add_dict = { }
scrol = Scroller (
@ -160,20 +165,20 @@ seed, this flag has no effect.'''
box . pack_end ( hbox )
hbox . show ( )
uri_entry = Entry (
self . uri_entry = Entry (
box , size_hint_weight = EXPAND_HORIZ , size_hint_align = FILL_HORIZ ,
single_line = True , scrollable = True
)
uri_entry . part_text_set ( " guide " , _ ( " Enter torrent file path / magnet URI / info hash " ) )
self . uri_entry . part_text_set ( " guide " , _ ( " Enter torrent file path / magnet URI / info hash " ) )
if t_uri :
uri_entry . entry = utf8_to_markup ( t_uri )
self . uri_entry . entry = utf8_to_markup ( t_uri )
hbox . pack_end ( uri_entry )
uri_entry . show ( )
hbox . pack_end ( self . uri_entry )
self . uri_entry . show ( )
fsb = Button ( box , text = _ ( " Select file " ) )
fsb . callback_clicked_add ( lambda x : TorrentFs ( self , uri_entry ) )
fsb . callback_clicked_add ( lambda x : TorrentFs ( self , self . uri_entry ) )
hbox . pack_end ( fsb )
fsb . show ( )
@ -239,7 +244,12 @@ seed, this flag has no effect.'''
flags = flags ^ int ( add_torrent_params_flags_t . flag_auto_managed )
self . add_dict [ " flags " ] = flags
for name , flag in sorted ( add_torrent_params_flags_t . names . items ( ) ) :
if lt_version_post_breaking_change :
items = sorted ( add_torrent_params_flags_t . __dict__ . items ( ) )
flags_list = [ flag for flag in items if not flag [ 0 ] . startswith ( " _ " ) ]
else :
flags_list = sorted ( add_torrent_params_flags_t . names . items ( ) )
for name , flag in flags_list :
if not int ( flag ) in self . names . keys ( ) :
continue
c = Check (
@ -312,6 +322,9 @@ seed, this flag has no effect.'''
box . show ( )
scrol . show ( )
def del_dialog_cb ( btn ) :
self . hide ( )
def add_torrent_cb ( btn , uri_entry , session , add_dict ) :
uri = uri_entry . entry
@ -323,11 +336,13 @@ seed, this flag has no effect.'''
session . fill_add_dict_based_on_uri ( add_dict , uri )
session . add_torrent_with_dict ( add_dict )
self . delete ( )
self . hide ( )
# self.delete()
ok_btn . callback_clicked_add (
add_torrent_cb , uri_entry , session , self . add_dict )
cancel_btn . callback_clicked_add ( lambda x : self . delete ( ) )
add_torrent_cb , self . uri_entry , session , self . add_dict )
cancel_btn . callback_clicked_add ( del_dialog_cb )
# cancel_btn.callback_clicked_add(lambda x: self.delete())
self . show ( )