Page 1 of 1

Having a little trouble!

Posted: Tue Feb 27, 2007 5:13 pm
by Mindtrick
Hey!

I'm having a little trouble with my code, when I initialize the language procedure it says the #Window object is not initialised...

I will post my code but I would like you to know that it is Copyright © 2007 Joseph Kemp, All Rights Reserved so I would like it if you don't steal it because it is my entire program :)

Code: Select all

UsePNGImageDecoder() 

;- Window Constants 
Enumeration 1 
  #Window_main 
  #Window_LangSelect 
  #Window_about 
EndEnumeration 
#WindowIndex=#PB_Compiler_EnumerationValue 

;- Gadget Constants 
Enumeration 1 
  ; --- Main --- 
  #Gadget_Main_ComboBox 
  #Gadget_Main_B_OK 
  ; --- About --- 
  #Gadget_About_Msg 
  #Gadget_About_Banner 
  #Gadget_about_OK 
EndEnumeration 
#GadgetIndex=#PB_Compiler_EnumerationValue 

;- Image Constants 
Enumeration 1 
  #Image_Logo 
  #Image_Load 
  #Image_Play 
  #Image_Stop 
  #Image_Pause 
  #Image_CD 
  #Image_Previous 
  #Image_Next 
  #Image_Language 
  #Image_About 
  #Image_Web 
  #Image_Register 
  #Image_Repeat 
  #Image_Full 
EndEnumeration 

Global ProgDir$, LangINI$ 
#WindowWidth = 400 
#WindowHeight = 400 
#LangDir = "languages" 
#LangExt = "*.lng" 

ProgDir$ = GetPathPart(ProgramFilename()) ;{ Program Directory 
If ProgDir$ = #PB_Compiler_Home+"Compilers\" : ProgDir$ = GetCurrentDirectory() : EndIf 

LangINI$ = ProgDir$ + #LangDir + "\English.lng" 

LoadLanguage(LangINI$) 

InitAudioCD() 

; ===== Procedures ===== 

Procedure.s GetLanguage() 
  If OpenWindow(#Window_LangSelect, 0, 0, 200, 60, "Language", #PB_Window_SystemMenu | #PB_Window_ScreenCentered, WindowID(#Window_main)) And CreateGadgetList(WindowID(0)) 
    If CreateGadgetList(WindowID(#Window_LangSelect)) 
      ComboBoxGadget(#Gadget_Main_ComboBox, 10, 10, 180, 100) 
      ButtonGadget(#Gadget_Main_B_OK,75,35,50,20,"OK") 
      
      If ExamineDirectory(0, ProgDir$ + #LangDir, #LangExt) ;{ Populate the combo. 
        While NextDirectoryEntry(0) 
          If DirectoryEntryType(0) 
            AddGadgetItem(1, -1, DirectoryEntryName(0)) 
          EndIf 
        Wend 
        FinishDirectory(0) 
      EndIf ;} 
      
      SetGadgetState(1, 0) ; set (beginning with 0) the third item as active one 
      
      quitWindow = #False 
      
      Repeat 
        Select WaitWindowEvent() 
          Case #PB_Event_CloseWindow 
            If EventWindow() = #Window_LangSelect
              quitWindow = #True 
            EndIf 
          Case #PB_Event_Gadget 
            If EventGadget() = #Gadget_Main_B_OK 
              SelectLang$ = GetGadgetText(1) 
              quitWindow = #True 
            EndIf 
        EndSelect 
      Until quitWindow 
      CloseWindow(#Window_LangSelect) 
    EndIf 
  EndIf 
  ProcedureReturn ProgDir$ + #LangDir + "\" + SelectLang$ 
EndProcedure 

; ====================== 

If InitMovie() = 0 
  MessageRequester(language(#Lang_Request_reError), "Can't initialize movie playback !", 0) 
  End 
EndIf 
max=#PB_Window_MinimizeGadget
If OpenWindow(#Window_main, 100, 100, #WindowWidth, #WindowHeight, "Mindtrick Gaming Media Player --- v1.0", #PB_Window_Invisible | #PB_Window_MinimizeGadget|max) 
  
  
  ;----------------Shortcuts------------- 
  AddKeyboardShortcut(#Window_main, #PB_Shortcut_Control | #PB_Shortcut_O, 0) 
  AddKeyboardShortcut(#Window_main, #PB_Shortcut_Escape, 1) 
  
    If CreateStatusBar(0, WindowID(#Window_main)) 
    AddStatusBarField(6000) 
    StatusBarText(0, 0, "http://www.mindtrick-forefront.uni.cc/", 0) 
  EndIf 
  
  HideWindow(#Window_main, 0)
  
  Volume = 50 
  
  
  Repeat 
    
    Select WindowEvent() 
      
      Case #PB_Event_Menu 
        
        Select EventMenu() 
          
          Case 0 ; Load 
            MovieName$ = OpenFileRequester(language(#Lang_Request_reLoad), "", language(#Lang_Request_reFiles)+"|*.avi;*.mpg;*.asf;*.mp3;*.wav;*.wmv|All Files|*.*", 0) 
            If MovieName$ 
              If LoadMovie(0, MovieName$) 
                MovieLoaded = 1 
                MovieState = 0 
                If MovieHeight(0) > 0 ; Not an audio only file.. 
                  ResizeWindow(#Window_main, #PB_Ignore, #PB_Ignore, MovieWidth(0)+20, MovieHeight(0)+70) 
                Else 
                  ResizeWindow(#Window_main, #PB_Ignore, #PB_Ignore, #WindowWidth, #WindowHeight) 
                EndIf 
                StatusBarText(0, 0, language(#Lang_Status_sbMedia)+MovieName$+language(#Lang_Status_sbLoaded), 0) 
              Else 
                StatusBarText(0, 0, language(#Lang_Status_sbNoLoad)+MovieName$+"'", 0) 
              EndIf 
            EndIf 
            
          Case 20 ; Language 
            LangINI$ = GetLanguage() 
            LoadLanguage(LangINI$) 
          Case 12 ; My Custom About Box!! 
            AboutWindow() 
            
        
            EndSelect 
        
        If MovieLoaded 
          If CurrentWidth <> MovieWidth Or CurrentHeight <> MovieHeight 
            ResizeWindow(#Window_main, #PB_Ignore, #PB_Ignore, MovieWidth+70, MovieHeight+100) ; Movie will be resized in the #PB_WindowSizeEvent 
            
            CurrentWidth = MovieWidth 
            CurrentHeight = MovieHeight 
          EndIf 
          
          If CurrentVolume <> Volume Or CurrentBalance <> Balance ; We need to update the audio stuff 
            MovieAudio(0, Volume, Balance) 
            
            CurrentVolume = Volume 
            CurrentBalance = Balance 
          EndIf 
        EndIf 
        Case #PB_Event_CloseWindow 
        End 
        Case #PB_Event_SizeWindow 
        If IsMovie(0) 
          ResizeMovie(0, 0, 27, WindowWidth(#Window_main), WindowHeight(#Window_main)-70) 
        EndIf 
        
      Case 0 
        Delay(20) 
        
        If MovieLoaded And MovieStatus(0) <> PreviousMovieStatus ; To prevent flickering on the StatusBar 
          
          Select MovieStatus(0) 
            Case -1 
              StatusBarText(0, 0, language(#Lang_Status_sbPaused), 0) 
            Case 0 
              StatusBarText(0, 0, language(#Lang_Status_sbStopped), 0) 
              Default 
              StatusBarText(0, 0, language(#Lang_Status_sbPlaying)+Str(MovieStatus(0))+"/"+Str(MovieLength(0)), 0) 
            EndSelect 
        PreviousMovieStatus = MovieStatus(0) 
        EndIf 
    EndSelect 
    ForEver 
EndIf
Mindtrick

EDITED

Posted: Tue Feb 27, 2007 5:23 pm
by Fluid Byte
I'm having a little trouble with my code, when I initialize the language procedure it says the #Window object is not initialised...
Do you seriously expect someone to create all the missing resources to get this run and then work his way all trough the source to solve a problem that you only poorly describe? Image
I will post my code but I would like you to know that it is Copyright © 2007 Joseph Kemp, All Rights Reserved so I would like it if you don't steal it because it is my entire program
It's pretty basic stuff so don't worry. Image

Furthermore, just don't post the whole thing. Please try to narrow your problem down.

Posted: Tue Feb 27, 2007 5:30 pm
by Mindtrick
Fluid Byte wrote:
I'm having a little trouble with my code, when I initialize the language procedure it says the #Window object is not initialised...
Do you seriously expect someone to create all the missing resources to get this run and then work his way all trough the source to solve a problem that you only poorly describe? Image
I will post my code but I would like you to know that it is Copyright © 2007 Joseph Kemp, All Rights Reserved so I would like it if you don't steal it because it is my entire program
It's pretty basic stuff so don't worry. Image

Furthermore, just don't post the whole thing. Please try to narrow your problem down.
Yea sorry lol I did post a bit much...I have shortened it down just to my main problems :D

Mindtrick

Posted: Tue Feb 27, 2007 5:37 pm
by Trond
LoadLanguage() isn't included now.

Posted: Tue Feb 27, 2007 7:09 pm
by Mindtrick
Trond wrote:LoadLanguage() isn't included now.

Code: Select all

Procedure.b LoadLanguage(PrefFile$) 
  OpenPreferences(PrefFile$) 
  
  PreferenceGroup("Translation") 
  language(#Lang_Trans_Lang) = ReadPreferenceString("Language", "English") 
  language(#Lang_Trans_Author) = ReadPreferenceString("Author", "") 
  language(#Lang_Trans_EMail) = ReadPreferenceString("EMail", "") 
  
  PreferenceGroup("Menu") 
  language(#Lang_Menu_File) = ReadPreferenceString("File", "File") 
  language(#Lang_Menu_Control) = ReadPreferenceString("Control", "Control") 
  language(#Lang_Menu_Options) = ReadPreferenceString("Options", "Options") 
  language(#Lang_Menu_Help) = ReadPreferenceString("Help", "Help") 
  
  PreferenceGroup("SubMenus") 
  language(#Lang_SubMenu_Load) = ReadPreferenceString("Load", "Load Media") 
  language(#Lang_SubMenu_Quit) = ReadPreferenceString("Quit", "Quit") 
  language(#Lang_SubMenu_Play) = ReadPreferenceString("Play", "Play") 
  language(#Lang_SubMenu_Stop) = ReadPreferenceString("Stop", "Stop") 
  language(#Lang_SubMenu_Pause) = ReadPreferenceString("Pause", "Pause") 
  language(#Lang_SubMenu_Controls) = ReadPreferenceString("Controls", "Controls") 
  language(#Lang_SubMenu_Drive) = ReadPreferenceString("Drive", "Drive") 
  language(#Lang_SubMenu_Size) = ReadPreferenceString("Size", "Size") 
  language(#Lang_SubMenu_50) = ReadPreferenceString("50", "50%") 
  language(#Lang_SubMenu_100) = ReadPreferenceString("100", "100%") 
  language(#Lang_SubMenu_200) = ReadPreferenceString("200", "200%") 
  language(#Lang_SubMenu_Volume) = ReadPreferenceString("Volume", "Volume") 
  language(#Lang_SubMenu_v100) = ReadPreferenceString("v100", "100%") 
  language(#Lang_SubMenu_v50) = ReadPreferenceString("v50", "50%") 
  language(#Lang_SubMenu_Mute) = ReadPreferenceString("Mute", "Mute") 
  language(#Lang_SubMenu_Balance) = ReadPreferenceString("Balance", "Balance") 
  language(#Lang_SubMenu_Middle) = ReadPreferenceString("Middle", "Middle") 
  language(#Lang_SubMenu_Left) = ReadPreferenceString("Left", "Left") 
  language(#Lang_SubMenu_Right) = ReadPreferenceString("Right", "Right") 
  language(#Lang_SubMenu_ChangeLanguage) = ReadPreferenceString("ChangeLanguage", "Change Language") 
  language(#Lang_SubMenu_subHelp) = ReadPreferenceString("subHelp", "Help") 
  language(#Lang_SubMenu_About) = ReadPreferenceString("About", "About") 
  language(#Lang_SubMenu_OnTheWeb) = ReadPreferenceString("OnTheWeb", "On The Web") 
  language(#Lang_SubMenu_Register) = ReadPreferenceString("Register", "Register") 
  
  PreferenceGroup("Tooltips") 
  language(#Lang_Tooltip_ttLoad) = ReadPreferenceString("ttLoad", "Load Media") 
  language(#Lang_Tooltip_ttPlay) = ReadPreferenceString("ttPlay", "Play") 
  language(#Lang_Tooltip_ttStop) = ReadPreferenceString("ttStop", "Stop") 
  language(#Lang_Tooltip_ttPause) = ReadPreferenceString("ttPause", "Pause") 
  language(#Lang_Tooltip_ttDrive) = ReadPreferenceString("ttDrive", "CD Drive Open/Close") 
  language(#Lang_Tooltip_ttPrevious) = ReadPreferenceString("ttPrevious", "Previous") 
  language(#Lang_Tooltip_ttNext) = ReadPreferenceString("ttNext", "Next") 
  language(#Lang_Tooltip_ttHelp) = ReadPreferenceString("ttHelp", "Help") 
  language(#Lang_Tooltip_ttOnTheWeb) = ReadPreferenceString("ttOnTheWeb", "On The Web") 
  language(#Lang_Tooltip_ttRegister) = ReadPreferenceString("ttRegister", "Register") 
  language(#Lang_Tooltip_ttRepeat) = ReadPreferenceString("ttRepeat", "Repeat")
  language(#Lang_Tooltip_ttFull) = ReadPreferenceString("ttFull", "Fullscreen")
  
  PreferenceGroup("Requesters") 
  language(#Lang_Request_reError) = ReadPreferenceString("reError", "Error") 
  language(#Lang_Request_reErrorInfo) = ReadPreferenceString("reErrorInfo", "Can't initialize movie playback!") 
  language(#Lang_Request_reLoad) = ReadPreferenceString("reLoad", "Load Media") 
  language(#Lang_Request_reFiles) = ReadPreferenceString("reFiles", "Movie/Audio Files") 
  language(#Lang_Request_reAbout) = ReadPreferenceString("reAbout", "About") 
  language(#Lang_Request_reRegister) = ReadPreferenceString("reRegister", "Register") 
  language(#Lang_Request_reRegisterInfo) = ReadPreferenceString("reRegisterInfo", "To register, please enter a valid registration code below:") 
  language(#Lang_Request_reRegSuccessTitle) = ReadPreferenceString("reRegSuccessTitle", "Success!") 
  language(#Lang_Request_reRegSuccessInfo) = ReadPreferenceString("reRegSuccessInfo", "You have entered a correct registration key!") 
  language(#Lang_Request_reRegAlertTitle) = ReadPreferenceString("reRegAlertTitle", "Alert!") 
  language(#Lang_Request_reRegAlertInfo) = ReadPreferenceString("reRegAlertInfo", "You have entered either: An incorrect key or Nothing at all") 
  
  PreferenceGroup("Status Bar") 
  
  language(#Lang_Status_sbMedia) = ReadPreferenceString("sbMedia", "Media") 
  language(#Lang_Status_sbLoaded) = ReadPreferenceString("sbLoaded", "loaded") 
  language(#Lang_Status_sbNoLoad) = ReadPreferenceString("sbNoLoad", "Can't load the media '") 
  language(#Lang_Status_sbPaused) = ReadPreferenceString("sbPaused", "Media Paused") 
  language(#Lang_Status_sbStopped) = ReadPreferenceString("sbStopped", "Media Stopped") 
  language(#Lang_Status_sbPlaying) = ReadPreferenceString("sbPlaying", "Playing...") 
  
  ; ....... 
  
  ClosePreferences() 
  ProcedureReturn #True 
EndProcedure 

Posted: Tue Feb 27, 2007 7:31 pm
by Clutch
Now your language() array[?] and the constants are missing. :P

If you run your original code in the debugger, on which line and in which procedure does the error occur?

Posted: Tue Feb 27, 2007 7:32 pm
by Mindtrick
Clutch wrote:Now your language() array[?] and the constants are missing. :P

If you run your original code in the debugger, on which line and in which procedure does the error occur?
It occurs here:

Code: Select all

If OpenWindow(#Window_LangSelect, 0, 0, 200, 60, "Language", #PB_Window_SystemMenu | #PB_Window_ScreenCentered, WindowID(#Window_main)) And CreateGadgetList(WindowID(0))

Posted: Tue Feb 27, 2007 7:35 pm
by netmaestro
Procedure.s GetLanguage()
If OpenWindow(#Window_LangSelect, 0, 0, 200, 60, "Language", #PB_Window_SystemMenu | #PB_Window_ScreenCentered, WindowID(#Window_main)) And CreateGadgetList(WindowID(0))
Your window enumerations are starting at 1 - there is no WindowID(0), which should be what's causing your error. The portion I've bolded should be removed altogether as you're creating a gadget list on the next line anyway.

Posted: Tue Feb 27, 2007 7:37 pm
by Clutch
This may not be it, but I notice you're using a WindowID(0), and your window constant enumeration begins at 1. Maybe 'CreateGadgetList(WindowID(#Window_LangSelect))'?

Posted: Tue Feb 27, 2007 7:38 pm
by Clutch
That's some fancy shootin' there, netmaestro. :)

Posted: Tue Feb 27, 2007 7:40 pm
by netmaestro
"Twice is he armed whose cause is just
But three times he who gets his blow in fust."

Posted: Tue Feb 27, 2007 7:43 pm
by Mindtrick
netmaestro wrote:"Twice is he armed whose cause is just
But three times he who gets his blow in fust."
Thanks :D it works now woo!

Such friendly folk on these forums

Mindtrick