]> git.sesse.net Git - vlc/commit
* skins2: support for custom popup menus, and win32 implementation.
authorOlivier Teulière <ipkiss@videolan.org>
Sun, 4 Dec 2005 14:47:26 +0000 (14:47 +0000)
committerOlivier Teulière <ipkiss@videolan.org>
Sun, 4 Dec 2005 14:47:26 +0000 (14:47 +0000)
commit8a3513c0251811e84b77c5e4b3004334b176f3b9
tree249495259bf5706bf7f4a42f6f7b638dd420eaa7
parent646896fbaafa75a42cf424712a6298bce830c965
 * skins2: support for custom popup menus, and win32 implementation.
   XML example:
       <PopupMenu id="sample_menu">
           <MenuItem label="Play" action="vlc.play()" />
           <MenuItem label="Pause" action="vlc.pause()" />
           <MenuSeparator />
           <MenuItem label="Show playlist" action="playlist_window.show()" />
           <MenuItem label="Hide playlist" action="playlist_window.hide()" />
           <MenuSeparator />
           <MenuItem label="Quick open file" action="dialogs.fileSimple()" />
       </PopupMenu>

   To call the menu:
       <Button action="sample_menu.show()" ... />

   Known bug: the popup disappears when the user clicks "too fast" on the
   button: the control refreshes itself in an asynchronous way, and the popup
   dislikes it... so click slowly :)
41 files changed:
modules/gui/skins2/Modules.am
modules/gui/skins2/commands/cmd_show_window.hpp
modules/gui/skins2/events/evt_menu.hpp [new file with mode: 0644]
modules/gui/skins2/events/evt_motion.hpp
modules/gui/skins2/macosx/macosx_factory.cpp
modules/gui/skins2/macosx/macosx_factory.hpp
modules/gui/skins2/macosx/macosx_popup.cpp [new file with mode: 0644]
modules/gui/skins2/macosx/macosx_popup.hpp [new file with mode: 0644]
modules/gui/skins2/macosx/macosx_tooltip.hpp
modules/gui/skins2/parser/builder.cpp
modules/gui/skins2/parser/builder.hpp
modules/gui/skins2/parser/builder_data.def
modules/gui/skins2/parser/builder_data.hpp
modules/gui/skins2/parser/interpreter.cpp
modules/gui/skins2/parser/skin_parser.cpp
modules/gui/skins2/parser/skin_parser.hpp
modules/gui/skins2/src/generic_window.cpp
modules/gui/skins2/src/generic_window.hpp
modules/gui/skins2/src/os_factory.hpp
modules/gui/skins2/src/os_popup.hpp [new file with mode: 0644]
modules/gui/skins2/src/os_tooltip.hpp
modules/gui/skins2/src/popup.cpp [new file with mode: 0644]
modules/gui/skins2/src/popup.hpp [new file with mode: 0644]
modules/gui/skins2/src/theme.cpp
modules/gui/skins2/src/theme.hpp
modules/gui/skins2/src/top_window.cpp
modules/gui/skins2/src/top_window.hpp
modules/gui/skins2/src/window_manager.cpp
modules/gui/skins2/src/window_manager.hpp
modules/gui/skins2/win32/win32_factory.cpp
modules/gui/skins2/win32/win32_factory.hpp
modules/gui/skins2/win32/win32_loop.cpp
modules/gui/skins2/win32/win32_popup.cpp [new file with mode: 0644]
modules/gui/skins2/win32/win32_popup.hpp [new file with mode: 0644]
modules/gui/skins2/win32/win32_tooltip.hpp
modules/gui/skins2/x11/x11_factory.cpp
modules/gui/skins2/x11/x11_factory.hpp
modules/gui/skins2/x11/x11_popup.cpp [new file with mode: 0644]
modules/gui/skins2/x11/x11_popup.hpp [new file with mode: 0644]
modules/gui/skins2/x11/x11_tooltip.hpp
share/skins2/skin.dtd