Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
4
Question by Norax · Jul 10, 2014 at 02:26 PM · c#editorguipropertydrawer

Property Drawer "No GUI implemented" error in Editor

I am reading all the documentation in order and I just found that I am having issues to recreate a Property Drawer example.

After some research, I found this post that ended up being more clear than the documentation itself (despite being the same example): http://forum.unity3d.com/threads/how-do-property-drawer.197228/

I manage to make it compile, but not to work. So I am not sure where it fails, because the code seems to be up and running. Google didn't told me anything useful.

Any idea?

alt text

Thanks in advance.

Edit1:

  // Assets/Scripts/Range/RangeAttribute.cs
 // Assets/Scripts/Editor/RangeDrawerEditor.cs
 // Assets/Scripts/Range/CustomBehaviour.cs

The only diference with the example, is that the 2 non-editor scripts are in a folder called "range". I'm new to this "Property Drawer" thing, and if Im not able to see the example to really see what can offer, I doubt that I will use it on my own code. The documentation examples look unfinished in that part.

propertydrawererror.png (8.8 kB)
Comment
Add comment · Show 2
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image meat5000 ♦ · Jul 10, 2014 at 02:23 PM 0
Share

You did separate the code into 3 scripts right? Just checking.

Is there any other information you can include?

avatar image Norax · Jul 10, 2014 at 02:27 PM 0
Share
 // Assets/Scripts/Range/RangeAttribute.cs
 // Assets/Scripts/Editor/RangeDrawerEditor.cs
 // Assets/Scripts/Range/CustomBehaviour.cs

The only diference with the example, is that the 2 non-editor scripts are in a folder called "range"

3 Replies

· Add your reply
  • Sort: 
avatar image
12

Answer by nschrag · Sep 18, 2014 at 04:08 PM

There is in error in the C# documentation for PropertyDrawer. OnGUI needs to be a public override method.

 public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) {
     // GUI Implementation
 }

Comment
Add comment · Show 1 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image nschrag · Sep 18, 2014 at 04:15 PM -1
Share

Reported as bug 634200

avatar image
5

Answer by alberyjones · Dec 11, 2017 at 03:38 PM

I hit this issue and have figured out the problem. I did a standard override in C# and ended up with a call to the base method:

 public override void OnGUI(Rect position, SerializedProperty property, GUIContent label)
 {
     base.OnGUI(position, property, label);
 }

It's the call to the base method that writes the "No GUI implemented" message - presumably to indicate when you haven't overridden it and it just calls the default implementation.

If you comment out or remove the base.OnGui call the problem is resolved :)

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image
2

Answer by erickluiss · Feb 19, 2021 at 03:49 AM

Quite late answer but the solution is simple. Change the "base.OnGUI" method by: EditorGUI.PropertyField() method at the end.

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

6 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Initialising List array for use in a custom Editor 1 Answer

Multiple Cars not working 1 Answer

Distribute terrain in zones 3 Answers

How to properly implement ReorderableList expanding/collapsing in CustomPropertyDrawer? 1 Answer

Unity 5 Unprocessed Plugins location 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges