Permalink
Cannot retrieve contributors at this time
- Data "name" for the name of the theme | |
- Data "author" for the author of the theme | |
- Data "version" for the version of the theme | |
- Data "description" for the description of the theme | |
- Data "compatible" for the Eleganz version compatibility | |
- Main window | |
- Group "main" | |
- Part "Eleganz/primary" of type SWALLOW for the primary screen | |
- Part "Eleganz/secondary_below" of type SWALLOW for the secondary screens (behind primary) | |
- Part "Eleganz/secondary_above" of type SWALLOW for the secondary screens (above primary) | |
- Signal handler "Eleganz/primary,set" for when setting the primary screen | |
- Signal handler "Eleganz/secondary,set" for when setting the secondary screen | |
- Signal source will be set to "above" or "below" | |
- Signal handler "Eleganz/primary,unset" for when unsetting the primary screen | |
- Signal handler "Eleganz/secondary,unset" for when unsetting the secondary screen | |
- Signal source will be set to "above" or "below" | |
- Signal "Eleganz/primary,set,end" for when setting the primary screen is done | |
- Signal "Eleganz/secondary,set,end" for when setting the secondary screen is done | |
- Signal source must be set to "above" or "below" | |
- Signal "Eleganz/primary,unset,end" for when unsetting the primary screen is done | |
- Signal "Eleganz/secondary,unset,end" for when unsetting the secondary screen is done | |
- Signal source must be set to "above" or "below" | |
- Main menu group | |
- Group "Eleganz/menu" | |
- Data 'category_next' for key event to go to next category | |
- Data 'category_previous' for key event to go to next category | |
- Data 'select' for key event to enter category (OPTIONAL) | |
- Signal handler "Eleganz/menu,init" to start splash screen | |
- Signal "Eleganz/menu,ready" for when the menu is ready for actions | |
set to "Up/Down/Right/Left" to represent how the menu should be navigated | |
- Custom Wallpaper (for games) | |
- Part "Eleganz/menu/wallpaper" of type IMAGE for the wallpaper/background | |
- Signal handler "Eleganz/menu/wallpaper,set" for when the custom wallpaper is set | |
- Signal handler "Eleganz/menu/wallpaper,unset" for when the custom wallpaper is removed | |
- Menu categories | |
- Parts "Eleganz/menu/category.before_%d" of type SWALLOW for previous categories | |
- Part "Eleganz/menu/category.selection" of type SWALLOW for the selected category | |
- Parts "Eleganz/menu/category.after_%d" of type SWALLOW for next categories | |
- Signal handler "Eleganz/menu,category_set" for when a category is added | |
- The source of the signal will be the suffix of the part that was set | |
- Signal handler "Eleganz/menu,category_unset" for when a category is removed | |
- The source of the signal will be the suffix of the part that was unset | |
- Signal handler "Eleganz/menu,category_set,reset" for when a category is valid after a reset | |
- The source of the signal will be the suffix of the part that was set | |
- Signal handler "Eleganz/menu,category_unset,reset" for when a category is invalid after a reset | |
- The source of the signal will be the suffix of the part that was unset | |
- Signal handler "Eleganz/menu,category_next" for when the user scrolls to the next category | |
- Signal handler "Eleganz/menu,category_previous" for when the user scrolls the previous category | |
- Signal handler "Eleganz/menu,category_reset" for resetting the state to all set after a next/previous | |
- Signal handler "Eleganz/menu,category_error_tail" for when the user tries to seek beyond the end | |
- Signal handler "Eleganz/menu,category_error_head" for when the user tries to seek before the start | |
- Signal "Eleganz/menu,category_next,end" for when the animation of a 'next' scroll is finished | |
- Signal "Eleganz/menu,category_previous,end" for when the animation of a 'previous' scroll is finished | |
- Signal "Eleganz/menu,category_set,end" for when the set animation is done (not on ",reset") | |
- Signal "Eleganz/menu,category_unset,end" for when the unset animation is done (not on ",reset") | |
- "Eleganz/menu/category/*" groups : | |
- Data 'item_next' for key event to go to next category | |
- Data 'item_previous' for key event to go to next category | |
- Data 'select' for key event to select the item | |
- Signal handler "Eleganz/menu/category,selected" when selecting it | |
- Signal handler "Eleganz/menu/category,deselected" when deselecting it | |
- Signal "Eleganz/menu/category,selected,end" when the animation of 'selected' is finished | |
- Signal "Eleganz/menu/category,deselected,end" when the animation of 'deselected' is finished | |
- Category Items | |
- Parts "Eleganz/menu/category/item.before_%d" of type SWALLOW for previous items | |
- Part "Eleganz/menu/category/item.selection" of type SWALLOW for the selected item | |
- Parts "Eleganz/menu/category/item.after_%d" of type SWALLOW for next items | |
- Signal handler "Eleganz/menu/category,item_set" for when an item is added | |
- The source of the signal will be the suffix of the part that was set | |
- Signal handler "Eleganz/menu/category,item_unset" for when an item is removed | |
- The source of the signal will be the suffix of the part that was unset | |
- Signal handler "Eleganz/menu/category,item_set,reset" for when an item is valid after a reset | |
- The source of the signal will be the suffix of the part that was set | |
- Signal handler "Eleganz/menu/category,item_unset,reset" for when an item is invalid after a reset | |
- The source of the signal will be the suffix of the part that was unset | |
- Signal handler "Eleganz/menu/category,item_next" for when the user scrolls to the next item | |
- Signal handler "Eleganz/menu/category,item_previous" for when the user scrolls the previous item | |
- Signal handler "Eleganz/menu/category,item_reset" for resetting the state to all set after a next/previous | |
- Signal handler "Eleganz/menu/category,item_error_tail" for when the user tries to seek beyond the end | |
- Signal handler "Eleganz/menu/category,item_error_head" for when the user tries to seek before the start | |
- Signal "Eleganz/menu/category,item_next,end" for when the animation of a 'next' scroll is finished | |
- Signal "Eleganz/menu/category,item_previous,end" for when the animation of a 'previous' scroll is finished | |
- Accepted Individual Categories | |
- Group "Eleganz/menu/category/quit" for the settings | |
- Group "Eleganz/menu/category/settings" for the settings | |
- Group "Eleganz/menu/category/theme" for the settings | |
- Group "Eleganz/menu/category/games" for the installed system games | |
- Group "Eleganz/menu/category/homebrew" for the installed homebrew games | |
- Group "Eleganz/menu/category/device_homebrew" for the homebrew games on a USB device | |
- Group "Eleganz/menu/category/device_packages" for the homebrew packages on a USB device | |
- "Eleganz/menu/item/*" groups : | |
- Signal handler "Eleganz/menu/item,selected" when selecting it | |
- Signal handler "Eleganz/menu/item,deselected" when deselecting it | |
- Individual items | |
- Group "Eleganz/menu/item/game" for a game item | |
- Part "Eleganz/menu/item/game/icon" for the game icon | |
- Part "Eleganz/menu/item/game/title" for the game title | |
- Group "Eleganz/menu/item/package" for a game item | |
- Part "Eleganz/menu/item/game/name" for the game package name | |
- Group "Eleganz/menu/item/theme" for a theme item | |
- Part "Eleganz/menu/item/theme/name" for the theme name | |
- Part "Eleganz/menu/item/theme/author" for the theme author | |
- Part "Eleganz/menu/item/theme/version" for the theme version | |
- Part "Eleganz/menu/item/theme/description" for the theme description | |
- Part "Eleganz/menu/item/theme/preview" for the theme preview screen | |
- Group "Eleganz/menu/item/usb_theme" for a theme item from usb | |
- same parts as "Eleganz/menu/item/theme" | |
- Group "Eleganz/menu/item/about" | |
- Group "Eleganz/menu/item/help" | |
- Group "Eleganz/menu/item/wallpaper" | |
- Secondary windows | |
- Signal handler "Eleganz/secondary,init" to show the screen | |
- Signal "Eleganz/secondary,ready" for when the screen is shown | |
- Data "secondary" set to "above" or "below" to determine which screen to swallow | |
- Group "Eleganz/secondary/game" | |
- Part "Eleganz/secondary/game/picture" for the game background picture | |
- Part "Eleganz/secondary/game/icon" for the game icon (optional) | |
- Part "Eleganz/secondary/game/title" for the game title (optional) | |
- Group "Eleganz/secondary/dialogbox" | |
- Part "Eleganz/secondary/dialogbox/message" | |
- Group "exquisite/theme" for exquisite theme (messages and progress bar) | |
Behavior : | |
At first, the "main" group will be created and the "Eleganz/primary" part will be swallowed by the "Eleganz/menu" group. | |
All swallowed parts from "Eleganz/menu" will be set depending on the available categories at startup . | |
Then the signal "Eleganz/primary,set" will be sent to the "main" group so it can show the screen, then it should send | |
the signal "Eleganz/primary,set,end" to notify the app that the animation is done and the primary screen is shown. | |
Then the signal "Eleganz/menu,init" will be sent to notify the group to start any initialization, then it will wait to receive | |
the signal "Eleganz/menu,ready" at which point it will send the signal "Eleganz/menu,category_set,reset" and | |
the signal "Eleganz/menu,category_unset,reset" to the group with the source of the emission set to the part name's suffix | |
that is set or unset ("before_0" will be sent for part "Eleganz/menu/category.before_0" for example) to reflect that status. | |
This is to allow you to do an animation or splash screen at bootup. Since non-swallowed parts will appear invisble, | |
you can assume that all the parts are 'set', until you receive the "Eleganz/menu_category_set,reset" and | |
"Eleganz/menu/category_unset,reset" signals. Note that these two signals (the ',reset' variants) should be instantenuous, so | |
the user shouldn't notice that they happened. It will only allow you to have a better animation if later a new category | |
is added and the "Eleganz/menu/category_set" signal is sent for it. | |
The item parts of a category will be swallowed then the "Eleganz/menu/category,selected" signal will be sent to the | |
selected category. You can assume that all are items are 'set' at that point. Once the animation is done, you should | |
send the "Eleganz/menu/category,selected,end" signal, at which point the "Eleganz/menu/category,item_set,reset" | |
and "Eleganz/menu/category,item_unset,reset" signals will be sent for each item. | |
There you go, the menu is finally appearing and you are ready to handle user events! | |
At this point, the user can either scroll the categories or the items, for both, the behavior is the same, you will | |
receive the signal "*_next" or "*_previous" to create the scrolling, once you are done, you should send the associated | |
",end" signal. Eleganz will then send the unswallow and swallow the parts properly to reflect the scroll then it will | |
send the signal "*_reset" to reset the screen as it should be, and send the "*_set,reset" and "*_unset,reset" signals. | |
This next,end->swallow->unswallow->reset->set,reset+unset,reset chain of events should happen instantenuously so that the | |
user does not perceive it and only sees the actual scrolling animation. | |
In the case of categories, the selected one will also receive a "*,category_unselected" signal and the next/previous one | |
will receive the "*,category_selected" signal. After the "*,category_selected,end" signal is received, the | |
"*item_set,reset" and "*item_unset,reset" will be called to put the items in a consistent state. | |
There will never be a item_set/item_unset or item_set,reset/item_unset,reset signals when the category is not selected. |