IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GTK+ avec C & C++ Discussion :

Utilisation des GtkTextTag


Sujet :

GTK+ avec C & C++

  1. #1
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    287
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 287
    Par défaut Utilisation des GtkTextTag
    Bonsoir,

    j'ai vu que les GtkTextTag permettent d'appliquer un style à un texte (italique, gras, couleur de surlignage, ...)
    Mais voila, je n'ai pas du tout compris comment on les utilise ...

    je voudrais savoir à quoi correspond exactement ce GtkTextTag, les arguments qu'il faut passer à ce widget lors de sa construction, comment appliquer à une sélection tel ou tel style ...

    voili voilou
    merci

  2. #2
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 607
    Par défaut
    Je cherche une réponse et je tombe sur cette question !
    Tu en es où dans tes recherches ?

    Une petite recherche et je tombe sur : http://developer.gnome.org/doc/API/2...ontDescription

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     GtkTextTag * tag_presentation;
     PangoFontDescription * style;
     
    [...]
     
     style=pango_font_description_new();
     pango_font_description_set_style (style,PANGO_STYLE_ITALIC);
     pango_font_description_set_weight (style,PANGO_WEIGHT_ULTRABOLD);
     tag_presentation = gtk_text_buffer_create_tag(texte1,"tag_presentation","font-desc",style,"tag_presentation", "background","black", "foreground", "white","underline",PANGO_UNDERLINE_SINGLE, NULL);
     
    [...]
     
      gtk_text_buffer_get_end_iter(texte1,&iter);
      gtk_text_buffer_insert_with_tags(texte1,&iter,g_locale_to_utf8 ("\nopération : ", -1, NULL, NULL, NULL),13,tag_presentation,NULL);
    Modérateur Mageia/Mandriva Linux
    Amicalement VOOotre
    Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
    Mes tutoriels : xrandr, algorigramme et C, xml et gtk...

  3. #3
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Je peut proposer une source que j'avais en stock pour un futur tutoriel sur ce sujet

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    #include <gtk/gtk.h>
    #include <glib/gprintf.h>
     
     
    int main (int argc, char ** argv)
    {
       GtkWidget      * p_win     = NULL;
       GtkWidget      * p_box     = NULL;
       GtkWidget      * p_text    = NULL;
       GtkTextBuffer  * p_txtbuf  = NULL;
       GtkTextIter      iter;
     
     
       gtk_init (& argc, & argv);
     
     
       p_win = gtk_window_new           (GTK_WINDOW_TOPLEVEL);
       gtk_window_set_default_size      (GTK_WINDOW (p_win), 400, 200);
       gtk_container_set_border_width   (GTK_CONTAINER (p_win), 5);
       gtk_window_set_position          (GTK_WINDOW (p_win), GTK_WIN_POS_CENTER);
     
     
       p_box    = gtk_vbox_new             (FALSE, 0);
       p_text   = gtk_text_view_new        ();
       p_txtbuf = gtk_text_view_get_buffer (GTK_TEXT_VIEW (p_text));
     
       gtk_container_add    (GTK_CONTAINER (p_win), p_box);
       gtk_box_pack_start   (GTK_BOX (p_box), p_text, TRUE, TRUE, 0);
     
     
       /*
        * Creation de tag pour du texte italique et souligne.
        */
       gtk_text_buffer_create_tag (
          p_txtbuf, "italic", "style", PANGO_STYLE_ITALIC, NULL
       );
     
       gtk_text_buffer_create_tag (
          p_txtbuf, "underline", "underline", PANGO_UNDERLINE_SINGLE, NULL
       );
     
       /*
        * Ajout du texte avec les deux tags.
        */
       gtk_text_buffer_get_iter_at_offset (p_txtbuf, & iter, 0);
     
       gtk_text_buffer_insert_with_tags_by_name (
          p_txtbuf, & iter,
          "Texte italique et souligné !", -1,
          "italic", "underline",
          NULL
       );
     
     
       g_signal_connect (
          G_OBJECT (p_win), "destroy", G_CALLBACK (gtk_main_quit), NULL
       );
     
     
       gtk_widget_show_all (p_win);
       gtk_main ();
     
     
       return 0;
    }
    Enjoy
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  4. #4
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 607
    Par défaut
    Je suis en train de voir que mon PangoFontDescription est inutile car on peut trouver toutes les descriptions dans le gtk_text_buffer_create_tag.
    Alors ça sert à quoi ?
    Modérateur Mageia/Mandriva Linux
    Amicalement VOOotre
    Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
    Mes tutoriels : xrandr, algorigramme et C, xml et gtk...

  5. #5
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Je me suis pas encore penché sur ce genre de fonctions mais cela peut surement être utile pour par exemple un widget genre GtkDrawingArea, car là tu n'as pas de GtkTextBuffer

    Mais bon comme pour tout le reste, en GTK+ il y'a toujours plusieurs chemins pour obtenir ce qu'on veut
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  6. #6
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 607
    Par défaut
    Citation Envoyé par Franck.H
    Jen GTK+ il y'a toujours plusieurs chemins pour obtenir ce qu'on veut
    Il y avait ça en html, on l'a complétement réduit en xhtml. Certaines métghodes ayant priorité sur les autres, ça surprenait parfois !
    Modérateur Mageia/Mandriva Linux
    Amicalement VOOotre
    Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
    Mes tutoriels : xrandr, algorigramme et C, xml et gtk...

Discussions similaires

  1. [CR8.5] Utilisation des codes barre
    Par Robert dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 20/01/2005, 16h13
  2. utilisation des sockets sous windows
    Par Tupac dans le forum Réseau
    Réponses: 2
    Dernier message: 21/12/2002, 18h24
  3. [Crystal Report] Utilisation des vues de sql serveur
    Par Olivierakadev dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 15/11/2002, 17h44
  4. [BCB5] Utilisation des Ressources (.res)
    Par Vince78 dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/04/2002, 16h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo