Stub volume control code

This commit is contained in:
Marco Pesenti Gritti 2007-01-05 02:19:52 +01:00
parent bcc4b4f34f
commit dda100fca6
6 changed files with 149 additions and 13 deletions

View File

@ -49,6 +49,14 @@
(gtype-id "SUGAR_TYPE_DOWNLOAD")
)
(define-object AudioManager
(in-module "Sugar")
(parent "GObject")
(c-name "SugarAudioManager")
(gtype-id "SUGAR_TYPE_AUDIO_MANAGER")
)
;; Enumerations and flags ...
@ -239,3 +247,23 @@
'("GdkPixbuf*" "pixbuf")
)
)
;; Enumerations and flags ...
;; From sugar-audio-manager.h
(define-function audio_manager_get_type
(c-name "sugar_audio_manager_get_type")
(return-type "GType")
)
(define-method set_volume
(of-object "SugarAudioManager")
(c-name "sugar_audio_manager_set_volume")
(return-type "none")
(parameters
'("int" "level")
)
)

View File

@ -11,6 +11,7 @@ headers
#include "sugar-push-scroller.h"
#include "sugar-download-manager.h"
#include "sugar-download.h"
#include "sugar-audio-manager.h"
#include <pygtk/pygtk.h>
#include <glib.h>

View File

@ -21,6 +21,8 @@ libsugarprivate_la_SOURCES = \
GeckoDownload.cpp \
sugar-address-entry.h \
sugar-address-entry.c \
sugar-audio-manager.c \
sugar-audio-manager.h \
sugar-browser.h \
sugar-browser.cpp \
sugar-download.h \

View File

@ -0,0 +1,38 @@
/*
* Copyright (C) 2006 Red Hat, Inc
*
* Sugar is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* Sugar is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*/
#include "sugar-audio-manager.h"
G_DEFINE_TYPE(SugarAudioManager, sugar_audio_manager, G_TYPE_OBJECT)
static void
sugar_audio_manager_class_init(SugarAudioManagerClass *grabber_class)
{
GObjectClass *g_object_class = G_OBJECT_CLASS (grabber_class);
}
static void
sugar_audio_manager_init(SugarAudioManager *grabber)
{
}
void
sugar_audio_manager_set_volume (SugarAudioManager *manager,
int level)
{
}

View File

@ -0,0 +1,51 @@
/*
* Copyright (C) 2006 Red Hat, Inc
*
* Sugar is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* Sugar is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef __SUGAR_AUDIO_MANAGER_H__
#define __SUGAR_AUDIO_MANAGER_H__
#include <glib-object.h>
G_BEGIN_DECLS
typedef struct _SugarAudioManager SugarAudioManager;
typedef struct _SugarAudioManagerClass SugarAudioManagerClass;
typedef struct _SugarAudioManagerPrivate SugarAudioManagerPrivate;
#define SUGAR_TYPE_AUDIO_MANAGER (sugar_audio_manager_get_type())
#define SUGAR_AUDIO_MANAGER(object) (G_TYPE_CHECK_INSTANCE_CAST((object), SUGAR_TYPE_AUDIO_MANAGER, SugarAudioManager))
#define SUGAR_AUDIO_MANAGER_CLASS(klass) (G_TYPE_CHACK_CLASS_CAST((klass), SUGAR_TYPE_AUDIO_MANAGER, SugarAudioManagerClass))
#define SUGAR_IS_AUDIO_MANAGER(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), SUGAR_TYPE_AUDIO_MANAGER))
#define SUGAR_IS_AUDIO_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SUGAR_TYPE_AUDIO_MANAGER))
#define SUGAR_AUDIO_MANAGER_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS((object), SUGAR_TYPE_AUDIO_MANAGER, SugarAudioManagerClass))
struct _SugarAudioManager {
GObject base_instance;
};
struct _SugarAudioManagerClass {
GObjectClass base_class;
};
GType sugar_audio_manager_get_type (void);
void sugar_audio_manager_set_volume (SugarAudioManager *manager,
int level);
G_END_DECLS
#endif /* __SUGAR_AUDIO_MANAGER_H__ */

View File

@ -31,6 +31,7 @@ from sugar.activity import Activity
from view.frame.Frame import Frame
from view.dconmanager import DCONManager
from _sugar import KeyGrabber
from _sugar import AudioManager
import sugar
class Shell(gobject.GObject):
@ -45,6 +46,7 @@ class Shell(gobject.GObject):
style.load_stylesheet(view.stylesheet)
self._dcon_manager = DCONManager()
self._audio_manager = AudioManager()
self._key_grabber = KeyGrabber()
self._key_grabber.connect('key-pressed',
@ -66,7 +68,7 @@ class Shell(gobject.GObject):
self._frame = Frame(self)
self._frame.show_and_hide(3)
self.start_activity('org.laptop.JournalActivity')
#self.start_activity('org.laptop.JournalActivity')
def _handle_camera_key(self):
if self._current_host:
@ -116,6 +118,20 @@ class Shell(gobject.GObject):
self._dcon_manager.set_brightness(12)
elif key == 'F8':
self._dcon_manager.set_brightness(15)
elif key == 'F9':
self._audio_manager.set_volume(0)
elif key == 'F19':
self._audio_manager.set_volume(16)
elif key == 'F10':
self._audio_manager.set_volume(32)
elif key == 'F20':
self._audio_manager.set_volume(48)
elif key == 'F11':
self._audio_manager.set_volume(64)
elif key == 'F21':
self._audio_manager.set_volume(80)
elif key == 'F12':
self._audio_manager.set_volume(100)
elif key == '<alt>F5':
self._dcon_manager.set_mode(DCONManager.COLOR_MODE)
elif key == '<alt>F8':