Procedure never called from Javascript

Just starting out? Need help? Post your questions and find answers here.
User avatar
DjPoke
Posts: 22
Joined: Sat Dec 19, 2015 5:27 pm
Location: France (Corsica)
Contact:

Procedure never called from Javascript

Post by DjPoke »

Hello, there is a problem when i call a Procedure from Javascript : it does not works.
This is a sample of my source code.
The VocalQuestion variable is declared "Global" before.

EDIT:
Is there a way to change a StringGadget text in JS ?

Code: Select all

; Procédure pour écrire la variable contenant le texte dans le gadget en question
Procedure WriteQuestion()
  If VocalQuestion <> ""
    SetGadgetText(#StringQuestion, VocalQuestion)
  EndIf
EndProcedure

If OpenWindow(#Window, 0, 0, 800, 190, "IAS : Intelligence Artificielle Subjective", #PB_Window_TitleBar | #PB_Window_ScreenCentered)
  TextGadget(#TextQuestion, 10, 10, 780, 25, "Saisissez une question et validez", #PB_Text_Center)
  StringGadget(#StringQuestion, 10, 40, 780, 25, "")
  ButtonGadget(#MikeButton, 290, 70, 100, 25, "Micro")
  ButtonGadget(#OkButton, 410, 70, 100, 25, "Ok")
  TextGadget(#TextAnswer, 10, 130, 780, 25, "Voici votre réponse", #PB_Text_Center)
  StringGadget(#StringAnswer, 10, 160, 780, 25, "", #PB_String_ReadOnly)
  
  SetActiveGadget(#StringQuestion)

  !  // Init recognition
  !  v_recognizer = new webkitSpeechRecognition();
  !
  !  // Base settings
  !  v_recognizer.continuous = true;
  !  v_recognizer.lang = 'fr-FR';
  !  v_recognizer.interimResults = true;
  !
  !  // Transcript function
  !  v_recognizer.onresult = function(e) {
  !    v_VocalQuestion = '';
  !    var i1 = e.resultIndex;
  !    var i2 = e.results.length - 1;
  !    var i = i1;
  !    while(i <= i2) {
  !      v_VocalQuestion += e.results[i][0].transcript;
  !      i++;
  !    }
  !    f_writequestion();
  !  }
 
  BindGadgetEvent(#MikeButton, @Mike())
  BindGadgetEvent(#OkButton, @Reponse())

EndIf
My Freewares here :
http://retro-bruno.fr/
User avatar
Peter
Posts: 1197
Joined: Mon Feb 24, 2014 10:17 pm
Location: 127.0.0.1:9080
Contact:

Re: Procedure never called from Javascript

Post by Peter »

it seems, that SpiderBasic removes Procedures that are not used in SpiderBasic-Code. So WriteQuestion() is not available in your generated JavaScript-Code.

Workaround:

Code: Select all

If 1=2
  WriteQuestion()
EndIf
Is there a way to change a StringGadget text in JS ?

Code: Select all

GadgetID = GadgetID(#StringQuestion)
! v_gadgetid.SetGadgetText("Hello!");
Greetings ... Peter
User avatar
DjPoke
Posts: 22
Joined: Sat Dec 19, 2015 5:27 pm
Location: France (Corsica)
Contact:

Re: Procedure never called from Javascript

Post by DjPoke »

Thanks a lot :)
My Freewares here :
http://retro-bruno.fr/
Post Reply