diff options
Diffstat (limited to 'release/scripts/startup/bl_ui/utils.py')
-rw-r--r-- | release/scripts/startup/bl_ui/utils.py | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/release/scripts/startup/bl_ui/utils.py b/release/scripts/startup/bl_ui/utils.py new file mode 100644 index 00000000000..8c7ceefecb6 --- /dev/null +++ b/release/scripts/startup/bl_ui/utils.py @@ -0,0 +1,56 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# <pep8 compliant> + +from bpy.types import Menu + + +# Panel mix-in class (don't register). +class PresetPanel: + bl_space_type = 'PROPERTIES' + bl_region_type = 'HEADER' + bl_label = "Presets" + path_menu = Menu.path_menu + + @classmethod + def draw_panel_header(cls, layout): + layout.emboss = 'NONE' + layout.popover( + panel=cls.__name__, + icon='PRESET', + text="", + ) + + @classmethod + def draw_menu(cls, layout, text=None): + if text is None: + text = cls.bl_label + + layout.popover( + panel=cls.__name__, + icon='PRESET', + text=text, + ) + + def draw(self, context): + layout = self.layout + layout.emboss = 'PULLDOWN_MENU' + layout.operator_context = 'EXEC_DEFAULT' + + Menu.draw_preset(self, context) |