[Vorüberlegung] Kategorien und Filter

CHDK-Skripte, CHDK-Entwicklung, PC-Zusatzprogramme, Informationen für Tüftler

[Vorüberlegung] Kategorien und Filter

Beitragvon f_m_b » 17.05.2011, 00:12

Hallo zusammen:

ich bin gerade dabei einen ersten Entwurf für die Eingabe von Bildkategorien bzw. verwendeten Filtern umzusetzen.

Ich wollte das Thema erst in einem etwas ausgereifteren Zustand hier einstellen...
.. aber ich stolpere gerade über ein paar technische Hürden und bräuchte etwas Unterstützung. :-`

Eigentlich möchte ich ein Untermenü, dass wie folgt aussehen könnte,
wobei die Einträge z.B. aus einer separaten Datei kommen könnten:
Code: Alles auswählen
Nahlinse                     [ ]
Polfilter                    [ ]
Graufilter                   [ ]
Grauverlaufsfilter           [ ]
...

Der Menütext vorne ist aber über eine Ressourcen-ID vorgegeben.

Da ich das "Menü-Rad" nicht neu erfinden wollte war der zweite Schritt: Feste Texte vorne und den flexiblen Teil hinten:
Code: Alles auswählen
static CMenuItem category_submenu_items[] = {
    {0x5C,LANG_MENU_CATEGORY_1,      MENUITEM_ENUM,    (int*)gui_draw_category_enum, 0},
    {0x5C,LANG_MENU_CATEGORY_2,      MENUITEM_ENUM,    (int*)gui_draw_category_enum, 1},
    {0x5C,LANG_MENU_CATEGORY_3,      MENUITEM_ENUM,    (int*)gui_draw_category_enum, 2},
    {0x5C,LANG_MENU_CATEGORY_4,      MENUITEM_ENUM,    (int*)gui_draw_category_enum, 3},
    {0x5C,LANG_MENU_CATEGORY_5,      MENUITEM_ENUM,    (int*)gui_draw_category_enum, 4},
    {0x5C,LANG_MENU_CATEGORY_6,      MENUITEM_ENUM,    (int*)gui_draw_category_enum, 5},
    {0x5C,LANG_MENU_CATEGORY_7,      MENUITEM_ENUM,    (int*)gui_draw_category_enum, 6},
    {0x5C,LANG_MENU_CATEGORY_8,      MENUITEM_ENUM,    (int*)gui_draw_category_enum, 7},
    {0x51,LANG_MENU_BACK,            MENUITEM_UP },   
    {0}
};
static CMenu category_submenu = {0x5C,LANG_MENU_CATEGORY, NULL, category_submenu_items };


Hierbei kommt auch der "arg"-Teil bei mir an, jedoch der "change"-Teil bleibt irgendwo auf der Strecke...
Code: Alles auswählen
static const char* gui_draw_category_enum(int change, int arg)
{
...
// arg gleich 0..7
// change ändert sich nicht.
...
}


Ohne "arg"-Übergabe funktioniert es zwar, aber 8 separate Funktionen dafür zu schreiben fand ich etwas "unschön" umgesetzt.

Vielleicht hat ja jemand von Euch noch eine Idee. :-D

EDIT 19.05.2011 00:12
Ich hatte noch einen Fehler gemacht. :oops:
Ich melde mich wieder in ein paar Tagen und beschreibe etwas genauer was ich vorhabe.
f_m_b
CHDK-Begeisterter
CHDK-Begeisterter
 
Beiträge: 148
Registriert: 30.05.2010, 22:59
Kamera(s): -

Zurück zu Code-Ecke

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast