[질문] Gtk에서 다른 응용프로그램 제어 질문

sshim07의 이미지

GTK를 이용하여 GUI Program을 개발하고 있는 중에

도대체 능력 밖의 일이라 자문을 구하고자 합니다.

계측기를 사용해 보신 분이시라면 이해가 빠르실 것 같은데

최근에 개발되고 있는 계측기에는 키보드, 마우스를 다 사용합니다.

하지만, 환경에 따라 키보드, 마우스보다는 Keypad 버튼을 통해

키보드, 마우스 기능을 GTK 단일 GUI에서는 xev라는 Lib를

통해서 Keypad의 특정 버튼을 누르면 키보드의 Tab키가 누른 것 처럼

인식하도록 코딩하여 버튼의 Setfocus 위치를 변경하도록 계측기를 제어합니다.

여기서 문제가 발생합니다. 계측기에 Printer를 인식시켜야 하는데

GTK 단독일때는 keypad로 키보드, 마우스와 같은 동작을 구현하는데는 문제가 없지만,

GTK에서 Printer Install Program을 Loading 한 후부터는

Linux 상에 두개의 응용 Program이 있습니다.

GTK처럼 Keypad로 키보드, 마우스 기능을 Printer Install Program을 제어하고 싶은데

혹자는 Printer Install Program의 오픈 소스에 GTK에서 Keypad 제어했던 기능을 추가하는 방법이

있다고 하는데 의견일 뿐이고 경험이 없으니 접근 방법이 생각이 나질 않습니다.

이런 쪽에 경험이 있으시거나, 또 다른 방법을 제시하는 조언 부탁 드립니다.

bushi의 이미지

키패드라는 h/w 에 대해 커널 hid 드라이버를 만들었다면 이게 뜨건 저게 뜨건 별 상관없을텐데...
가상의 장치인가 보군요.

http://homepage3.nifty.com/tsato/xvkbd 의 소스를 보면 금방 이해하시겠네요.
focus 가 있는 window , widget 을 알아내는 부분과 활용하는 부분을 보세요.
(florence 라는 놈도 있는데, 이놈은 gtk 라기 보단 gnome 에 찰떡같이 붙어있는 놈이라 배보다 배꼽이 더 크니 보기가 번거로우실 겁니다.)

OTL

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.