바탕화면만들기관련 질문
안녕하세요 리눅스에서 프로그램을 공부하는 학생인데요,
프로그래밍환경은 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에서 따로 위 두함수의 역할을 하는 것이 있는지 궁금합니다.
긴글 읽어주셔서 감사합니다~
좋은하루 되세요 ^^
댓글 달기