[cheese/gsettings-vala] Removed intermediate helper class for dealing with gconf/gsettings
- From: Yuvaraj Pandian <yuvipanda src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [cheese/gsettings-vala] Removed intermediate helper class for dealing with gconf/gsettings
- Date: Mon, 8 Nov 2010 21:08:00 +0000 (UTC)
commit 1116a0057297deedfba169d88867e7deeccb3277
Author: Yuvaraj Pandian T <yuvipanda gmail com>
Date: Tue Nov 9 02:37:41 2010 +0530
Removed intermediate helper class for dealing with gconf/gsettings
libcheese/Makefile.am | 2 -
libcheese/cheese-fileutil.c | 13 +-
libcheese/cheese-gconf.c | 369 -------------------------------------
libcheese/cheese-gconf.h | 68 -------
libcheese/cheese-gtk.symbols | 2 -
libcheese/cheese-widget-private.h | 2 +-
libcheese/cheese-widget.c | 35 ++--
src/cheese-preferences.vala | 49 +++---
src/cheese-window.vala | 99 +++++-----
src/vapi/cheese-common.vapi | 39 ----
10 files changed, 99 insertions(+), 579 deletions(-)
---
diff --git a/libcheese/Makefile.am b/libcheese/Makefile.am
index 32de009..c7a4c05 100644
--- a/libcheese/Makefile.am
+++ b/libcheese/Makefile.am
@@ -29,8 +29,6 @@ include $(top_srcdir)/Makefile.am.enums
libcheese_gtk_la_CFLAGS = $(CHEESE_CFLAGS)
libcheesecommon_la_SOURCES = \
- cheese-gconf.c \
- cheese-gconf.h \
cheese-fileutil.c \
cheese-fileutil.h \
cheese-camera.c \
diff --git a/libcheese/cheese-fileutil.c b/libcheese/cheese-fileutil.c
index d15dbf3..093991d 100644
--- a/libcheese/cheese-fileutil.c
+++ b/libcheese/cheese-fileutil.c
@@ -28,7 +28,6 @@
#include <string.h>
#include "cheese-fileutil.h"
-#include "cheese-gconf.h"
G_DEFINE_TYPE (CheeseFileUtil, cheese_fileutil, G_TYPE_OBJECT)
@@ -197,12 +196,12 @@ cheese_fileutil_init (CheeseFileUtil *fileutil)
priv->burst_count = 0;
priv->burst_raw_name = "";
- CheeseGConf *gconf;
+ GSettings *settings;
- gconf = cheese_gconf_new ();
+ settings = g_settings_new ("org.gnome.Cheese");
- g_object_get (gconf, "video_path", &priv->video_path, NULL);
- g_object_get (gconf, "photo_path", &priv->photo_path, NULL);
+ g_settings_get (settings, "video-path", "s", &priv->video_path);
+ g_settings_get (settings, "photo-path", "s", &priv->video_path);
/* get the video path from gconf, xdg or hardcoded */
if (!priv->video_path || strcmp (priv->video_path, "") == 0)
@@ -216,7 +215,7 @@ cheese_fileutil_init (CheeseFileUtil *fileutil)
}
}
- /* get the photo path from gconf, xdg or hardcoded */
+ /* get the photo path from gsettings, xdg or hardcoded */
if (!priv->photo_path || strcmp (priv->photo_path, "") == 0)
{
/* get xdg */
@@ -231,7 +230,7 @@ cheese_fileutil_init (CheeseFileUtil *fileutil)
/* FIXME: use the xdg log path */
priv->log_path = g_strjoin (G_DIR_SEPARATOR_S, g_get_home_dir (), ".gnome2", "cheese", NULL);
- g_object_unref (gconf);
+ g_object_unref (settings);
}
CheeseFileUtil *
diff --git a/libcheese/cheese-gtk.symbols b/libcheese/cheese-gtk.symbols
index bd8dcd9..156543f 100644
--- a/libcheese/cheese-gtk.symbols
+++ b/libcheese/cheese-gtk.symbols
@@ -1,11 +1,9 @@
cheese_widget_get_type
cheese_widget_new
cheese_widget_get_camera
-cheese_widget_get_gconf
cheese_widget_get_video_area
cheese_widget_get_error
cheese_widget_state_get_type
-cheese_gconf_get_type
cheese_camera_get_type
cheese_camera_cat
cheese_camera_device_get_type
diff --git a/libcheese/cheese-widget-private.h b/libcheese/cheese-widget-private.h
index 2cba699..bf77286 100644
--- a/libcheese/cheese-widget-private.h
+++ b/libcheese/cheese-widget-private.h
@@ -33,7 +33,7 @@ enum
};
GObject *cheese_widget_get_camera (CheeseWidget *widget);
-GObject *cheese_widget_get_gconf (CheeseWidget *widget);
+GSettings *cheese_widget_get_settings (CheeseWidget *widget);
GtkWidget *cheese_widget_get_video_area (CheeseWidget *widget);
G_END_DECLS
diff --git a/libcheese/cheese-widget.c b/libcheese/cheese-widget.c
index a5256c6..866145b 100644
--- a/libcheese/cheese-widget.c
+++ b/libcheese/cheese-widget.c
@@ -22,7 +22,6 @@
#include <glib/gi18n.h>
#include "cheese-widget.h"
-#include "cheese-gconf.h"
#include "cheese-camera.h"
#include "cheese-enum-types.h"
@@ -51,7 +50,7 @@ typedef struct
GtkWidget *spinner;
GtkWidget *screen;
GtkWidget *problem;
- CheeseGConf *gconf;
+ GSettings *settings;
CheeseCamera *webcam;
CheeseWidgetState state;
GError *error;
@@ -219,7 +218,7 @@ cheese_widget_init (CheeseWidget *widget)
priv->problem,
gtk_label_new ("got problems"));
- priv->gconf = cheese_gconf_new ();
+ priv->settings = g_settings_new ("org.gnome.Cheese");
}
static void
@@ -227,10 +226,10 @@ cheese_widget_finalize (GObject *object)
{
CheeseWidgetPrivate *priv = CHEESE_WIDGET_GET_PRIVATE (object);
- if (priv->gconf)
+ if (priv->settings)
{
- g_object_unref (priv->gconf);
- priv->gconf = NULL;
+ g_object_unref (priv->settings);
+ priv->settings = NULL;
}
if (priv->webcam)
{
@@ -301,16 +300,14 @@ setup_camera (CheeseWidget *widget)
gdouble contrast;
gdouble saturation;
gdouble hue;
-
- g_object_get (priv->gconf,
- "x_resolution", &x_resolution,
- "y_resolution", &y_resolution,
- "camera", &webcam_device,
- "brightness", &brightness,
- "contrast", &contrast,
- "saturation", &saturation,
- "hue", &hue,
- NULL);
+
+ g_settings_get (priv->settings, "x-resolution", "i", &x_resolution);
+ g_settings_get (priv->settings, "y-resolution", "i", &y_resolution);
+ g_settings_get (priv->settings, "camera", "s", &webcam_device);
+ g_settings_get (priv->settings, "brightness", "d", &brightness);
+ g_settings_get (priv->settings, "contrast", "d", &contrast);
+ g_settings_get (priv->settings, "saturation", "d", &saturation);
+ g_settings_get (priv->settings, "hue", "d", &hue);
gdk_threads_enter ();
priv->webcam = cheese_camera_new (priv->screen,
@@ -436,8 +433,8 @@ cheese_widget_new (void)
return g_object_new (CHEESE_TYPE_WIDGET, NULL);
}
-GObject *
-cheese_widget_get_gconf (CheeseWidget *widget)
+GSettings *
+cheese_widget_get_settings (CheeseWidget *widget)
{
CheeseWidgetPrivate *priv;
@@ -445,7 +442,7 @@ cheese_widget_get_gconf (CheeseWidget *widget)
priv = CHEESE_WIDGET_GET_PRIVATE (widget);
- return G_OBJECT (priv->gconf);
+ return G_OBJECT (priv->settings);
}
GObject *
diff --git a/src/cheese-preferences.vala b/src/cheese-preferences.vala
index fb74992..17ef5cd 100644
--- a/src/cheese-preferences.vala
+++ b/src/cheese-preferences.vala
@@ -24,7 +24,8 @@ using Gtk;
public class Cheese.PreferencesDialog : GLib.Object
{
private Cheese.Camera camera;
- private Cheese.GConf conf;
+
+ private GLib.Settings settings;
private Gtk.Dialog dialog;
@@ -47,10 +48,10 @@ public class Cheese.PreferencesDialog : GLib.Object
private Gtk.CheckButton countdown_check;
private Gtk.CheckButton flash_check;
- public PreferencesDialog (Cheese.Camera camera, Cheese.GConf conf)
+ public PreferencesDialog (Cheese.Camera camera, GLib.Settings settings)
{
this.camera = camera;
- this.conf = conf;
+ this.settings = settings;
Gtk.Builder builder = new Gtk.Builder ();
builder.add_from_file (GLib.Path.build_filename (Config.PACKAGE_DATADIR, "cheese-prefs.ui"));
@@ -85,7 +86,7 @@ public class Cheese.PreferencesDialog : GLib.Object
setup_combo_box_models ();
initialize_camera_devices ();
- initialize_values_from_conf ();
+ initialize_values_from_settings ();
// Connect signals only after all the widgets have been setup
// Stops a bunch of unnecessary signals from being fired
@@ -152,18 +153,18 @@ public class Cheese.PreferencesDialog : GLib.Object
}
}
- private void initialize_values_from_conf ()
+ private void initialize_values_from_settings ()
{
- brightness_adjustment.value = conf.brightness;
- contrast_adjustment.value = conf.contrast;
- hue_adjustment.value = conf.hue;
- saturation_adjustment.value = conf.saturation;
+ brightness_adjustment.value = settings.get_double("brightness");
+ contrast_adjustment.value = settings.get_double("contrast");
+ hue_adjustment.value = settings.get_double("hue");
+ saturation_adjustment.value = settings.get_double("saturation");
- burst_repeat_spin.value = conf.burst_repeat;
- burst_delay_spin.value = conf.burst_delay / 1000;
+ burst_repeat_spin.value = settings.get_int("burst-repeat");
+ burst_delay_spin.value = settings.get_int("burst-delay") / 1000;
- countdown_check.active = conf.countdown;
- flash_check.active = conf.flash;
+ countdown_check.active = settings.get_boolean("countdown");
+ flash_check.active = settings.get_boolean("flash");
}
[CCode (instance_pos = -1)]
@@ -178,7 +179,7 @@ public class Cheese.PreferencesDialog : GLib.Object
camera.set_device_by_dev_file (dev.get_device_file ());
camera.switch_camera_device ();
setup_resolutions_for_device (camera.get_selected_device ());
- conf.camera = dev.get_device_file ();
+ settings.set_string("camera", dev.get_device_file ());
}
[CCode (instance_pos = -1)]
@@ -192,8 +193,8 @@ public class Cheese.PreferencesDialog : GLib.Object
combo.model.get (iter, 1, out format);
camera.set_video_format (format);
- conf.x_resolution = format.width;
- conf.y_resolution = format.height;
+ settings.set_int("x-resolution", format.width);
+ settings.set_int("x-resolution", format.height);
}
[CCode (instance_pos = -1)]
@@ -205,53 +206,53 @@ public class Cheese.PreferencesDialog : GLib.Object
[CCode (instance_pos = -1)]
public void on_countdown_toggle (Gtk.CheckButton checkbutton)
{
- conf.countdown = checkbutton.active;
+ settings.set_boolean("countdown", checkbutton.active);
}
[CCode (instance_pos = -1)]
public void on_flash_toggle (Gtk.CheckButton checkbutton)
{
- conf.flash = checkbutton.active;
+ settings.set_boolean("flash", checkbutton.active);
}
[CCode (instance_pos = -1)]
public void on_burst_repeat_change (Gtk.SpinButton spinbutton)
{
- conf.burst_repeat = (int) spinbutton.value;
+ settings.set_int("burst-repeat", (int) spinbutton.value);
}
[CCode (instance_pos = -1)]
public void on_burst_delay_change (Gtk.SpinButton spinbutton)
{
- conf.burst_delay = (int) spinbutton.value * 1000;
+ settings.set_int("burst-delay", (int) spinbutton.value * 1000);
}
[CCode (instance_pos = -1)]
public void on_brightness_change (Gtk.Adjustment adjustment)
{
this.camera.set_balance_property ("brightness", adjustment.value);
- conf.brightness = adjustment.value;
+ settings.set_double("brightness", adjustment.value);
}
[CCode (instance_pos = -1)]
public void on_contrast_change (Gtk.Adjustment adjustment)
{
this.camera.set_balance_property ("contrast", adjustment.value);
- conf.contrast = adjustment.value;
+ settings.set_double("contrast", adjustment.value);
}
[CCode (instance_pos = -1)]
public void on_hue_change (Gtk.Adjustment adjustment)
{
this.camera.set_balance_property ("hue", adjustment.value);
- conf.hue = adjustment.value;
+ settings.set_double("hue", adjustment.value);
}
[CCode (instance_pos = -1)]
public void on_saturation_change (Gtk.Adjustment adjustment)
{
this.camera.set_balance_property ("saturation", adjustment.value);
- conf.saturation = adjustment.value;
+ settings.set_double("saturation", adjustment.value);
}
public void show ()
diff --git a/src/cheese-window.vala b/src/cheese-window.vala
index 387e40d..633ca7c 100644
--- a/src/cheese-window.vala
+++ b/src/cheese-window.vala
@@ -39,6 +39,8 @@ public class Cheese.MainWindow : Gtk.Window
private Gtk.Builder gtk_builder;
private Clutter.Script clutter_builder;
+ private GLib.Settings settings;
+
private Gtk.Widget thumbnails;
private GtkClutter.Embed viewport_widget;
private Gtk.VBox main_vbox;
@@ -92,10 +94,10 @@ public class Cheese.MainWindow : Gtk.Window
private Gtk.Button[] buttons;
- private Cheese.Camera camera;
- private Cheese.FileUtil fileutil;
- private Cheese.Flash flash;
- private Cheese.GConf conf;
+ private Cheese.Camera camera;
+ private Cheese.FileUtil fileutil;
+ private Cheese.Flash flash;
+
private Cheese.EffectsManager effects_manager;
private Cheese.PreferencesDialog preferences_dialog;
@@ -111,7 +113,7 @@ public class Cheese.MainWindow : Gtk.Window
public void on_preferences_dialog (Gtk.Action action)
{
if (preferences_dialog == null)
- preferences_dialog = new Cheese.PreferencesDialog (camera, conf);
+ preferences_dialog = new Cheese.PreferencesDialog (camera, settings);
preferences_dialog.show ();
}
@@ -229,7 +231,7 @@ public class Cheese.MainWindow : Gtk.Window
file_to_trash = File.new_for_path (fileutil.get_photo_path () + GLib.Path.DIR_SEPARATOR_S + file_info.get_name ());
file_to_trash.trash (null);
}
- }catch (Error e)
+ } catch (Error e)
{
warning ("Error: %s\n", e.message);
return;
@@ -297,7 +299,7 @@ public class Cheese.MainWindow : Gtk.Window
screen = this.get_screen ();
try {
Gtk.show_uri (screen, "ghelp:cheese", Gtk.get_current_event_time ());
- }catch (Error err)
+ } catch (Error err)
{
warning ("Error: %s\n", err.message);
}
@@ -407,9 +409,9 @@ public class Cheese.MainWindow : Gtk.Window
{
fullscreen_timeout = new TimeoutSource (FULLSCREEN_TIMEOUT_INTERVAL);
fullscreen_timeout.attach (null);
- fullscreen_timeout.set_callback (() => { buttons_area.hide ();
- clear_fullscreen_timeout ();
- return true;});
+ fullscreen_timeout.set_callback (() => {buttons_area.hide ();
+ clear_fullscreen_timeout ();
+ return true; });
}
private bool fullscreen_motion_notify_callback (Gtk.Widget viewport, EventMotion e)
@@ -430,8 +432,8 @@ public class Cheese.MainWindow : Gtk.Window
* So that the next time leave_fullscreen_button_container.show_all() is called, the button is actually shown
* FIXME: If this code can be made cleaner/clearer, please do */
- conf.fullscreen = fullscreen_mode;
- is_fullscreen = fullscreen_mode;
+ settings.set_boolean ("fullscreen", fullscreen_mode);
+ is_fullscreen = fullscreen_mode;
if (fullscreen_mode)
{
if (is_wide_mode)
@@ -483,8 +485,8 @@ public class Cheese.MainWindow : Gtk.Window
private void set_wide_mode (bool wide_mode)
{
- is_wide_mode = wide_mode;
- conf.wide_mode = wide_mode;
+ is_wide_mode = wide_mode;
+ settings.set_boolean ("wide-mode", wide_mode);
/* keep the viewport to its current size while rearranging the ui,
* so that thumbview moves from right to bottom and viceversa
@@ -544,14 +546,14 @@ public class Cheese.MainWindow : Gtk.Window
[CCode (instance_pos = -1)]
public void on_countdown_toggle (ToggleAction action)
{
- conf.countdown = action.active;
+ settings.set_boolean ("countdown", action.active);
}
private void finish_countdown_callback ()
{
string file_name = fileutil.get_new_media_filename (this.current_mode);
- if (conf.flash)
+ if (settings.get_boolean ("flash"))
{
this.flash.fire ();
}
@@ -560,7 +562,7 @@ public class Cheese.MainWindow : Gtk.Window
public void take_photo ()
{
- if (conf.countdown)
+ if (settings.get_boolean ("countdown"))
{
Countdown cd = new Countdown (this.countdown_layer);
cd.start_countdown (finish_countdown_callback);
@@ -575,7 +577,7 @@ public class Cheese.MainWindow : Gtk.Window
private bool burst_take_photo ()
{
- if (is_bursting && burst_count < conf.burst_repeat)
+ if (is_bursting && burst_count < settings.get_int ("burst-repeat"))
{
this.take_photo ();
burst_count++;
@@ -632,7 +634,7 @@ public class Cheese.MainWindow : Gtk.Window
burst_take_photo ();
/* 3500 ms is approximate time for countdown animation to finish */
- GLib.Timeout.add ((conf.burst_delay / 1000) * 3500, burst_take_photo);
+ GLib.Timeout.add ((settings.get_int ("burst-delay") / 1000) * 3500, burst_take_photo);
}
}
@@ -652,7 +654,7 @@ public class Cheese.MainWindow : Gtk.Window
{
selected_effect = event.source.get_data ("effect");
camera.set_effect (selected_effect);
- conf.selected_effect = selected_effect.name;
+ settings.set_string ("selected-effect", selected_effect.name);
effects_toggle_action.set_active (false);
return false;
}
@@ -834,7 +836,7 @@ public class Cheese.MainWindow : Gtk.Window
clutter_builder = new Clutter.Script ();
fileutil = new FileUtil ();
flash = new Flash (this);
- conf = new GConf ();
+ settings = new GLib.Settings ("org.gnome.Cheese");
try {
gtk_builder.add_from_file (GLib.Path.build_filename (Config.PACKAGE_DATADIR, "cheese-actions.ui"));
@@ -843,7 +845,7 @@ public class Cheese.MainWindow : Gtk.Window
gtk_builder.connect_signals (this);
clutter_builder.load_from_file (GLib.Path.build_filename (Config.PACKAGE_DATADIR, "cheese-viewport.json"));
- }catch (Error err)
+ } catch (Error err)
{
warning ("Error: %s\n", err.message);
return;
@@ -877,18 +879,18 @@ public class Cheese.MainWindow : Gtk.Window
effects_toggle_action = (Gtk.ToggleAction)gtk_builder.get_object ("effects_toggle");
countdown_action = (Gtk.Action)gtk_builder.get_object ("countdown");
wide_mode_action = (Gtk.ToggleAction)gtk_builder.get_object ("wide_mode");
- fullscreen_action = (Gtk.ToggleAction)gtk_builder.get_object ("fullscreen");
+ fullscreen_action = (Gtk.ToggleAction)gtk_builder.get_object ("fullscreen");
effects_page_next_action = (Gtk.Action)gtk_builder.get_object ("effects_page_next");
effects_page_prev_action = (Gtk.Action)gtk_builder.get_object ("effects_page_prev");
/* Array contains all 'buttons', for easier manipulation
* IMPORTANT: IF ANOTHER BUTTON IS ADDED UNDER THE VIEWPORT, ADD IT TO THIS ARRAY */
- buttons = { photo_toggle_button,
- video_toggle_button,
- burst_toggle_button,
- take_action_button,
- effects_toggle_button,
- leave_fullscreen_button};
+ buttons = {photo_toggle_button,
+ video_toggle_button,
+ burst_toggle_button,
+ take_action_button,
+ effects_toggle_button,
+ leave_fullscreen_button};
video_preview = (Clutter.Texture)clutter_builder.get_object ("video_preview");
viewport_layout = (Clutter.Box)clutter_builder.get_object ("viewport_layout");
@@ -920,28 +922,29 @@ public class Cheese.MainWindow : Gtk.Window
/* call set_active instead of our set_wide_mode so that the toggle
* action state is updated */
- wide_mode_action.set_active (conf.wide_mode);
+ wide_mode_action.set_active (settings.get_boolean ("wide-mode"));
/* apparently set_active doesn't emit toggled nothing has
* changed, do it manually */
- if (!conf.wide_mode) wide_mode_action.toggled ();
+ if (!settings.get_boolean ("wide-mode"))
+ wide_mode_action.toggled ();
set_mode (MediaMode.PHOTO);
setup_effects_selector ();
- if (conf.fullscreen)
+ if (settings.get_boolean ("fullscreen"))
fullscreen_action.active = true;
}
public void setup_camera ()
{
camera = new Camera (video_preview,
- conf.camera,
- conf.x_resolution,
- conf.y_resolution);
+ settings.get_string ("camera"),
+ settings.get_int ("x-resolution"),
+ settings.get_int ("y-resolution"));
try {
- camera.setup (conf.camera);
+ camera.setup (settings.get_string ("camera"));
}
catch (Error err)
{
@@ -952,17 +955,17 @@ public class Cheese.MainWindow : Gtk.Window
GLib.SList<weak GLib.Object> objects = gtk_builder.get_objects ();
/* Keep only these actions sensitive. */
- string active_actions[11] = { "cheese_action",
- "edit_action",
- "help_action",
- "quit",
- "help_contents",
- "about",
- "open",
- "save_as",
- "move_to_trash",
- "delete",
- "move_all_to_trash"};
+ string active_actions[11] = {"cheese_action",
+ "edit_action",
+ "help_action",
+ "quit",
+ "help_contents",
+ "about",
+ "open",
+ "save_as",
+ "move_to_trash",
+ "delete",
+ "move_all_to_trash"};
/* Gross hack because Vala's `in` operator doesn't really work */
bool flag;
@@ -986,7 +989,7 @@ public class Cheese.MainWindow : Gtk.Window
return;
}
- Cheese.Effect selected_effect = effects_manager.get_effect (conf.selected_effect);
+ Cheese.Effect selected_effect = effects_manager.get_effect (settings.get_string ("selected-effect"));
if (selected_effect != null)
{
camera.set_effect (selected_effect);
diff --git a/src/vapi/cheese-common.vapi b/src/vapi/cheese-common.vapi
index cb942fc..525e48a 100644
--- a/src/vapi/cheese-common.vapi
+++ b/src/vapi/cheese-common.vapi
@@ -115,45 +115,6 @@ namespace Cheese
public void fire ();
}
- [CCode (cheader_filename = "cheese-gconf.h")]
- public class GConf : GLib.Object
- {
- [CCode (has_construct_function = false)]
- public GConf ();
- [NoAccessorMethod]
- public double brightness {get; set;}
- [NoAccessorMethod]
- public int burst_delay {get; set;}
- [NoAccessorMethod]
- public int burst_repeat {get; set;}
- [NoAccessorMethod]
- public string camera {owned get; set;}
- [NoAccessorMethod]
- public double contrast {get; set;}
- [NoAccessorMethod]
- public bool countdown {get; set;}
- [NoAccessorMethod]
- public bool flash {get; set;}
- [NoAccessorMethod]
- public double hue {get; set;}
- [NoAccessorMethod]
- public string photo_path {owned get; set;}
- [NoAccessorMethod]
- public double saturation {get; set;}
- [NoAccessorMethod]
- public string selected_effect {owned get; set;}
- [NoAccessorMethod]
- public string video_path {owned get; set;}
- [NoAccessorMethod]
- public bool wide_mode {get; set;}
- [NoAccessorMethod]
- public bool fullscreen {get; set;}
- [NoAccessorMethod]
- public int x_resolution {get; set;}
- [NoAccessorMethod]
- public int y_resolution {get; set;}
- }
-
[Compact]
[CCode (type_id = "CHEESE_TYPE_VIDEO_FORMAT", cheader_filename = "cheese-camera-device.h")]
public class VideoFormat
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]