abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:00 | Nová verze

    Zeek (Wikipedie), původně Bro, byl vydán v nové major verzi 8.0.0. Jedná se o open source platformu pro analýzu síťového provozu. Vyzkoušet lze online.

    Ladislav Hagara | Komentářů: 0
    včera 23:55 | Zajímavý software

    Emacs na stříhání videa? Klidně.

    Ladislav Hagara | Komentářů: 3
    včera 15:55 | Nová verze

    Byl vydán Mozilla Firefox 142.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 142 je již k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | Zajímavý článek

    Python Developers Survey 2024, výsledky průzkumu mezi vývojáři v Pythonu organizovaném Python Software Foundation ve spolupráci se společností JetBrains v říjnu a listopadu loňského roku. Zúčastnilo se 30 tisíc vývojářů z 200 zemí. Linux používá 59 % z nich.

    Ladislav Hagara | Komentářů: 0
    včera 04:00 | Zajímavý článek

    Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.08.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.

    Ladislav Hagara | Komentářů: 2
    včera 01:55 | Nová verze

    Byla vydána nová verze 2.51.0 distribuovaného systému správy verzí Git. Přispělo 91 vývojářů, z toho 21 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    včera 01:33 | Zajímavý článek

    Po roce bylo vydáno nové číslo magazínu Phrack: Phrack 72.

    Ladislav Hagara | Komentářů: 3
    18.8. 19:33 | Pozvánky

    OpenSSL Corporation zve na den otevřených dveří ve středu 20. srpna v Brně a konferenci OpenSSL od 7. do 9. října v Praze.

    Ladislav Hagara | Komentářů: 3
    18.8. 19:22 | Komunita

    Konference LinuxDays 2025 proběhne o víkendu 4. a 5. října v Praze. Konference OpenAlt 2025 o víkendu 1. a 2. listopadu v Brně. Blíží se konec přihlašování přednášek. Přihlaste svou přednášku (LinuxDays do 31. srpna a OpenAlt do 3. října) nebo doporučte konference známým.

    Ladislav Hagara | Komentářů: 0
    18.8. 12:22 | IT novinky

    Raspberry Pi Touch Display 2 je nově vedle 7palcové k dispozici také v 5palcové variantě. Rozlišení stejné 720 × 1280 pixelů. Cena 40 dolarů.

    Ladislav Hagara | Komentářů: 1
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (78%)
     (9%)
     (9%)
     (0%)
     (4%)
     (0%)
    Celkem 23 hlasů
     Komentářů: 4, poslední včera 16:48
    Rozcestník

    Dotaz: [Ncurses] Vytvoreni menu

    2.6.2006 13:41 David Sedláček | skóre: 20 | Žďár nad Sázavou
    [Ncurses] Vytvoreni menu
    Přečteno: 310×
    Zdravim.

    Pracuji na programu, kde potrebuji mit ovladaci graficke menu a to ve stylu Midnight Commandera.

    Nemate nekdo ukazkovy kus kodu?

    Je s tim velka prace, sice to je dulezite, ale cas bych potreboval venovat jinym vecem.

    Odpovědi

    2.6.2006 13:42 David Sedláček | skóre: 20 | Žďár nad Sázavou
    Rozbalit Rozbalit vše Re: [Ncurses] Vytvoreni menu
    Zapomel jsem dodat - jazyk C.
    2.6.2006 16:14 Krakonoš | skóre: 17 | Nová Ves v Horách
    Rozbalit Rozbalit vše Re: [Ncurses] Vytvoreni menu
    Kouknete na TLDP. Jsou tam krasne priklady. Mimochodem, ukazkovy kod tam je take,..

    Predpokladam ze existuje jiz inicializovanej screen (stdsrc). Nejdrive by mela byt zavolana fce init_menu() a pote toogle_menu, ktera skoci do nekonecne smycky cekajici na klavesy a obsluhujici menu,...

    set_item_userptr priradi kazde polozce fci, ktera se pri zvoleni polozky vola (obsluhuje to ta moje nekonecna smycka,..)...je to sice drnse reseni a nerikam, ze je nejlepsi, avsak na ukazku by mohlo postacit,...

    finish(); je drive definovana fce, ktera prijima zachycene signaly a provadi "cleanup".
    
    void handle_help(MENU* menu);
    void handle_end(MENU* menu);
    
    ITEM* mmenu_items[2];
    MENU* mmenu;
    
    void init_menu() {
            mmenu_items[0] = new_item("Napoveda", "");
            set_item_userptr(mmenu_items[0], handle_help);
            mmenu_items[1] = new_item("Konec", "");
            set_item_userptr(mmenu_items[1], handle_end);
    
            mmenu = new_menu(mmenu_items);
    }
    
    void toogle_menu() {
            if (post_menu(mmenu)==E_POSTED) unpost_menu(mmenu);
                    else loop_menu();
    }
    
    void loop_menu() {
            for (;;) {
                    int c = getch();
                    switch (c) {
                            case KEY_DOWN: menu_driver(mmenu, REQ_DOWN_ITEM); break;
                            case KEY_UP: menu_driver(mmenu, REQ_UP_ITEM); break;
                            case KEY_F(10): toogle_menu(); break;
                            case KEY_RETURN: {
                                    //Got return, execute what do I need
                                    ITEM* cur;
                                    void (*p)(char *);
                                    cur = current_item(mmenu);
                                    p = item_userptr(cur);
                                    p(mmenu);
                                    break;
                            }
                    }
            }
    }
    
    void handle_help(MENU* menu) {
            mvaddstr(5,5, "Pomoz si sam!");
    }
    
    void handle_end(MENU* menu) {
            finish(0);
    }
    
    
    4.6.2006 19:47 David Sedláček | skóre: 20 | Žďár nad Sázavou
    Rozbalit Rozbalit vše Re: [Ncurses] Vytvoreni menu
    Dobry vecer,

    tak jsem vzhledem k tomu, ze se mi to cele nechtelo procitat, radeji ceknul Ncurses jako takove a pustil se do toho sam.

    Tady se aspon prokazuje, ze lennost je nekdy velmi uzitecna vec a nuti lidi premyslet :-D.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.