示例#1
0
文件: elicit.c 项目: rephorm/elicit
void
elicit_cursor_set_cross(Elicit *el)
{
  Ecore_X_Cursor cur;
  int cross[49] = {
     0,  0,  0, -1,  0,  0,  0,
     0,  0,  0, -1,  0,  0,  0,
     0,  0,  0, -1,  0,  0,  0,
    -1, -1, -1, -1, -1, -1, -1,
     0,  0,  0, -1,  0,  0,  0,
     0,  0,  0, -1,  0,  0,  0,
     0,  0,  0, -1,  0,  0,  0
  };

  cur = ecore_x_cursor_new(
    ecore_evas_software_x11_window_get(el->ee),
    cross,
    7, 7, 3, 3
  );
  ecore_x_window_cursor_set(
    ecore_evas_software_x11_window_get(el->ee),
    cur
  );
  ecore_x_cursor_free(cur);
}
示例#2
0
文件: elicit.c 项目: rephorm/elicit
void
elicit_cursor_set_default(Elicit *el)
{
  ecore_x_window_cursor_set(
    ecore_evas_software_x11_window_get(el->ee),
    ecore_x_cursor_shape_get(ECORE_X_CURSOR_ARROW)
  );
}
示例#3
0
void Widget::applyFallbackCursor()
{
#if HAVE_ECORE_X
    if (m_data->m_isUsingEcoreX && !m_data->m_cursorGroup.isNull()) {
        int shape = cursorStringMap.cursor(m_data->m_cursorGroup.utf8().data());

        if (shape < ECORE_X_CURSOR_X || shape > ECORE_X_CURSOR_XTERM) {
            fprintf(stderr, "ERROR: cannot map an equivalent X cursor for"
                    " cursor group %s", m_data->m_cursorGroup.utf8().data());
            shape = ECORE_X_CURSOR_LEFT_PTR;
        }

        Ecore_X_Window win = ecore_evas_software_x11_window_get(ecoreEvas());
        Ecore_X_Cursor cur = ecore_x_cursor_shape_get(shape);
        ecore_x_window_cursor_set(win, cur);
        return;
    }
#else
    fprintf(stderr, "ERROR: Ooops, no fallback to set cursor %s!\n",
            m_data->m_cursorGroup.utf8().data());
#endif
}