when I return from Calendar

I created a grid channel that has a search and calendar at the top. The calendar is a roParagraph, when it is selected from the grid it displays perfectly. However, when you return from to the grid you are able to move around but if you make a selection you get the ‘bing’ sound but nothing happens for any selection. This does not happen with my search screen.


"ShowGrid"

...

 while true
         msg = wait(0, port)
         if type(msg) = "roGridScreenEvent" then
             if msg.isScreenClosed() then
                 return -1
             elseif msg.isListItemFocused()
                 print "Focused msg: ";msg.GetMessage();"row: ";msg.GetIndex();
                 print " col: ";msg.GetData()
             elseif msg.isListItemSelected()
                 print "Selected msg: ";msg.GetMessage();"row: ";msg.GetIndex();
                 print " col: ";msg.GetData()
                 if (m.categories.kids[msg.getindex()]).kids[msg.GetData()].title= "Calendar" then 
                    ShowParagraphScreen()                    
                 elseif (m.categories.kids[msg.getindex()]).kids[msg.GetData()].title="Search"then
                        showSearchScreen() 
                 else
                       SpringboardScreen(teamhd_imgList[msg.GetIndex()][msg.GetData()],teamtitleList[msg.GetIndex()][msg.GetData()],teamdescriptionList[msg.GetIndex()][msg.GetData()], teamstreamList[msg.GetIndex()][msg.GetData()],teamformatList[msg.GetIndex()][msg.GetData()] )
                 endif
           
           
             endif
         endif
     end while            

Function ShowParagraphScreen() As Void
    port = CreateObject("roMessagePort")
    screen = CreateObject("roParagraphScreen")
    screen.SetMessagePort(port)
    screen.SetTitle("Calendar")
    screen.AddHeaderText("Upcoming")
    screen.AddParagraph("03/29    Event A")
    screen.AddParagraph("04/06    Event B")
    screen.AddParagraph("04/18    Event C")    
    screen.Show()
    while true
        msg = wait(0, screen.GetMessagePort())
        if type(msg) = " roParagraphScreenEvent" 
           
           'exit while
        endif
    end while    
End Function

I have tried changing the position of Search and Calendar and the Search works and the Calendar does not. This makes me think that there is not a problem in my loop in ShowGrid. I think it must be how I did the paragraphScreen for my Calendar.

Do I need to return something from my paragraphScreen?
Is there some other problem?

Thank you very much for all of your help. :grinning_face_with_smiling_eyes:

generally, you need to have something like this in your Paragraphscreen function:


...else if msg.isScreenClosed() then 
         return <value>

or you’ll wind up visually on the previous screen, but still inside the paragraphScreen function.

  • Joel