# Gtk3 Gdk::Window.create\_cairo\_contex replacement

**URL:** <https://www.ruby-forum.com/t/gtk3-gdk-window-create-cairo-contex-replacement/228573>\
**Category:** Ruby-Gnome 2\
**Created:** [April 28, 2013, 8:15pm UTC](https://www.ruby-forum.com/t/gtk3-gdk-window-create-cairo-contex-replacement/228573 "2013-04-28T20:15:49Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Detlef\_R](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@Detlef\_R](https://www.ruby-forum.com/u/Detlef_R)\
**Post date:** [April 28, 2013, 8:15pm UTC](https://www.ruby-forum.com/t/gtk3-gdk-window-create-cairo-contex-replacement/228573/1 "2013-04-28T20:15:49Z")

</div>

Hi,

with gtk3 Gdk::Window.create\_cairo\_contex is gone. The C implementation  
of gdk3 has a gdk\_cairo\_\* “namespace” for cairo related functions.

For the ruby implementation I think it is best to put the function

cairo\_t \*gdk\_cairo\_create (GdkWindow \*window);

which is a replacement for create\_cairo\_contex in

Gdk::Window.cairo\_create

any objections?

Cheers detlef

---

<div class="post-metadata">

**Author:** ![Detlef\_R](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@Detlef\_R](https://www.ruby-forum.com/u/Detlef_R)\
**Post date:** [April 29, 2013, 5:59am UTC](https://www.ruby-forum.com/t/gtk3-gdk-window-create-cairo-contex-replacement/228573/2 "2013-04-29T05:59:15Z")

</div>

Hi,

In [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
“[ruby-gnome2-devel-en] gtk3 Gdk::Window.create\_cairo\_contex  
replacement” on Sun, 28 Apr 2013 20:14:59 +0200,  
Detlef R. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> with gtk3 Gdk::Window.create\_cairo\_contex is gone. The C implementation  
> of gdk3 has a gdk\_cairo\_\* “namespace” for cairo related functions.
> 
> For the ruby implementation I think it is best to put the function
> 
> cairo\_t \*gdk\_cairo\_create (GdkWindow \*window);
> 
> which is a replacement for create\_cairo\_contex in
> 
> Gdk::Window.cairo\_create

Thanks, I didn’t know about it.

I added Gdk::Window#create\_cairo\_context because:

- The API is backward compatible. 🙂
- It is a natural that method name uses a verb.  
Using namespace (or prefix) as a method name is not  
Object Oriented programming way. It is a sign that we  
should break the object.

## Thanks,

kou

---

<div class="post-metadata">

**Author:** ![Detlef\_R](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@Detlef\_R](https://www.ruby-forum.com/u/Detlef_R)\
**Post date:** [April 30, 2013, 6:33pm UTC](https://www.ruby-forum.com/t/gtk3-gdk-window-create-cairo-contex-replacement/228573/3 "2013-04-30T18:33:23Z")

</div>

Hi,

Am 29.04.2013 05:58, schrieb Kouhei S.:

> > cairo\_t \*gdk\_cairo\_create (GdkWindow \*window);
> > 
> > which is a replacement for create\_cairo\_contex in
> > 
> > Gdk::Window.cairo\_create
> 
> Thanks, I didn’t know about it.
> 
> I added Gdk::Window#create\_cairo\_context because:

Thanks!

Cheers, detlef
