[GTK] trier une gtk_list

trier une gtk_list [GTK] - C - Programmation

Marsh Posté le 13-02-2006 à 16:34:58    

bonjour,
voila j'ai une gtk_list et j'ai rendu l'en tête "cliquable" grace à cette fonction

Code :
  1. gtk_tree_view_set_headers_clickable(GTK_TREE_VIEW(pListView), TRUE);


 
maintenant ce que je voudrai ce que l'orsque l'utilisateur clique sur une des colonnes la liste se trie automatiquement dans l'ordre alphabétique
 
enfet je vois à peu prés comment faire, grace à un signal qui se déclanche lors du clic sur l'en-tête d'une colonne, seulement je vois pas trop quel signal utiliser et quels sont les paramêtre qui vont en sortir
 
merci de me donner un indice ;)


Message édité par dams78 le 14-02-2006 à 11:19:27

---------------
dam's (debianer), ma galerie Flickr
Reply

Marsh Posté le 13-02-2006 à 16:34:58   

Reply

Marsh Posté le 14-02-2006 à 08:41:32    

:bounce:


---------------
dam's (debianer), ma galerie Flickr
Reply

Marsh Posté le 14-02-2006 à 10:17:24    

gtk_tree_view_column_set_sort_column_id

Reply

Marsh Posté le 14-02-2006 à 10:31:39    

merci, ca marche
voila comment je déclare mes colonnes:

Code :
  1. pColumn = gtk_tree_view_column_new_with_attributes("Date",pCellRenderer,"text",DATE_COLUMN,NULL);
  2. gtk_tree_view_column_set_sort_column_id(pColumn, 0);
  3. gtk_tree_view_column_set_sizing(pColumn, GTK_TREE_VIEW_COLUMN_FIXED);


et biensur il faut rendre l'en-tête cliquable
merci de ton aide!


---------------
dam's (debianer), ma galerie Flickr
Reply

Marsh Posté le 14-02-2006 à 11:15:05    

n'oublie pas gtk_tree_sortable_set_sort_func

Reply

Marsh Posté le 14-02-2006 à 11:19:16    

je comprends pas trop à quoi elle sert cette fonction?
est-ce que quelqu'un sait comment trier une colonne qui contients des dates? (et heures)


---------------
dam's (debianer), ma galerie Flickr
Reply

Marsh Posté le 14-02-2006 à 11:23:06    

oui, justement avec cette fonction. Dans ton model tu as plusieurs choses : la date textuelle et une représentation binaire de la date. Le tout c'est de lui dire de faire des comparaisons sur les dates brutes qu'on sait manipuler quand il afficher la colonne textuelle. T'as le droit d'avoir des colonnes cachées dans ton modèle tu sais :)

Reply

Marsh Posté le 14-02-2006 à 11:25:39    

ok, j'ai pas tout compris mais je crois que je dois creuser dans cette direction ;)
sinon pour les colonnes cachées la j'en ai pas (pour l'instant), mais je connais, c'est pratique parfois.
merci de ton aide


---------------
dam's (debianer), ma galerie Flickr
Reply

Marsh Posté le 14-02-2006 à 14:44:25    

on va dire que tu stockes ta date en format time_t (qu'on va apparenter à du guint) et que tu l'affiches sous forme textuelle. Alors tu rajoutes une colonne dans ton model, mais pas de cellrenderer (comme ça, cette colonne G_TYPE_UINT n'est pas affichée. Après tu fais une fonction pour gtk_tree_sortable_set_sort_func qui quand elle doit comparer 2 lignes en fonctions de la date, en bien elle va chercher les 2 guint dans le model et les compare eux, et pas les versions textuelles.

Reply

Marsh Posté le 15-02-2006 à 12:01:23    

merci de ton aide,
mais comment convertir la date?
en faite je voudrai afficher un truc du style "le jj/mm/aaaa à hh:mm"
et pour faire le tri bah dans la colonne caché je dois mettre quoi?


---------------
dam's (debianer), ma galerie Flickr
Reply

Marsh Posté le 15-02-2006 à 12:01:23   

Reply

Marsh Posté le 21-02-2006 à 20:47:53    

avec g_date_strftime par exemple
et dans ta colonne cachée, ben des GDate par exemple, ou des time_t, etc

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed