Check-in [805dbd5181]
Overview
| Comment: | Replace statusbar with plain gtk.Label, use glib.timeout_add for clearing it up implicitly. |
|---|---|
| Downloads: | Tarball | ZIP archive | SQL archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
805dbd51814d23a9cbbcd91d580f849f |
| User & Date: | mario on 2015-04-25 00:39:10 |
| Other Links: | manifest | tags |
Context
|
2015-04-26
| ||
| 15:34 | Add custom pls extractor (for unordered playlist entries), keep regex method as fallback. More logging. check-in: 0725d3fbc8 user: mario tags: trunk | |
|
2015-04-25
| ||
| 00:39 | Replace statusbar with plain gtk.Label, use glib.timeout_add for clearing it up implicitly. check-in: 805dbd5181 user: mario tags: trunk | |
|
2015-04-24
| ||
| 22:55 | More examples for recording/streamripper configuration. check-in: e8560b51b5 user: mario tags: trunk | |
Changes
Modified channels/internet_radio.py from [1cd93c503e] to [7d08db49a9].
| ︙ | ︙ | |||
77 78 79 80 81 82 83 |
"/" + ("page"+str(page) if page>1 else "")
)
)
# Is there a next page?
if str(page+1) not in rx_pages.findall(html[-1]):
break
| | | 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
"/" + ("page"+str(page) if page>1 else "")
)
)
# Is there a next page?
if str(page+1) not in rx_pages.findall(html[-1]):
break
self.parent.status(float(page)/float(max_pages+1))
# Alternatively try regex or pyquery parsing
#log.HTTP(html)
for use_rx in [not conf.pyquery, conf.pyquery]:
try:
entries = (self.with_regex(html) if use_rx else self.with_dom(html))
if len(entries):
|
| ︙ | ︙ |
Modified gtk3.xml.gz from [075cbcb73a] to [fbb5039142].
cannot compute difference between binary files
Modified st2.py from [d0ecae043d] to [3eb72c0f83].
| ︙ | ︙ | |||
37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
import sys
import os
import re
from copy import copy
import inspect
import traceback
from threading import Thread
# add library path (either global setup, or pyzip basename)
if not os.path.dirname(__file__) in sys.path:
sys.path.insert(0, os.path.dirname(__file__))
# initializes itself, so all conf.vars are available right away
from config import *
| > | 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
import sys
import os
import re
from copy import copy
import inspect
import traceback
from threading import Thread
import time
# add library path (either global setup, or pyzip basename)
if not os.path.dirname(__file__) in sys.path:
sys.path.insert(0, os.path.dirname(__file__))
# initializes itself, so all conf.vars are available right away
from config import *
|
| ︙ | ︙ | |||
353 354 355 356 357 358 359 |
def switch_notebook_tabs_position(self, w, pos):
self.notebook_channels.set_tab_pos(pos);
| | | > | < | | < < < > | > > | | < | < | | > > > > > > > > > | 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 |
def switch_notebook_tabs_position(self, w, pos):
self.notebook_channels.set_tab_pos(pos);
# Shortcut to statusbar and progressbar.
# Either pass a string "" or a float 0.5, the message and pulse will be automatically
# removed after 5 seconds now.
def status(self, text=None, timeout=3):
self.status_last = time.time() + timeout
# progressbar
if isinstance(text, (int, float)):
log.FLOAT(text)
if (text <= 0): # unknown state
uikit.do(self.progress.pulse, immediate=1)
elif text >= 0.999 or text < 0.0: # completed
uikit.do(self.progress.hide)
else: # show percentage
uikit.do(self.progress.show, immediate=1)
uikit.do(self.progress.set_fraction, text, immediate=1)
# add text
elif isinstance(text, (str, unicode)):
uikit.do(self.statusbar.set_text, text)
# timeout
if not text or time.time() >= self.status_last:
self.statusbar.set_text("")
self.progress.hide()
return False
# add timer
else:
gobject.timeout_add(int(timeout*1000), self.status)
return True
# load plugins from /usr/share/streamtuner2/channels/
def load_plugin_channels(self):
# initialize plugin modules (pre-ordered)
ls = module_list()
|
| ︙ | ︙ |