Pie Menu Editor 1.18.7

Pie Menu Editor 1.15.1

What’s New:

How to Update

  • Backup your pie menus using Export button.
  • Open User Preferences (ctrl+alt+U).
  • Go to the Add-Ons tab.
  • Click Install Add-on from File button, navigate to the file you downloaded and install it.
  • Restart blender.

With the new Property Editor, it’s possible to create a custom “toggle/ checkbox” button, right? Like, click, button is highlighted, click again, button back to normal.

Yes, you can use Boolean Property to create toggle-able buttons. In this video I’m using it to control 3 values at once (Grid Floor, Axis X and Axis Y).

Nice. I didn’t notice that the button actually changed looks. Can I toggle icons, too?

Yes, but only in Custom tab:

L.prop(props(), "Property", slot, icon='COLOR_GREEN' if props("Property") else 'COLOR_RED')

So I still have no idea how to use the Property Editor.
Can I make a button that toggles these commands?
bpy.ops.pme.pm_enable_by_tag(enable=False, tag=“Toggle Hidden Panel Group”)
bpy.ops.pme.pm_enable_by_tag(enable=True, tag=“Toggle Hidden Panel Group”)

Heya great update I’m trying to replicate properties pop up menu now with proper taskbar with icons, not sure it is possible but this new feature maybe can be key for it.

Then the odd problem.
Clicking any icon from default value row hard crash blender

Here is an example (video). Use this code in On Update slot:

bpy.ops.pme.pm_enable_by_tag(enable=props(menu), tag="Toggle Hidden Panel Group")

Thanks, will try to fix.
Try to create a new Enum Property and do not use Multi-Select option.
Btw, you can hide labels if you add | symbol, eg. Render|, Render Layers|, …

Roaoao ,

amazing update man , can you tell me few things

how do i add context wise properties ,

like i want string prop for every object in scene , and so we can write different string for every object

one more thing is , how do i add conditions like , if bool prop is on , only then show this enum prop

really amazing how you pulled it off man , hats off , keep it up

Cool feature. Will add it in the next version.
In the current version (PME 1.15.1) you can add a new StringProperty with these Getter and Setter slots:

# Getter:
return C.active_object.get(menu, "Default Value")
# Setter:
C.active_object[menu] = value

Where menu is the name of the string property.

You can do this in Custom tab using props() function:

L.prop(props(), "MyEnum") if props("MyBool") else None

Thank you. It works. I think I can kind of understand the idea now.

What code should I use to Hide Text?

Use empty text instead of slot:

L.prop(props(), "Property", "", icon='COLOR_GREEN' if props("Property") else 'COLOR_RED')
1 Like

Hey roaoao,

Blender 2.79b / PME 1.15.1

I’m wanting to make some custom Popup Dialogues to better organize a few of the built-in 3D Viewport Pie Menus. Basically a pie menu that opens into multiple Popup Dialogues. However, when I try to add the following code (from the pie menu tooltip) to one of the popup buttons, it says “invalid syntax”.

Example:
bpy.ops.align.2xyz(axis=‘0’)

Now I took a look at the ‘pie_align_menu.py’ and it has different commands. But when I activate it via the pie menu, that’s the command that shows up in the Info Window.

But now I’m wondering if I need to call one of the operators in the script, for example this is the above command’s bl_idname = align.2xyz

So would I need to call this, then add at the end add code for a specific axis?

align.2xyz(axis=‘0’) doesn’t work, but something like this?

Hello roaoao

i got random blender crash after updating to new PME ,
here is what console says

suzzane_addon_updater_demo updater verbose is enabled
Read in json settings from file
Registered global-helper with 5 modules
Registered Hard Ops 9 with 99 modules
FOUND INSERT LINE
Registered Brushes with 1 modules
Registered Blender Light Studio with 10 modules
Registered Speedflow Companion with 10 modules
Registered Smart Config with 6 modules
Registered alladdons with 1 modules
search for unknown operator 'VIEW3D_OT_change_frame_drag', 'VIEW3D_OT_change_frame_drag'
search for unknown operator 'VIEW3D_OT_change_frame_drag', 'VIEW3D_OT_change_frame_drag'
search for unknown operator 'VIEW3D_OT_change_frame_drag', 'VIEW3D_OT_change_frame_drag'
Read blend: /run/user/1000/gvfs/smb-share:server=weybec-server.local,share=public/wbprojects/kiddokiddy/model/bird.blend
search for unknown operator 'VIEW3D_OT_change_frame_drag', 'VIEW3D_OT_change_frame_drag'
Writing: /tmp/bird.crash.txt
Segmentation fault (core dumped)

and attaching crash.txt file too
http://pasteall.org/958750

it happens when i try to use some menus from pme, it only happening with pme i guess , and at random time

like i have one shortcut assign to sculpt mode , so sometime it works and sometime when i press that shortcut , blender just crash ,

One of the variables starts with a numeral (2xyz). We can’t use it like this in python. Try this code:

getattr(bpy.ops.align, "2xyz")('INVOKE_DEFAULT', True, axis="0")

Note that we need to add INVOKE_DEFAULT and True positional arguments in this case.

  • INVOKE_DEFAULT starts the operator in interactive mode (if supported)
  • True adds undo/redo features (if supported)

PME adds them automatically when the code starts with bpy.ops.

Thanks, what version of Blender are you using? Please export and pm me that sculpt mode menu.

one more error , i cannot able to export enabled menus, no matter what i tried , it always export all menus and in other pc it gives me this error

i think problem is with custom props , i can not able to delete it either

Traceback (most recent call last):
  File "/home/weybec02/.config/blender/2.79/scripts/addons/pie_menu_editor/bl_utils.py", line 479, in execute
    self.on_confirm(True)
  File "/home/weybec02/.config/blender/2.79/scripts/addons/pie_menu_editor/preferences.py", line 560, in on_confirm
    prefs().remove_pm()
  File "/home/weybec02/.config/blender/2.79/scripts/addons/pie_menu_editor/preferences.py", line 2513, in remove_pm
    apm.ed.on_pm_remove(apm)
  File "/home/weybec02/.config/blender/2.79/scripts/addons/pie_menu_editor/ed_property.py", line 658, in on_pm_remove
    unregister_user_property(pm)
  File "/home/weybec02/.config/blender/2.79/scripts/addons/pie_menu_editor/ed_property.py", line 263, in unregister_user_property
    delattr(pr.props.__class__, pm.name)
AttributeError: notes

location: <unknown location>:-1

before i got your reply , i deleted that sculpt menu which was creating an issue , but that was simple shortcut for going into sculpt mode
press ctrl X and it will go to sculpt mode , and press again to get back to object mode , simple one ,