How do I add a new panel to the Properties Editor? First, I want to make sure I'm using the right terms and talking about the proper part of the Blender workspace. From reading a few different answers on SE:Blender, and a few other sources, my understanding is that the area in the blue box below is often called the &quot;Properties area,&quot; and that the area in the red box is the &quot;Properties Editor.&quot; But I've also read things that make me think the area in the blue box is not called a &quot;Properties area,&quot; or anything like that.

So, first, can someone provide me the correct names for these areas? And, since I'm not sure of names, I'll just call them the highly technical terms of &quot;Red Area,&quot; and &quot;Blue Area.&quot;
A user on SE:Blender sent me an example script that created a tab and panel in the red area, so there was another panel for a specific use. I tried it a couple months ago and it worked. I've been heavily involved elsewhere for awhile and came back to this issue about 2-3 weeks ago. I copied his script in and it didn't work - no panel in the Red Area.
So I went into the Script Editor and picked the &quot;Ui Panel&quot; from the templates and ran that. It looked to me like it was supposed to add a panel to the Red Area, but it didn't. I checked the tabs in the 3D View and nothing was added there at all.
Then I copied the script in the image above from this answer to test it:
import bpy
from bpy.props import FloatVectorProperty, BoolProperty

class CarPanel(bpy.types.Panel):
    &quot;&quot;&quot;Creates a Panel in the Object properties window&quot;&quot;&quot;
    bl_label = &quot;Car Details&quot;
    bl_idname = &quot;OBJECT_PT_hello&quot;
    bl_space_type = 'PROPERTIES'
    bl_region_type = 'WINDOW'
    bl_context = &quot;object&quot;

    @classmethod
    def poll(cls, context):
        return context.object.get(&quot;Capot&quot;, False)

    def draw(self, context):
        layout = self.layout

        car = context.object
        layout.prop(car, '[&quot;Capot&quot;]')
        #bools don't show well (1 or 0 integer)
        layout.prop(car, &quot;switch&quot;)
        layout.prop(car, '[&quot;bool&quot;]')
        col = layout.column()
        col.prop(car, '[&quot;prop&quot;]')
        # car color property
        row = layout.row()
        row.prop(car, &quot;car_color&quot;)
        # object color rgba
        row = layout.row()
        row.prop(car, &quot;color&quot;)

def register():
    # define a registered property (available for all Object types size=4 gives rgba)
    bpy.types.Object.car_color = FloatVectorProperty(subtype='COLOR', size=3)
    bpy.types.Object.switch = BoolProperty()
    bpy.utils.register_class(CarPanel)

def unregister():
    bpy.utils.unregister_class(CarPanel)

if __name__ == &quot;__main__&quot;:
    register()

I did not see a panel added in the Red Area or anywhere else at all.
Last example - I went to Blender documentation and this page has this script:
import bpy


class ObjectSelectPanel(bpy.types.Panel):
    bl_idname = &quot;OBJECT_PT_select&quot;
    bl_label = &quot;Select&quot;
    bl_space_type = 'PROPERTIES'
    bl_region_type = 'WINDOW'
    bl_context = &quot;object&quot;
    bl_options = {'DEFAULT_CLOSED'}

    @classmethod
    def poll(cls, context):
        return (context.object is not None)

    def draw_header(self, context):
        layout = self.layout
        layout.label(text=&quot;My Select Panel&quot;)

    def draw(self, context):
        layout = self.layout

        box = layout.box()
        box.label(text=&quot;Selection Tools&quot;)
        box.operator(&quot;object.select_all&quot;).action = 'TOGGLE'
        row = box.row()
        row.operator(&quot;object.select_all&quot;).action = 'INVERT'
        row.operator(&quot;object.select_random&quot;)


bpy.utils.register_class(ObjectSelectPanel)

I ran it and it seems to have no effect at all.
So what am I doing wrong? Why don't these scripts seem to do anything and what do I need to do to add a panel to the Red Area? (And what are the proper names for the Red Area and Blue Area?)
Texture context
when adding a panel to the properties area we set the context as signified by the icon on LHS. This is set with bl_context.  To get a panel in the questions &quot;Red Area&quot;
bl_context = &quot;texture&quot;

all the examples given in question are in object context. Press the Object tab. (cube)
How to enable or disable panels with the click of a button
Eg for Hello World example.
import bpy


class HelloWorldPanel(bpy.types.Panel):
    &quot;&quot;&quot;Creates a Panel in the Object properties window&quot;&quot;&quot;
    bl_label = &quot;Hello World Panel&quot;
    bl_idname = &quot;OBJECT_PT_hello&quot;
    bl_space_type = 'PROPERTIES'
    bl_region_type = 'WINDOW'
    bl_context = &quot;texture&quot;

    def draw(self, context):
        layout = self.layout

        obj = context.active_object

        row = layout.row()
        row.label(text=&quot;Hello world!&quot;, icon='WORLD_DATA')

        row = layout.row()
        row.label(text=&quot;Active object is: &quot; + obj.name)
        row = layout.row()
        row.prop(obj, &quot;name&quot;)

        row = layout.row()
        row.operator(&quot;mesh.primitive_cube_add&quot;)


def register():
    bpy.utils.register_class(HelloWorldPanel)


def unregister():
    bpy.utils.unregister_class(HelloWorldPanel)


if __name__ == &quot;__main__&quot;:
    register()