Create GameObject as Child by Editor

I have this little EditorWindow were you can Add GameObjects. And they need to be created as a Child from another GameObject called TRACK, this one is already created. But when I hit the Button in the EditorWindow, 2 GameObjects will be created, one as a Child from TRACK (but not with the recommended Script attached) and another not as the Child and with that Script. Here is my Code:
void OnGUI()
{
if (GUILayout.Button(“Add Track Segment”))
{
m_EP_List.Add(CreateEndPoint(0));
}
}

    GameObject CreateEndPoint(int _order)
    {
        m_EP_List_GameObjectNames = "EP_" + (m_EP_List.Count);

        GameObject _ep;
        Instantiate(_ep = new GameObject(m_EP_List_GameObjectNames), Vector3.zero, m_Rotation, m_Track.transform);

        _ep.AddComponent<Track_Endpoint>();

        return _ep;
    }

So how can I Instantiate the GameObject with that Code as Child from TRACK?

Hello @VKirschbaum !

To create a Gameobject named GOCreated , from a GameObject Prefab called GOPrefab and move it as child of another GameObject named GOOther, you need to do declare them, and then do this:

GOCreated = (GameObject) Instantiate (GOPrefab, Vector3Position, QuaternionRotation);
GOCreated.transform.parent = GOOther.transform;

If this dont help, ask me more with @tormentoarmagedoom !

Bye:D