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 :

CSS avec GTKmm2.2 / GTK3


Sujet :

GTK+ avec C & C++

  1. #1
    Membre très actif

    Inscrit en
    Août 2005
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 401
    Par défaut CSS avec GTKmm2.2 / GTK3
    Bonsoir à tous,

    J'aimerais m'amuser avec un petit programme Gtk où je teste des css seulement cela ne fonctionne pas car je ne dois pas savoir comment importer correctement mon CSS. j'ai ceci :

    MainGui.cpp :
    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
    /**
     *
     */
    #include <gui/MainGUI.hpp> 
     
    MainGUI::MainGUI() {}
     
    MainGUI::~MainGUI() {}
     
    void MainGUI::launchGUI(int argc, char* argv[]) {
        Gtk::Main app(argc, argv);
     
        Gtk::Window fenetre;
        Gtk::HBox boiteH(false, 0);
     
        Gtk::Label alabel("ACCUEIL");
        Gtk::Label tlabel("TEST");
        alabel.set_name("labelA");
        tlabel.set_name("labelT");
     
        fenetre.set_name("MainWindow");
        fenetre.set_title("Defence Technology Agency");
        fenetre.set_default_size (1000, 500);
     
        fenetre.add(boiteH);
     
     
     
        boiteH.pack_end(alabel);
        boiteH.pack_end(tlabel);
     
        fenetre.set_app_paintable(true);
     
     
     
        // Gestion du CSS
        m_refStyleProvider = Gtk::CssProvider::create();
     
        try {
            m_refStyleProvider->load_from_path("css/custom_gtk.css");
        } catch (const Glib::Error& ex)
        {
            std::cerr << "Gtk::CssProvider::load_from_path() failed: " << ex.what() << std::endl;
        }
     
        refStyleContext->add_provider(m_refStyleProvider, GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
        refStyleContext->context_save();
     
     
        fenetre.show_all();
     
     
        Gtk::Main::run(fenetre);
    }
    Alors je crois que c'est parce que je n'utilise pas => Gtk::StyleContext::add_provider_for_screen(Gdk::Screen::get_default(), Gtk::CssProvider::create(), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);

    Seulement la ligne suivante que j'ai testé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Gtk::StyleContext::add_provider_for_screen(Gdk::Screen::get_default(), Gtk::CssProvider::create(), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
    Ne fonctionne pas j'ai des erreurs de compilation comme ceci :
    Gtk::StyleContext::add_provider_for_screen(Gdk::Screen::get_screen(), m_refCssProvider, GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
    ^
    /home/akrogames/DevCpp/DTA/src/source/gui/MainGUI.cpp:38:75: error: ‘m_refCssProvider’ was not declared in this scope
    Gtk::StyleContext::add_provider_for_screen(Gdk::Screen::get_screen(), m_refCssProvider, GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
    ^
    make[2]: *** [CMakeFiles/dta.dir/home/akrogames/DevCpp/DTA/src/source/gui/MainGUI.cpp.o] Error 1
    make[1]: *** [CMakeFiles/dta.dir/all] Error 2
    make: *** [all] Error 2
    Enfin je ne sais pas trop comment cela s'utilise et je n'ai truvé que des exemples en python... Si vous avez des liens de doc etc... envoyer s'il vous plait.

    D'avance merci à vous.

  2. #2
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Par défaut
    Peut-être que ce que je viens d'écrire dans la discussion "affichage sous GTK3" peut t'intéresser !
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  3. #3
    Membre très actif

    Inscrit en
    Août 2005
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 401
    Par défaut
    Voici la solution pour inclure le CSS pour tous les widgets de la fenêtre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    m_refStyleProvider = Gtk::CssProvider::create();
        Glib::RefPtr<Gdk::Screen> screen = Gdk::Screen::get_default();
        Gtk::StyleContext::add_provider_for_screen(screen, m_refStyleProvider, GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
    Mais bon GtK c'est quand même super chiant. Pourtant y'a du potentiel dans l'ajout de css pour gérer une fenêtre graphique.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. css avec GTK3 et environnement graphique.
    Par troumad dans le forum Applications et environnements graphiques
    Réponses: 0
    Dernier message: 02/09/2012, 07h43
  2. définir une hauteur de table dans un css avec ie et mozilla
    Par regis68 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 17/01/2006, 22h28
  3. Problème CSS avec Firefox
    Par Bisûnûrs dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 20/08/2005, 15h29
  4. Menu CSS avec bordures - fonctionne firefox, pas ie
    Par Romalafrite dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 21/11/2004, 15h40
  5. problème css avec :focus
    Par dervish dans le forum Mise en page CSS
    Réponses: 7
    Dernier message: 28/09/2004, 16h18

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