X-Git-Url: http://vcs.maemo.org/git/?a=blobdiff_plain;f=src%2Fmilk-task.c;fp=src%2Fmilk-task.c;h=0000000000000000000000000000000000000000;hb=6040cbbb44f9c230fe6fc3df2acb372ac4c4b00f;hp=fffbeb270c489a2c45b46531d51fee55567affc7;hpb=c53fd3e300223472eb6e455ad176d30a715753e4;p=milk diff --git a/src/milk-task.c b/src/milk-task.c deleted file mode 100644 index fffbeb2..0000000 --- a/src/milk-task.c +++ /dev/null @@ -1,220 +0,0 @@ -/* - * This program 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. - * - * This program 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., 51 Franklin St, Fifth Floor, - * Boston, MA 02110-1301 USA - * - * Authors: Travis Reitter - */ - -#include - -#include -#include -#include -#include - -#include "milk-task.h" - -G_DEFINE_TYPE (MilkTask, milk_task, G_TYPE_OBJECT); - -/* less expensive than G_TYPE_INSTANCE_GET_PRIVATE */ -#define MILK_TASK_PRIVATE(o) ((MILK_TASK ((o)))->priv) - -struct _MilkTaskPrivate -{ - char *id; - gint priority; - char *title; -}; - -enum { - PROP_ID = 1, - PROP_TITLE, - PROP_PRIORITY, -}; - - -static void -task_set_id (MilkTask *task, - const char *id) -{ - MilkTaskPrivate *priv; - - g_return_if_fail (MILK_IS_TASK (task)); - g_return_if_fail (id && !g_str_equal (id, "")); - - priv = MILK_TASK_PRIVATE (task); - g_free (priv->id); - priv->id = g_strdup (id); -} - -void -milk_task_set_title (MilkTask *task, - const char *title) -{ - MilkTaskPrivate *priv; - - g_return_if_fail (MILK_IS_TASK (task)); - - priv = MILK_TASK_PRIVATE (task); - g_free (priv->title); - priv->title = g_strdup (title); -} - -void -milk_task_set_priority (MilkTask *task, - gint priority) -{ - MilkTaskPrivate *priv; - - g_return_if_fail (MILK_IS_TASK (task)); - /* FIXME: set constraints on the allowed priority values */ - - priv = MILK_TASK_PRIVATE (task); - priv->priority = priority; -} - -static void -milk_task_get_property (GObject *object, - guint property_id, - GValue *value, - GParamSpec *pspec) -{ - MilkTaskPrivate *priv = MILK_TASK_PRIVATE (object); - - switch (property_id) - { - case PROP_ID: - g_value_set_string (value, priv->id); - break; - - case PROP_TITLE: - g_value_set_string (value, priv->title); - break; - - case PROP_PRIORITY: - g_value_set_int (value, priv->priority); - break; - - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, - pspec); - } -} - -static void -milk_task_set_property (GObject *object, - guint property_id, - const GValue *value, - GParamSpec *pspec) -{ - MilkTaskPrivate *priv; - MilkTask *task; - - task = MILK_TASK (object); - priv = MILK_TASK_PRIVATE (task); - - switch (property_id) - { - case PROP_ID: - task_set_id (task, g_value_get_string (value)); - break; - - case PROP_TITLE: - milk_task_set_title (task, g_value_get_string (value)); - break; - - case PROP_PRIORITY: - milk_task_set_priority (task, g_value_get_int (value)); - break; - - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, - pspec); - } -} - -static void -milk_task_finalize (GObject *object) -{ - MilkTaskPrivate *priv = MILK_TASK_PRIVATE (object); - - g_free (priv->id); - g_free (priv->title); -} - -static void -milk_task_class_init (MilkTaskClass *klass) -{ - GObjectClass *object_class = G_OBJECT_CLASS (klass); - - g_type_class_add_private (klass, sizeof (MilkTaskPrivate)); - - object_class->get_property = milk_task_get_property; - object_class->set_property = milk_task_set_property; - object_class->finalize = milk_task_finalize; - - g_object_class_install_property - (object_class, - PROP_ID, - g_param_spec_string - ("id", - "Task ID", - "A globally-unique identifier for the task.", - "invalid-ID", - G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | - G_PARAM_STATIC_STRINGS)); - - g_object_class_install_property - (object_class, - PROP_TITLE, - g_param_spec_string - ("title", - "Task title", - "The description of the task to be performed.", - "Untitled Task", - G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); - - g_object_class_install_property - (object_class, - PROP_PRIORITY, - g_param_spec_int - ("priority", - "Task priority", - "The user-valued priority of the task.", - 0, G_MAXINT, 0, - G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); -} - -static void -milk_task_init (MilkTask *self) -{ - MilkTaskPrivate *priv; - - self->priv = priv = G_TYPE_INSTANCE_GET_PRIVATE ( - self, MILK_TYPE_TASK, MilkTaskPrivate); -} - -MilkTask* -milk_task_new (const char *id, - const char *title, - gint priority) -{ - return g_object_new ( - MILK_TYPE_TASK, - "id", id, - "title", title, - "priority", priority, - NULL); -}