static gboolean
wp_view_tooltip_cb (GtkWidget  *widget,
                    gint x,
                    gint y,
                    gboolean keyboard_mode,
                    GtkTooltip *tooltip,
                    AppearanceData *data)
{
  GtkTreeIter iter;
  MateWPItem *item;

  if (gtk_icon_view_get_tooltip_context (data->wp_view,
                                         &x, &y,
                                         keyboard_mode,
                                         NULL,
                                         NULL,
                                         &iter))
    {
      gtk_tree_model_get (data->wp_model, &iter, 1, &item, -1);
      gtk_tooltip_set_markup (tooltip, item->description);

      return TRUE;
    }

  return FALSE;
}
Exemplo n.º 2
0
static gboolean
query_tooltip__ (GtkWidget  *widget,
			gint        x,
			gint        y,
			gboolean    keyboard_mode,
			GtkTooltip *tooltip,
			gpointer    user_data)
{
	GtkTreePath *path;
	GtkTreeModel *model;
	switch((char)(long)user_data) {
	case 'i':
	{
		GtkIconView *view = GTK_ICON_VIEW (widget);
		if (!gtk_icon_view_get_tooltip_context (view, &x, &y, keyboard_mode, NULL, &path, NULL))
			return FALSE;
		model = gtk_icon_view_get_model (view);
		break;
	}
	case 't':
	{
		GtkTreeView *view = GTK_TREE_VIEW (widget);
		if (!gtk_tree_view_get_tooltip_context (view, &x, &y, keyboard_mode, NULL, &path, NULL))
			return FALSE;
		model = gtk_tree_view_get_model (view);
		break;
	}
	default:
		return FALSE;
	}
	int id = get_id__(model, path);
	if(id <= 0)
		return FALSE;

	callback_item___* si = callback_item__(id);
	if(si->tooltip_.size() > 0) {
		gtk_tooltip_set_markup (tooltip, si->tooltip_.c_str());
		return TRUE;
	}
	return FALSE;
}
Exemplo n.º 3
0
JNIEXPORT jboolean JNICALL
Java_org_gnome_gtk_GtkIconView_gtk_1icon_1view_1get_1tooltip_1context
(
	JNIEnv* env,
	jclass cls,
	jlong _self,
	jintArray _x,
	jintArray _y,
	jboolean _keyboardTip,
	jlongArray _model,
	jlongArray _path,
	jlong _iter
)
{
	gboolean result;
	jboolean _result;
	GtkIconView* self;
	gint* x;
	gint* y;
	gboolean keyboardTip;
	GtkTreeModel** model;
	GtkTreePath** path;
	GtkTreeIter* iter;

	// convert parameter self
	self = (GtkIconView*) _self;

	// convert parameter x
	x = (gint*) (*env)->GetIntArrayElements(env, _x, NULL);
	if (x == NULL) {
		return  JNI_FALSE; // Java Exception already thrown
	}

	// convert parameter y
	y = (gint*) (*env)->GetIntArrayElements(env, _y, NULL);
	if (y == NULL) {
		return  JNI_FALSE; // Java Exception already thrown
	}

	// convert parameter keyboardTip
	keyboardTip = (gboolean) _keyboardTip;

	// convert parameter model
	if (_model == NULL) {
		model = NULL;
	} else {
		model = (GtkTreeModel**) bindings_java_convert_jarray_to_gpointer(env, _model);
		if (model == NULL) {
			return  JNI_FALSE; // Java Exception already thrown
		}
	}

	// convert parameter path
	if (_path == NULL) {
		path = NULL;
	} else {
		path = (GtkTreePath**) bindings_java_convert_jarray_to_gpointer(env, _path);
		if (path == NULL) {
			return  JNI_FALSE; // Java Exception already thrown
		}
	}

	// convert parameter iter
	iter = (GtkTreeIter*) _iter;

	// call function
	result = gtk_icon_view_get_tooltip_context(self, x, y, keyboardTip, model, path, iter);

	// cleanup parameter self

	// cleanup parameter x
	(*env)->ReleaseIntArrayElements(env, _x, (jint*)x, 0);

	// cleanup parameter y
	(*env)->ReleaseIntArrayElements(env, _y, (jint*)y, 0);

	// cleanup parameter keyboardTip

	// cleanup parameter model
	if (model != NULL) {
		bindings_java_convert_gpointer_to_jarray(env, (gpointer*)model, _model);
	}

	// cleanup parameter path
	if (path != NULL) {
		bindings_java_convert_gpointer_to_jarray(env, (gpointer*)path, _path);
	}

	// cleanup parameter iter

	// translate return value to JNI type
	_result = (jboolean) result;

	// and finally
	return _result;
}