Corrective work now that the mess of files in ui dir has been removed.

This commit is contained in:
noisymime 2008-01-21 11:09:17 +00:00
parent 536eeb2369
commit fab9f5c6ab
28 changed files with 110 additions and 46 deletions

View File

@ -22,14 +22,16 @@ class GlossMgr:
transition_path = "transitions/menus/" + self.transition
self.transition = __import__(transition_path).Transition(self)
#The background is a bit messy due to the depth issues :(
background = self.themeMgr.get_texture("background", None, None)
(width, height) = background.get_abs_size()
print background.get_abs_size()
background.set_anchor_point(0, 0)
#background.set_anchor_point_from_gravity(clutter.GRAVITY_NORTH_WEST)
background.set_anchor_point(int(background.get_width()/3), int(background.get_height()/3))
#background.set_anchor_point_from_gravity(clutter.GRAVITY_CENTER)
background.set_depth(-self.stage.get_width())
print background.get_abs_size()
background.set_anchor_point_from_gravity(clutter.GRAVITY_NORTH_WEST)
#
(width_new, height_new) = background.get_abs_size()
#width = width * (width / width_new) + width_new
#height = height * (height / height_new) + height_new
@ -68,7 +70,7 @@ class GlossMgr:
tmpLabel.set_text("AAA")
tmpLabel.set_font_name(self.currentMenu.font)
#Selector bar height is 20% larger than the labels
self.selector_bar.set_height( int(tmpLabel.get_height()*1.2) )
self.selector_bar.set_height( int(tmpLabel.get_height()*self.selector_bar.height_percent) )
self.selector_bar.set_menu(self.currentMenu)
tmpLabel = None
@ -154,6 +156,7 @@ class GlossMgr:
class MenuSelector(clutter.Texture):
x_offset = -50
height_percent = 1
position_0 = None
def __init__ (self, glossMgr):
@ -162,6 +165,7 @@ class MenuSelector(clutter.Texture):
glossMgr.themeMgr.get_texture("selector_bar", glossMgr.stage, self)
self.set_position(0, self.get_y())
self.x_offset = int(glossMgr.themeMgr.get_value("texture", "selector_bar", "position.x"))
self.height_percent = float(glossMgr.themeMgr.get_value("texture", "selector_bar", "height_percent")) / float(100)
#This is a utility function that gets the coordinates of an that has been scaled
def get_true_abs_position(self, selectee):

View File

@ -360,6 +360,10 @@ class ListItem (clutter.Label):
alpha = clutter.Alpha(timeline, clutter.ramp_inc_func)
self.behaviour1 = clutter.BehaviourScale(scale_start=self.currentZoom, scale_end=zoomTo, alpha=alpha) #scale_gravity=clutter.GRAVITY_WEST,
#self.behaviour1 = clutter.BehaviourScale(x_scale_start=self.currentZoom, y_scale_start=self.currentZoom, x_scale_end=zoomTo, y_scale_end=zoomTo, alpha=alpha) #scale_gravity=clutter.GRAVITY_WEST,
#self.behaviour1 = clutter.BehaviourScale(x_scale_start=1, y_scale_start=1, x_scale_end=1, y_scale_end=1, alpha=alpha) #scale_gravity=clutter.GRAVITY_WEST,
#self.set_scale(zoomTo, zoomTo)
self.set_anchor_point_from_gravity(clutter.GRAVITY_WEST)
self.behaviour1.set_property("scale-gravity", clutter.GRAVITY_WEST) #As at Clutter r1807 you cannot set the gravity on the line above.
self.behaviour2 = clutter.BehaviourOpacity(opacity_start=self.currentOpacity, opacity_end=opacityTo, alpha=alpha)
self.behaviour1.apply(self)

View File

@ -5,8 +5,8 @@ import os
class VideoController:
def __init__(self, stage):
self.stage = stage
def __init__(self, glossMgr):
self.stage = glossMgr.stage
self.overlay = None
self.blackdrop = None
@ -17,7 +17,7 @@ class VideoController:
self.video_texture.set_position(0,0)
self.osd = osd(stage)
self.osd = osd(glossMgr)
def on_key_press_event(self, event):
@ -287,19 +287,25 @@ import time
class osd:
def __init__(self, stage):
self.stage = stage
def __init__(self, glossMgr):
self.glossMgr = glossMgr
self.stage = glossMgr.stage
self.timerRunning = False
self.setup_ui()
self.bar_group = clutter.Group()
self.background = clutter.Texture()
self.background.set_pixbuf( gtk.gdk.pixbuf_new_from_file("ui/osd_bar3.png") )
self.background.set_opacity(255)
self.background.set_width(stage.get_width())
#self.background = clutter.Texture()
#self.background.set_pixbuf( gtk.gdk.pixbuf_new_from_file("ui/default/osd_bar3.png") )
#self.background.set_opacity(255)
#self.background.set_width(stage.get_width())
self.bar_group.add(self.background)
self.bar_group.show_all()
def setup_ui(self):
self.background = self.glossMgr.themeMgr.get_texture("video_osd_bar", self.stage, None)
def enter(self):
self.stage.add(self.bar_group)
self.bar_group.show()

View File

@ -38,7 +38,7 @@ class Module:
def begin(self, glossMgr):
uri = "dvd://1"
self.videoController = VideoController(self.stage)
self.videoController = VideoController(glossMgr)
self.video = self.videoController.play_video(uri, self)
self.isPlaying = True

View File

@ -17,7 +17,7 @@ class Module:
self.glossMgr = glossMgr
self.setup_ui()
self.videoController = VideoController(self.stage)
self.videoController = VideoController(glossMgr)
self.dbMgr = dbMgr
self.isRunning = False

View File

@ -10,14 +10,15 @@ class cover_item(clutter.Group):
main_font_size = 22
plot_font_size = 18
def __init__(self, video, folder_name, cover_size):
def __init__(self, glossMgr, video, folder_name, cover_size):
clutter.Group.__init__(self)
self.width = cover_size
self.height = cover_size
#Set whether or not this is a folder or a video cover
if not folder_name is None:
imagePath = "ui/mv_gallery_folder_sel.png"
element = glossMgr.themeMgr.search_docs("video_cover_viewer", "main").childNodes
imagePath = "ui/" + glossMgr.themeMgr.currentTheme + "/" + glossMgr.themeMgr.find_child_value(element, "folder_img_src")
pixbuf = gtk.gdk.pixbuf_new_from_file(imagePath)
self.isFolder = True
else:
@ -25,7 +26,8 @@ class cover_item(clutter.Group):
#Check that coverfile exists
# In the future this will change so that the video is still included with a blank image
if not os.path.exists(imagePath):
imagePath = "ui/mv_gallery_folder_sel.png"
element = glossMgr.themeMgr.search_docs("video_cover_viewer", "main").childNodes
imagePath = "ui/" + glossMgr.themeMgr.currentTheme + "/" + glossMgr.themeMgr.find_child_value(element, "video_default_src")
pixbuf = gtk.gdk.pixbuf_new_from_file(imagePath)
self.isFolder = False

View File

@ -17,9 +17,10 @@ class coverViewer(clutter.Group):
update_details = False
def __init__(self, stage, width, height, rows, columns):
def __init__(self, glossMgr, width, height, rows, columns):
clutter.Group.__init__(self)
self.stage = stage
self.glossMgr = glossMgr
self.stage = glossMgr.stage
self.videoLibrary = []
self.textureLibrary = []
self.folderLibrary = []
@ -72,17 +73,13 @@ class coverViewer(clutter.Group):
self.covers_group.show()
self.covers_group_clip.show()
#self.stage.add(self.current_video_description)
#self.current_video_details.show()
#self.current_video_details.show_all()
def add_video(self, video):
self.videoLibrary.append(video)
tempTexture = cover_item(video, None, self.cover_size)
tempTexture = cover_item(self.glossMgr, video, None, self.cover_size)
self.add_texture_group(tempTexture)
def add_folder(self, folder_name):
tempTexture = cover_item(None, folder_name, self.cover_size)
tempTexture = cover_item(self.glossMgr, None, folder_name, self.cover_size)
self.folderLibrary.append(folder_name)
self.add_texture_group(tempTexture)
@ -188,6 +185,7 @@ class coverViewer(clutter.Group):
alpha = clutter.Alpha(self.timeline, clutter.ramp_inc_func)
self.behaviourNew_scale = clutter.BehaviourScale(scale_start=1, scale_end=self.scaleFactor, alpha=alpha)
#self.behaviourNew_scale = clutter.BehaviourScale(x_scale_start=1, y_scale_start=1, x_scale_end=self.scaleFactor, y_scale_end=self.scaleFactor, alpha=alpha)
self.behaviourNew_z = clutter.BehaviourDepth(depth_start=1, depth_end=2, alpha=alpha)
self.behaviourNew_opacity = clutter.BehaviourOpacity(opacity_start=self.inactiveOpacity, opacity_end=255, alpha=alpha)
@ -286,7 +284,10 @@ class coverViewer(clutter.Group):
return self.textureLibrary[self.currentSelection]
def get_current_video(self):
return self.videoLibrary[self.currentSelection]
if self.textureLibrary[self.currentSelection].isFolder:
return None #self.folderLibrary[(self.currentSelection-len(self.folderLibrary))]
else:
return self.videoLibrary[(self.currentSelection-len(self.folderLibrary))]
def get_item_x(self, itemNo):
return self.textureLibrary[itemNo]
@ -332,8 +333,13 @@ class coverViewer(clutter.Group):
#If there is movement, make the scale happen
if not newItem == None:
self.select_item(newItem, self.currentSelection)
if self.update_details:
self.details_group.set_video_bare(self.videoLibrary[self.currentSelection])
self.update_details = False
if self.update_details:
if not self.textureLibrary[self.currentSelection].isFolder:
self.details_group.set_video_bare(self.videoLibrary[self.currentSelection])
self.update_details = False
else:
self.details_group.set_folder(self.folderLibrary[(self.currentSelection-len(self.folderLibrary))])
#self.details_group.clear()

View File

@ -14,30 +14,33 @@ class folderMenu(clutter.Group):
inactiveOpacity = 150
selection_box_src = "ui/vid_folders_select_box.png"
def __init__(self, stage, rows, item_size):
def __init__(self, glossMgr, rows, item_size):
clutter.Group.__init__(self)
self.stage = stage
self.glossMgr = glossMgr
self.stage = glossMgr.stage
self.max_rows = rows
self.item_size = item_size
self.currentItemNo = None
"""
self.selector_box = clutter.Texture()
pixbuf = gtk.gdk.pixbuf_new_from_file(self.selection_box_src)
self.selector_box.set_pixbuf(pixbuf)
self.selector_box.set_size(item_size, item_size)
#self.add(self.selector_box)
self.selector_box.show()
"""
self.folderLibrary = []
self.viewerLibrary = []
self.folder_group = coverViewer(self.stage, item_size, (item_size*rows), rows, 1)
self.folder_group = coverViewer(glossMgr, item_size, (item_size*rows), rows, 1)
self.folder_group.scaleFactor = 1
self.folder_group.show()
self.add(self.folder_group)
def add_base_dir(self, folderName, cover_viewer):
tempItem = cover_item(None, folderName, self.item_size)
tempItem = cover_item(self.glossMgr, None, folderName, self.item_size)
rows = len(self.folderLibrary)
x = 0 #Change this later to center it
y = rows * self.item_size
@ -152,7 +155,7 @@ class folderMenu(clutter.Group):
)
self.behaviour_selectorBox_path = clutter.BehaviourPath(alpha, knots)
self.behaviour_selectorBox_path.apply(self.selector_box)
#self.behaviour_selectorBox_path.apply(self.selector_box)
def completeSwitch(self, data, old_viewer):
#self.viewerLibrary[self.currentItemNo].select_first()

View File

@ -81,4 +81,16 @@ class video_details(clutter.Group):
self.director.set_width(int(self.width - self.year.get_width()))
self.plot.set_text(video.plot)
self.plot.set_width(self.width)
self.plot.set_width(self.width)
def set_folder(self, folder_name):
self.title.set_text("Folder: " + str(folder_name))
self.year.set_text("")
self.director.set_text("")
self.plot.set_text("")
def clear(self):
self.title.set_text("")
self.year.set_text("")
self.director.set_text("")
self.plot.set_text("")

View File

@ -43,7 +43,7 @@ class Module():
self.setup_ui()
self.viewerLibrary = []
self.folderLibrary = []
self.videoController = VideoController(self.stage)
self.videoController = VideoController(glossMgr)
#Setup initial vars
self.is_playing = False
@ -55,7 +55,7 @@ class Module():
self.baseDir = dbMgr.get_setting("VideoStartupDir")
self.cwd = self.baseDir
self.folder_level = 0
base_folder_menu = folderMenu(self.stage, self.coverViewerRows, self.folders_cover_size)
base_folder_menu = folderMenu(glossMgr, self.coverViewerRows, self.folders_cover_size)
base_folder_menu.set_position(self.foldersPosX, self.foldersPosY)
self.folderLibrary.append(base_folder_menu)
self.load_base_folders(self.baseDir, base_folder_menu)
@ -110,7 +110,7 @@ class Module():
for dir_entry in new_file_list:
tempPath = dirPath + "/" + dir_entry
if os.path.isdir(tempPath) and not ( dir_entry[0] == "."):
tempViewer = coverViewer(self.stage, self.coverViewerWidth, self.coverViewerHeight, self.coverViewerRows, self.coverViewerColumns)
tempViewer = coverViewer(self.glossMgr, self.coverViewerWidth, self.coverViewerHeight, self.coverViewerRows, self.coverViewerColumns)
self.loadDir(tempPath, tempViewer)
folder_menu.add_base_dir(dir_entry, tempViewer)
@ -209,8 +209,12 @@ class Module():
#Do a check to see if the input queue is currently processing
#
if not self.currentViewer.input_queue.is_in_queue():
self.video_details.set_video_bare(video)
self.currentViewer.set_details_update(False, None)
if not video is None:
self.video_details.set_video_bare(video)
self.currentViewer.set_details_update(False, None)
else:
self.video_details.set_folder(self.currentViewer.folderLibrary[(self.currentViewer.currentSelection-len(self.currentViewer.folderLibrary))])
#self.video_details.clear()
else:
self.currentViewer.set_details_update(True, self.video_details)

View File

@ -7,7 +7,7 @@ from xml.dom import minidom
class ThemeMgr:
defaultTheme = "default"
currentTheme = "default"
currentTheme = "Pear"
#currentTheme = "Pear"
def __init__(self, glossMgr):
self.stage = glossMgr.stage
@ -30,6 +30,7 @@ class ThemeMgr:
for file in file_list:
conf_file = dir + "/" + file
print conf_file
docs.append(minidom.parse(conf_file))
#Filter function for fiding XML files

View File

@ -61,6 +61,8 @@
<texture id="selector_bar">
<image>active_bar.png</image>
<!-- This is a special property of selector bar the sets the height of the bar relative to the menu items its selecting -->
<height_percent>120</height_percent>
<dimensions type="relativeToStage">
<width>40%</width>
<height>default</height>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 238 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 517 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

View File

@ -64,6 +64,8 @@
<texture id="selector_bar">
<image>active_bar.png</image>
<!-- This is a special property of selector bar the sets the height of the bar relative to the menu items its selecting -->
<height_percent>100</height_percent>
<dimensions type="relativeToStage">
<width>40%</width>
<height>default</height>

View File

@ -1,13 +1,13 @@
<gloss-theme>
<texture id="video_covers_background">
<image>video_player/cover_bg_long.png</image>
<image>video_player/cover_bg_new.png</image>
<dimensions type="relativeToStage">
<width>80%</width>
<width>70%</width>
<height>80%</height>
</dimensions>
<position type="relativeToStage">
<x>15%</x>
<y>15%</y>
<x>24%</x>
<y>4%</y>
</position>
</texture>
@ -24,6 +24,8 @@
</texture>
<video_cover_viewer id="main">
<video_default_src>video_player/video_default.png</video_default_src>
<folder_img_src>video_player/mv_gallery_folder_sel.png</folder_img_src>
<dimensions type="relativeToStage">
<width>60%</width>
<height>60%</height>
@ -56,4 +58,6 @@
</position>
</video_folder_menu>
</gloss-theme>

14
ui/default/video_osd.xml Normal file
View File

@ -0,0 +1,14 @@
<gloss-theme>
<texture id="video_osd_bar">
<image>video_osd/osd_bar3.png</image>
<dimensions type="relativeToStage">
<width>70%</width>
<height>5%</height>
</dimensions>
<position type="relativeToStage">
<x>95%</x>
<y>0</y>
</position>
</texture>
</gloss-theme>

View File

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 732 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 101 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 875 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB