2011-8-1 20:01:05

 


2011-8-1 20:01:05


GObjectClass 和 GObject 的区别


struct  _GObjectClass
{
  GTypeClass   g_type_class;

  /*< private >*/
  GSList      *construct_properties;

  /*< public >*/
  /* seldomly overidden */
  GObject*   (*constructor)     (GType                  type,
                                 guint                  n_construct_properties,
                                 GObjectConstructParam *construct_properties);
  /* overridable methods */
  void       (*set_property)  (GObject        *object,
                                         guint           property_id,
                                         const GValue   *value,
                                         GParamSpec     *pspec);
  void       (*get_property)  (GObject        *object,
                                         guint           property_id,
                                         GValue         *value,
                                         GParamSpec     *pspec);
  void       (*dispose)   (GObject        *object);
  void       (*finalize)  (GObject        *object);
  /* seldomly overidden */
  void       (*dispatch_properties_changed) (GObject      *object,
          guint    n_pspecs,
          GParamSpec  **pspecs);
  /* signals */
  void      (*notify)   (GObject *object,
      GParamSpec *pspec);

  /* called when done constructing */
  void      (*constructed)  (GObject *object);

  /*< private >*/
  /* padding */
  gpointer pdummy[7];
};

struct  _GObject
{
  GTypeInstance  g_type_instance;
 
  /*< private >*/
  volatile guint ref_count;
  GData         *qdata;
};


struct _HildonDesktopBackgroundPrivate
{
  GdkColor                     *color;
  HildonDesktopBackgroundMode   mode;
  gchar                        *filename;
  gchar                        *cache;
};

背景有自己的私有数据

 

看看这个宏做了什么事情

G_DEFINE_TYPE (HDHomeBackground, hd_home_background, HILDON_DESKTOP_TYPE_BACKGROUND);

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值