org.eclipse.swt.widgets.Shell.gtk_widget_get_window()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(15.2k)|赞(0)|评价(0)|浏览(149)

本文整理了Java中org.eclipse.swt.widgets.Shell.gtk_widget_get_window()方法的一些代码示例,展示了Shell.gtk_widget_get_window()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Shell.gtk_widget_get_window()方法的具体详情如下:
包路径:org.eclipse.swt.widgets.Shell
类名称:Shell
方法名:gtk_widget_get_window

Shell.gtk_widget_get_window介绍

暂无

代码示例

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.linux.s390x

@Override
long /*int*/ gtk_leave_notify_event (long /*int*/ widget, long /*int*/ event) {
  if (widget == shellHandle) {
    if (isCustomResize ()) {
      GdkEventCrossing gdkEvent = new GdkEventCrossing ();
      OS.memmove (gdkEvent, event, GdkEventCrossing.sizeof);
      if ((gdkEvent.state & OS.GDK_BUTTON1_MASK) == 0) {
        long /*int*/ window = gtk_widget_get_window (shellHandle);
        OS.gdk_window_set_cursor (window, 0);
        display.resizeMode = 0;
      }
    }
    return 0;
  }
  return super.gtk_leave_notify_event (widget, event);
}

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.linux.ppc

@Override
int /*long*/ gtk_leave_notify_event (int /*long*/ widget, int /*long*/ event) {
  if (widget == shellHandle) {
    if (isCustomResize ()) {
      GdkEventCrossing gdkEvent = new GdkEventCrossing ();
      OS.memmove (gdkEvent, event, GdkEventCrossing.sizeof);
      if ((gdkEvent.state & OS.GDK_BUTTON1_MASK) == 0) {
        int /*long*/ window = gtk_widget_get_window (shellHandle);
        OS.gdk_window_set_cursor (window, 0);
        display.resizeMode = 0;
      }
    }
    return 0;
  }
  return super.gtk_leave_notify_event (widget, event);
}

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.aix.ppc

@Override
int /*long*/ gtk_leave_notify_event (int /*long*/ widget, int /*long*/ event) {
  if (widget == shellHandle) {
    if (isCustomResize ()) {
      GdkEventCrossing gdkEvent = new GdkEventCrossing ();
      OS.memmove (gdkEvent, event, GdkEventCrossing.sizeof);
      if ((gdkEvent.state & OS.GDK_BUTTON1_MASK) == 0) {
        int /*long*/ window = gtk_widget_get_window (shellHandle);
        OS.gdk_window_set_cursor (window, 0);
        display.resizeMode = 0;
      }
    }
    return 0;
  }
  return super.gtk_leave_notify_event (widget, event);
}

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.linux.ppc

if (isDisposed ()) return 0;
if (isCustomResize ()) {
  OS.gdk_window_invalidate_rect (gtk_widget_get_window (shellHandle), null, false);
  OS.gdk_window_invalidate_rect (gtk_widget_get_window (shellHandle), null, false);

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.linux.s390x

if (isDisposed ()) return 0;
if (isCustomResize ()) {
  OS.gdk_window_invalidate_rect (gtk_widget_get_window (shellHandle), null, false);
  OS.gdk_window_invalidate_rect (gtk_widget_get_window (shellHandle), null, false);

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.aix.ppc

if (isDisposed ()) return 0;
if (isCustomResize ()) {
  OS.gdk_window_invalidate_rect (gtk_widget_get_window (shellHandle), null, false);
  OS.gdk_window_invalidate_rect (gtk_widget_get_window (shellHandle), null, false);

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.linux.ppc

@Override
void releaseWidget () {
  Region regionToDispose = null;
  if (originalRegion != null) regionToDispose  = region;
  super.releaseWidget ();
  destroyAccelGroup ();
  display.clearModal (this);
  if (display.activeShell == this) display.activeShell = null;
  if (tooltipsHandle != 0) OS.g_object_unref (tooltipsHandle);
  tooltipsHandle = 0;
  if (group != 0) OS.g_object_unref (group);
  group = modalGroup = 0;
  if (!OS.GTK3) {
    int /*long*/ window = gtk_widget_get_window (shellHandle);
    OS.gdk_window_remove_filter(window, display.filterProc, shellHandle);
  }
  lastActive = null;
  if (regionToDispose != null) {
    regionToDispose.dispose();
  }
}

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.aix.ppc

@Override
int /*long*/ gtk_realize (int /*long*/ widget) {
  int /*long*/ result = super.gtk_realize (widget);
  int /*long*/ window = gtk_widget_get_window (shellHandle);
  if ((style & SWT.SHELL_TRIM) != SWT.SHELL_TRIM) {
    int decorations = 0;

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.linux.ppc

@Override
int /*long*/ gtk_realize (int /*long*/ widget) {
  int /*long*/ result = super.gtk_realize (widget);
  int /*long*/ window = gtk_widget_get_window (shellHandle);
  if ((style & SWT.SHELL_TRIM) != SWT.SHELL_TRIM) {
    int decorations = 0;

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.linux.s390x

@Override
void releaseWidget () {
  Region regionToDispose = null;
  if (originalRegion != null) regionToDispose  = region;
  super.releaseWidget ();
  destroyAccelGroup ();
  display.clearModal (this);
  if (display.activeShell == this) display.activeShell = null;
  if (tooltipsHandle != 0) OS.g_object_unref (tooltipsHandle);
  tooltipsHandle = 0;
  if (group != 0) OS.g_object_unref (group);
  group = modalGroup = 0;
  if (!OS.GTK3) {
    long /*int*/ window = gtk_widget_get_window (shellHandle);
    OS.gdk_window_remove_filter(window, display.filterProc, shellHandle);
  }
  lastActive = null;
  if (regionToDispose != null) {
    regionToDispose.dispose();
  }
}

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.aix.ppc

@Override
void releaseWidget () {
  Region regionToDispose = null;
  if (originalRegion != null) regionToDispose  = region;
  super.releaseWidget ();
  destroyAccelGroup ();
  display.clearModal (this);
  if (display.activeShell == this) display.activeShell = null;
  if (tooltipsHandle != 0) OS.g_object_unref (tooltipsHandle);
  tooltipsHandle = 0;
  if (group != 0) OS.g_object_unref (group);
  group = modalGroup = 0;
  if (!OS.GTK3) {
    int /*long*/ window = gtk_widget_get_window (shellHandle);
    OS.gdk_window_remove_filter(window, display.filterProc, shellHandle);
  }
  lastActive = null;
  if (regionToDispose != null) {
    regionToDispose.dispose();
  }
}

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.linux.s390x

@Override
long /*int*/ gtk_draw (long /*int*/ widget, long /*int*/ cairo) {
  if (widget == shellHandle) {
    if (isCustomResize ()) {
      int [] width = new int [1];
      int [] height = new int [1];
      long /*int*/ window = gtk_widget_get_window (widget);
      gdk_window_get_size (window, width, height);
      int border = OS.gtk_container_get_border_width (widget);
      long /*int*/ context = OS.gtk_widget_get_style_context (shellHandle);
      //TODO draw shell frame on GTK3
      OS.gtk_style_context_save (context);
      OS.gtk_render_frame (context, cairo, 0, 0, width [0], border);
      OS.gtk_render_frame (context, cairo, 0, height [0] - border, width [0], border);
      OS.gtk_render_frame (context, cairo, 0, border, border, height [0] - border - border);
      OS.gtk_render_frame (context, cairo, width [0] - border, border, border, height [0] - border - border);
      OS.gtk_render_frame (context, cairo, 0 + 10, 0 + 10, width [0] - 20, height [0] - 20);
      OS.gtk_style_context_restore (context);
      return 1;
    }
    return 0;
  }
  return super.gtk_draw (widget, cairo);
}

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.linux.ppc

@Override
int /*long*/ gtk_draw (int /*long*/ widget, int /*long*/ cairo) {
  if (widget == shellHandle) {
    if (isCustomResize ()) {
      int [] width = new int [1];
      int [] height = new int [1];
      int /*long*/ window = gtk_widget_get_window (widget);
      gdk_window_get_size (window, width, height);
      int border = OS.gtk_container_get_border_width (widget);
      int /*long*/ context = OS.gtk_widget_get_style_context (shellHandle);
      //TODO draw shell frame on GTK3
      OS.gtk_style_context_save (context);
      OS.gtk_render_frame (context, cairo, 0, 0, width [0], border);
      OS.gtk_render_frame (context, cairo, 0, height [0] - border, width [0], border);
      OS.gtk_render_frame (context, cairo, 0, border, border, height [0] - border - border);
      OS.gtk_render_frame (context, cairo, width [0] - border, border, border, height [0] - border - border);
      OS.gtk_render_frame (context, cairo, 0 + 10, 0 + 10, width [0] - 20, height [0] - 20);
      OS.gtk_style_context_restore (context);
      return 1;
    }
    return 0;
  }
  return super.gtk_draw (widget, cairo);
}

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.aix.ppc

@Override
int /*long*/ gtk_draw (int /*long*/ widget, int /*long*/ cairo) {
  if (widget == shellHandle) {
    if (isCustomResize ()) {
      int [] width = new int [1];
      int [] height = new int [1];
      int /*long*/ window = gtk_widget_get_window (widget);
      gdk_window_get_size (window, width, height);
      int border = OS.gtk_container_get_border_width (widget);
      int /*long*/ context = OS.gtk_widget_get_style_context (shellHandle);
      //TODO draw shell frame on GTK3
      OS.gtk_style_context_save (context);
      OS.gtk_render_frame (context, cairo, 0, 0, width [0], border);
      OS.gtk_render_frame (context, cairo, 0, height [0] - border, width [0], border);
      OS.gtk_render_frame (context, cairo, 0, border, border, height [0] - border - border);
      OS.gtk_render_frame (context, cairo, width [0] - border, border, border, height [0] - border - border);
      OS.gtk_render_frame (context, cairo, 0 + 10, 0 + 10, width [0] - 20, height [0] - 20);
      OS.gtk_style_context_restore (context);
      return 1;
    }
    return 0;
  }
  return super.gtk_draw (widget, cairo);
}

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.aix.ppc

OS.memmove (gdkEventExpose, event, GdkEventExpose.sizeof);
int /*long*/ style = OS.gtk_widget_get_style (widget);
int /*long*/ window = gtk_widget_get_window (widget);
int [] width = new int [1];
int [] height = new int [1];

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.linux.s390x

OS.memmove (gdkEventExpose, event, GdkEventExpose.sizeof);
long /*int*/ style = OS.gtk_widget_get_style (widget);
long /*int*/ window = gtk_widget_get_window (widget);
int [] width = new int [1];
int [] height = new int [1];

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.linux.ppc

OS.memmove (gdkEventExpose, event, GdkEventExpose.sizeof);
int /*long*/ style = OS.gtk_widget_get_style (widget);
int /*long*/ window = gtk_widget_get_window (widget);
int [] width = new int [1];
int [] height = new int [1];

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.linux.ppc

@Override
void hookEvents () {
  super.hookEvents ();
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [KEY_PRESS_EVENT], 0, display.getClosure (KEY_PRESS_EVENT), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [WINDOW_STATE_EVENT], 0, display.getClosure (WINDOW_STATE_EVENT), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [SIZE_ALLOCATE], 0, display.getClosure (SIZE_ALLOCATE), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [CONFIGURE_EVENT], 0, display.getClosure (CONFIGURE_EVENT), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [DELETE_EVENT], 0, display.getClosure (DELETE_EVENT), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [MAP_EVENT], 0, display.shellMapProcClosure, false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [ENTER_NOTIFY_EVENT], 0, display.getClosure (ENTER_NOTIFY_EVENT), false);
  OS.g_signal_connect_closure (shellHandle, OS.move_focus, display.getClosure (MOVE_FOCUS), false);
  if (!OS.GTK3) {
    int /*long*/ window = gtk_widget_get_window (shellHandle);
    OS.gdk_window_add_filter  (window, display.filterProc, shellHandle);
  } else {
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [FOCUS_IN_EVENT], 0, display.getClosure (FOCUS_IN_EVENT), false);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [FOCUS_OUT_EVENT], 0, display.getClosure (FOCUS_OUT_EVENT), false);
  }
  if (isCustomResize ()) {
    int mask = OS.GDK_POINTER_MOTION_MASK | OS.GDK_BUTTON_RELEASE_MASK | OS.GDK_BUTTON_PRESS_MASK |  OS.GDK_ENTER_NOTIFY_MASK | OS.GDK_LEAVE_NOTIFY_MASK;
    OS.gtk_widget_add_events (shellHandle, mask);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [EXPOSE_EVENT], 0, display.getClosure (EXPOSE_EVENT), false);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [LEAVE_NOTIFY_EVENT], 0, display.getClosure (LEAVE_NOTIFY_EVENT), false);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [MOTION_NOTIFY_EVENT], 0, display.getClosure (MOTION_NOTIFY_EVENT), false);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [BUTTON_PRESS_EVENT], 0, display.getClosure (BUTTON_PRESS_EVENT), false);
  }
}

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.linux.s390x

@Override
void hookEvents () {
  super.hookEvents ();
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [KEY_PRESS_EVENT], 0, display.getClosure (KEY_PRESS_EVENT), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [WINDOW_STATE_EVENT], 0, display.getClosure (WINDOW_STATE_EVENT), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [SIZE_ALLOCATE], 0, display.getClosure (SIZE_ALLOCATE), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [CONFIGURE_EVENT], 0, display.getClosure (CONFIGURE_EVENT), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [DELETE_EVENT], 0, display.getClosure (DELETE_EVENT), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [MAP_EVENT], 0, display.shellMapProcClosure, false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [ENTER_NOTIFY_EVENT], 0, display.getClosure (ENTER_NOTIFY_EVENT), false);
  OS.g_signal_connect_closure (shellHandle, OS.move_focus, display.getClosure (MOVE_FOCUS), false);
  if (!OS.GTK3) {
    long /*int*/ window = gtk_widget_get_window (shellHandle);
    OS.gdk_window_add_filter  (window, display.filterProc, shellHandle);
  } else {
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [FOCUS_IN_EVENT], 0, display.getClosure (FOCUS_IN_EVENT), false);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [FOCUS_OUT_EVENT], 0, display.getClosure (FOCUS_OUT_EVENT), false);
  }
  if (isCustomResize ()) {
    int mask = OS.GDK_POINTER_MOTION_MASK | OS.GDK_BUTTON_RELEASE_MASK | OS.GDK_BUTTON_PRESS_MASK |  OS.GDK_ENTER_NOTIFY_MASK | OS.GDK_LEAVE_NOTIFY_MASK;
    OS.gtk_widget_add_events (shellHandle, mask);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [EXPOSE_EVENT], 0, display.getClosure (EXPOSE_EVENT), false);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [LEAVE_NOTIFY_EVENT], 0, display.getClosure (LEAVE_NOTIFY_EVENT), false);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [MOTION_NOTIFY_EVENT], 0, display.getClosure (MOTION_NOTIFY_EVENT), false);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [BUTTON_PRESS_EVENT], 0, display.getClosure (BUTTON_PRESS_EVENT), false);
  }
}

代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.gtk.aix.ppc

@Override
void hookEvents () {
  super.hookEvents ();
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [KEY_PRESS_EVENT], 0, display.getClosure (KEY_PRESS_EVENT), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [WINDOW_STATE_EVENT], 0, display.getClosure (WINDOW_STATE_EVENT), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [SIZE_ALLOCATE], 0, display.getClosure (SIZE_ALLOCATE), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [CONFIGURE_EVENT], 0, display.getClosure (CONFIGURE_EVENT), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [DELETE_EVENT], 0, display.getClosure (DELETE_EVENT), false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [MAP_EVENT], 0, display.shellMapProcClosure, false);
  OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [ENTER_NOTIFY_EVENT], 0, display.getClosure (ENTER_NOTIFY_EVENT), false);
  OS.g_signal_connect_closure (shellHandle, OS.move_focus, display.getClosure (MOVE_FOCUS), false);
  if (!OS.GTK3) {
    int /*long*/ window = gtk_widget_get_window (shellHandle);
    OS.gdk_window_add_filter  (window, display.filterProc, shellHandle);
  } else {
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [FOCUS_IN_EVENT], 0, display.getClosure (FOCUS_IN_EVENT), false);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [FOCUS_OUT_EVENT], 0, display.getClosure (FOCUS_OUT_EVENT), false);
  }
  if (isCustomResize ()) {
    int mask = OS.GDK_POINTER_MOTION_MASK | OS.GDK_BUTTON_RELEASE_MASK | OS.GDK_BUTTON_PRESS_MASK |  OS.GDK_ENTER_NOTIFY_MASK | OS.GDK_LEAVE_NOTIFY_MASK;
    OS.gtk_widget_add_events (shellHandle, mask);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [EXPOSE_EVENT], 0, display.getClosure (EXPOSE_EVENT), false);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [LEAVE_NOTIFY_EVENT], 0, display.getClosure (LEAVE_NOTIFY_EVENT), false);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [MOTION_NOTIFY_EVENT], 0, display.getClosure (MOTION_NOTIFY_EVENT), false);
    OS.g_signal_connect_closure_by_id (shellHandle, display.signalIds [BUTTON_PRESS_EVENT], 0, display.getClosure (BUTTON_PRESS_EVENT), false);
  }
}

相关文章

微信公众号

最新文章

更多

Shell类方法