바탕화면만들기관련 질문

kyh1026의 이미지

안녕하세요 리눅스에서 프로그램을 공부하는 학생인데요,

프로그래밍환경은 Fedora 8 GNOME 2.22에서 Qt4.3.4를 이용하여 하고 있습니다.

시작한지 얼마 안되서 모르는게 많아 질문드립니다.

Qt를 이용하여 창을 만들고,

그 창이 바탕화면역할을 한다는 것을 창관리자인 노틸러스에 알려주려 하고 있습니다.

노틸러스에 보면 아래 코드에 GDK 라이브러리를 이용하여 기능이 구현되어 있는데......

static void set_wmspec_desktop_hint (GdkWindow *window)
{
GdkAtom atom;

atom = gdk_atom_intern ("_NET_WM_WINDOW_TYPE_DESKTOP", FALSE);

gdk_property_change (window,
gdk_atom_intern ("_NET_WM_WINDOW_TYPE", FALSE),
gdk_x11_xatom_to_atom (XA_ATOM), 32,
GDK_PROP_MODE_REPLACE, (guchar *) &atom, 1);
}

이것을 Xlib를 이용하여 고치려고 하고 있습니다.

고쳐보면 아래 코드처럼 나오는게 맞는거 같은데요...

atom = XInternAtom(,"_NET_WM_WINDOW_TYPE_DESKTOP", FALSE);

XChangeProperty(, , XInternAtom(NULL, "_NET_WM_WINDOW_TYPE", FALSE),
XA_ATOM, 32, PropModeReplace, (unsigned char *)&atom, 1);

함수의 원형이

XInternAtom(display, property_name, only_if_exists)

XChangeProperty(display, w, property, type, format, mode, data, nelements)

인데 Qt를 이용해서 프로그래밍을 하면 코드단에서는 Xlib 처럼 Display설정하는것과 window를 생성하는 코드없이

선언하고 show()면 보여지게 되는데 display와 widonw를 어떻게 알아낼 수 있을까요?

아니면 Qt에서 따로 위 두함수의 역할을 하는 것이 있는지 궁금합니다.

긴글 읽어주셔서 감사합니다~

좋은하루 되세요 ^^