Help with DirectEntry on osx


I am not sure if this is the right place to post this problem but I thought I might get more help in this topic as it is osx specific.

I am trying to use DirectEntry to save the username and password of my players. However, on the mac there seems to be a problem and I am not able to enter any text in the username and password fields.

Anyone can help with this. I am attaching an example code of what I am using.


from pandac.PandaModules import loadPrcFileData  #Modifies/adds the .prc (Panda3D's configuration file)
#loadPrcFileData("", "client-sleep 0.03")
#loadPrcFileData("", "interpolate-frames 1")

#encoding: UTF-8

import direct.directbase.DirectStart  #starts the Game (opens an empty window)
from pandac.PandaModules import *     #Contains most of Panda's modules
from pandac.PandaModules import Material
from direct.gui.DirectGui  import *   #Imports Gui objects we use for putting text ont the screen
from direct.showbase.DirectObject import DirectObject  #to listen for events
from direct.showbase.ShowBaseGlobal import *
from import Actor   #to use animated actors
from direct.interval.IntervalGlobal import *  #to use intervals
from direct.task import Task  #to use tasks
from direct.distributed.PyDatagram import PyDatagram  #to send data to server
from direct.distributed.PyDatagramIterator import PyDatagramIterator
import math  #to use math (angles,degrees..etc)
import random
import re
import MySQLdb
import socket
from md5 import md5

#load first environment model
import sys, os

# Function to put instructions on the screen.
def addInstructions(pos, msg):
    return OnscreenText(text=msg, style=1, fg=(1,1,1,1),
         pos=(-1.3, pos), align=TextNode.ALeft, scale = .05)

# Function to put title on the screen.
def addTitle(text):
    return OnscreenText(text=text, style=1, fg=(1,1,1,1),
                   pos=(1.3,-0.95), align=TextNode.ARight, scale = .07)

#Find out what dir this program is in
AppPath = os.path.abspath(sys.path[0])
AppPath = Filename.fromOsSpecific(AppPath).getFullpath()
#print AppPath

curposindex =[]

class World(DirectObject):                          #our main class

    def __init__(self):               #iniialization method caused when a world object is created
   # Post instructions on screen
   self.title = addTitle("Psychology Dept. Glasgow")
   self.inst1 = addInstructions(0.95, "[ESC]: Quit")
   self.inst2 = addInstructions(0.90, "[Left Arrow]: Turn camera left")
          self.inst3 = addInstructions(0.85, "[Right Arrow]: Turn camera right")
   self.inst4 = addInstructions(0.75, "[O]: Move camera forwards")
   self.inst5 = addInstructions(0.70, "[L]: Move camera backwards")
        #make background color black (R=0, B=0, G=0) intead of default grey
   base.setBackgroundColor(0, 0, 1)
   self.speed = .10 # Controls speed of rotation and zoom.

        self.curposindex = curposindex
        #call login-screen in readTask function
        taskMgr.add(self.readTask, "readTask", -39)

    #def self.loadGui(self):
    def loadGui(self):
        #load the GUI!
    def loginScreen(self):
        self.frame = DirectFrame(frameColor=(1,0,1,1), frameSize=(-1,1,0,1))
        self.unEntry = DirectEntry(initialText="Username",
        self.pwEntry = DirectEntry(initialText="Password",
        self.loginbutton = DirectButton(text = "Login",
        self.regbutton = DirectButton(text = "register",

    def readTask(self,task):

w = World()

Good evening inoh.

No, this is not the right place.
You already posted this in Scripting Issues. There is no way you can get more help here than there.

I know. You posted it in the other topic as well.

Yes, we can help you. We are helping you. If you just please leave this topic in Scripting Issues (and remove this one!) and be patient, and we will see what we can do for you.
As I already said, there is NO use in posting this twice.

I was going to delete this post from this topic but I saw the following in the FAQ: " Please note that normal users cannot delete a post once someone has replied."

I will be happy for a moderator to delete this posting if they feel that is necessary.