Changeset 302


Ignore:
Timestamp:
12/05/06 07:47:59 (7 years ago)
Author:
caowai_song
Message:

Try to use GObject in the application manager data struct

Location:
trunk/src/target/OM-2007/applications/openmoko-appmanager/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/target/OM-2007/applications/openmoko-appmanager/src/appmanager-data.c

    r276 r302  
    2121#include "appmanager-data.h" 
    2222 
    23 /** 
    24  * @brief Create a new ApplicationManagerData 
    25  * @return The ApplicationManagerData. If fail to create, it will return NULL. 
    26  */ 
    27 ApplicationManagerData * 
    28 application_manager_data_new (void) 
    29 { 
    30   ApplicationManagerData *data; 
    31   int i; 
    32  
    33   data = g_malloc (sizeof (ApplicationManagerData)); 
    34   if (data == NULL) 
    35     { 
    36       g_debug ("Can not malloc memory for the init data struct, process will be abort"); 
    37       return NULL; 
    38     } 
     23static void application_manager_data_class_init (ApplicationManagerDataClass *klass); 
     24static void application_manager_data_init (ApplicationManagerData *data); 
     25 
     26G_DEFINE_TYPE (ApplicationManagerData, application_manager_data, G_TYPE_OBJECT) 
     27 
     28static void  
     29application_manager_data_class_init (ApplicationManagerDataClass *klass) 
     30{ 
     31} 
     32 
     33static void  
     34application_manager_data_init (ApplicationManagerData *data) 
     35{ 
     36  gint  i; 
    3937 
    4038  data->mwindow = NULL; 
     
    5250    } 
    5351 
     52} 
     53 
     54GType  
     55moko_type_application_manager_data_get_type (void) 
     56{ 
     57  static GType self_type = 0; 
     58 
     59  if (!self_type) 
     60    { 
     61      static const GTypeInfo self_info = 
     62        { 
     63          sizeof (ApplicationManagerDataClass), 
     64          NULL, /* base_init */ 
     65          NULL, /* base_finalize */ 
     66          (GClassInitFunc) application_manager_data_class_init, 
     67          NULL, /* class_finalize */ 
     68          NULL, /* class_data */ 
     69          sizeof (ApplicationManagerData), 
     70          0, 
     71          (GInstanceInitFunc) application_manager_data_init, 
     72        }; 
     73 
     74      // add the type of your parent class here 
     75      self_type = g_type_register_static (G_TYPE_OBJECT, "ApplicationManagerData", &self_info, 0); 
     76    } 
     77 
     78  return self_type; 
     79} 
     80 
     81/** 
     82 * @brief Create a new ApplicationManagerData 
     83 * @return The ApplicationManagerData. If fail to create, it will return NULL. 
     84 */ 
     85ApplicationManagerData * 
     86application_manager_data_new (void) 
     87{ 
     88/* 
     89  ApplicationManagerData *data; 
     90  int i; 
     91 
     92  data = g_malloc (sizeof (ApplicationManagerData)); 
     93  if (data == NULL) 
     94    { 
     95      g_debug ("Can not malloc memory for the init data struct, process will be abort"); 
     96      return NULL; 
     97    } 
     98 
     99  data->mwindow = NULL; 
     100  data->tvpkglist = NULL; 
     101  data->tvdetail = NULL; 
     102  data->pkglist = NULL; 
     103  data->sectionlist = NULL; 
     104  data->installedlist = NULL; 
     105  data->upgradelist = NULL; 
     106  data->selectedlist = NULL; 
     107 
     108  for (i = 0; i < N_COUNT_PKG_STATUS; i++) 
     109    { 
     110      data->statuspix[i] = NULL; 
     111    } 
     112 
    54113  return data; 
     114*/ 
     115  return MOKO_APPLICATION_MANAGER_DATA (g_object_new \ 
     116                                        (moko_type_application_manager_data_get_type (), \ 
     117                                        NULL)); 
    55118} 
    56119 
     
    64127                                          MokoPanedWindow *window) 
    65128{ 
    66   g_return_if_fail (appdata != NULL); 
     129  g_return_if_fail (MOKO_IS_APPLICATION_MANAGER_DATA (appdata)); 
    67130 
    68131  appdata->mwindow = window; 
     
    79142                                       GtkWidget *tvpkglist) 
    80143{ 
    81   g_return_if_fail (appdata != NULL); 
     144  g_return_if_fail (MOKO_IS_APPLICATION_MANAGER_DATA (appdata)); 
    82145 
    83146  appdata->tvpkglist = tvpkglist; 
     
    93156                                       GtkWidget *tvdetail) 
    94157{ 
    95   g_return_if_fail (appdata != NULL); 
     158  g_return_if_fail (MOKO_IS_APPLICATION_MANAGER_DATA (appdata)); 
    96159 
    97160  appdata->tvdetail = tvdetail; 
     
    107170                                      gpointer pkglist) 
    108171{ 
    109   g_return_if_fail (appdata != NULL); 
     172  g_return_if_fail (MOKO_IS_APPLICATION_MANAGER_DATA (appdata)); 
    110173 
    111174  appdata->pkglist = pkglist; 
     
    121184                                           gpointer sectionlist) 
    122185{ 
    123   g_return_if_fail (appdata != NULL); 
     186  g_return_if_fail (MOKO_IS_APPLICATION_MANAGER_DATA (appdata)); 
    124187 
    125188  appdata->sectionlist = sectionlist; 
     
    135198                                             gpointer installedlist) 
    136199{ 
    137   g_return_if_fail (appdata != NULL); 
     200  g_return_if_fail (MOKO_IS_APPLICATION_MANAGER_DATA (appdata)); 
    138201 
    139202  appdata->installedlist = installedlist; 
     
    149212                                           gpointer upgradelist) 
    150213{ 
    151   g_return_if_fail (appdata != NULL); 
     214  g_return_if_fail (MOKO_IS_APPLICATION_MANAGER_DATA (appdata)); 
    152215 
    153216  appdata->upgradelist = upgradelist; 
     
    163226                                            gpointer selectedlist) 
    164227{ 
    165   g_return_if_fail (appdata != NULL); 
     228  g_return_if_fail (MOKO_IS_APPLICATION_MANAGER_DATA (appdata)); 
    166229 
    167230  appdata->selectedlist = selectedlist; 
     
    179242                                            guint id) 
    180243{ 
    181   g_return_if_fail (appdata != NULL); 
     244  g_return_if_fail (MOKO_IS_APPLICATION_MANAGER_DATA (appdata)); 
    182245  g_return_if_fail (id < N_COUNT_PKG_STATUS); 
    183246 
     
    197260  GdkPixbuf  *pixbuf; 
    198261 
    199   g_return_if_fail (appdata != NULL); 
     262  g_return_if_fail (MOKO_IS_APPLICATION_MANAGER_DATA (appdata)); 
    200263 
    201264  pixbuf = create_pixbuf ("package-available.png"); 
  • trunk/src/target/OM-2007/applications/openmoko-appmanager/src/appmanager-data.h

    r274 r302  
    2626#include "pixbuf-list.h" 
    2727 
     28G_BEGIN_DECLS 
     29 
     30#define MOKO_TYPE_APPLICATION_MANAGER_DATA  (moko_type_application_manager_data_get_type ()) 
     31#define MOKO_APPLICATION_MANAGER_DATA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), \ 
     32                                            MOKO_TYPE_APPLICATION_MANAGER_DATA, \ 
     33                                            ApplicationManagerData)) 
     34#define MOKO_APPLICATION_MANAGER_DATA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), \ 
     35                                                    MOKO_TYPE_APPLICATION_MANAGER_DATA, \ 
     36                                                    ApplicationManagerDataClass)) 
     37#define MOKO_IS_APPLICATION_MANAGER_DATA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \ 
     38                                               MOKO_TYPE_APPLICATION_MANAGER_DATA)) 
     39#define MOKO_IS_APPLICATION_MANAGER_DATA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), \ 
     40                                                       MOKO_TYPE_APPLICATION_MANAGER_DATA)) 
     41#define MOKO_APPLICATION_MANAGER_DATA_GET_TYPE(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), \ 
     42                                                     MOKO_TYPE_APPLICATION_MANAGER_DATA, \ 
     43                                                     ApplicationManagerDataClass)) 
     44 
     45 
    2846/** 
    2947 * @brief The all data that will be used in the application manager 
     
    3553 */ 
    3654typedef struct _ApplicationManagerData { 
     55  GObject          parent;             ///<! The parent of the struct 
     56 
    3757  MokoPanedWindow  *mwindow;           ///<! The main window 
    3858  GtkWidget        *tvpkglist;         ///<! The treeview of the package list 
     
    4565  GdkPixbuf        *statuspix[N_COUNT_PKG_STATUS];    ///<! The all pixbufs that need by the package list store 
    4666} ApplicationManagerData; 
     67 
     68/** 
     69 * @brief The class struct of application manager data 
     70 */ 
     71typedef struct _ApplicationManagerDataClass { 
     72  GObjectClass    parent_class;        ///<! The parent class 
     73} ApplicationManagerDataClass; 
     74 
     75GType moko_type_application_manager_data_get_type (void); 
     76 
    4777 
    4878ApplicationManagerData *application_manager_data_new (void); 
     
    102132                                                 guint id); 
    103133 
     134G_END_DECLS 
     135 
    104136#endif 
Note: See TracChangeset for help on using the changeset viewer.