Hi bookworm,
The reason why your code wasn't displaying properly on Windows was because your labels were drawn so big that they were drawn over your other gadgets. On Mac OS X, as labels are transparent, it didn't really matter, but labels on Windows are drawn opaque and as such hid your other gadgets.
From the looks of your gadget-code, it looks like you are having a hard time working out how to position your gadgets on the screen. Can I suggest you use a GUI Editor (such as LogicGUI [see Jsp's sig] or GUIde) which allows you to draw your control how you want and allows you to export the equivalent code?
If you are set on doing it yourself, then I suggest you make use of the WINDOW_CLIENTCOORDS flag when creating windows to ensure your window looks the same on all platforms...
I've quickly re-designed your interface if you are really stuck or are looking for some pointers:
P.S. Oh, and I've also added some drag n' drop handling code as to me drag n' drop is more intuitive than typing in the file-path yourself... Still, each to their own I suppose.
The reason why your code wasn't displaying properly on Windows was because your labels were drawn so big that they were drawn over your other gadgets. On Mac OS X, as labels are transparent, it didn't really matter, but labels on Windows are drawn opaque and as such hid your other gadgets.
From the looks of your gadget-code, it looks like you are having a hard time working out how to position your gadgets on the screen. Can I suggest you use a GUI Editor (such as LogicGUI [see Jsp's sig] or GUIde) which allows you to draw your control how you want and allows you to export the equivalent code?
If you are set on doing it yourself, then I suggest you make use of the WINDOW_CLIENTCOORDS flag when creating windows to ensure your window looks the same on all platforms...
I've quickly re-designed your interface if you are really stuck or are looking for some pointers:
'set appearance Global Style:Int = WINDOW_TITLEBAR|WINDOW_STATUS|WINDOW_CLIENTCOORDS|WINDOW_ACCEPTFILES Global version:String = "0.9.1" 'music variables Global music:TSound Global channel:TChannel Global paused:Int = 0 channel = AllocChannel() Global mainWindow:TGadget = CreateWindow( "Bookworm's OGG Player - " + version, 200, 200, 549, 120, Null, Style ) Global panelMusicFile:TGadget = CreatePanel( 10, 10, 430, 60, mainWindow, PANEL_GROUP, "Enter music file here: " ) Global musicDropBox:TGadget = CreateTextField( 7, 4, 410, 24, panelMusicFile, 0 ) 'A few other controls you might want to use Global progressSong:TGadget = CreateProgBar( 10, 95, 430, 15, mainWindow, 0 ) Global sliderSong:TGadget = CreateSlider( 10, 70, 430, 20, mainWindow, SLIDER_TRACKBAR|SLIDER_HORIZONTAL ) 'Buttons Global musicPlay:TGadget = CreateButton( "Play", 450, 10, 90, 30, mainWindow, BUTTON_PUSH ) Global musicPause:TGadget = CreateButton( "Pause", 450, 44, 90, 30, mainWindow, BUTTON_PUSH ) Global musicStop:TGadget = CreateButton( "Stop", 450, 78, 90, 30, mainWindow, BUTTON_PUSH ) 'main loop Repeat WaitEvent() Select EventID() 'so you want to end it all? Case EVENT_WINDOWCLOSE End Case EVENT_GADGETACTION Select EventSource() Case musicDropBox SetGadgetText musicFile,"Attempting to load..." SetGadgetText musicInfo,"Current File: "+TextFieldText(musicDropBox) 'Case pReset ' SetGadgetText musicFile,"No music playing..." ' SetGadgetText musicDropBox,"" ' SetGadgetText musicInfo,"Current File: " ' stopCurrent() Case musicPlay playCurrent() Case musicPause pauseCurrent() Case musicStop stopCurrent() End Select Case EVENT_WINDOWACCEPT SetGadgetText musicDropBox, EventText() End Select Forever Function playCurrent() music = LoadSound(TextFieldText(musicDropBox)) If music = Null SetGadgetText musicFile,"Error: File Not Found!" Else PlaySound music,channel SetGadgetText musicFile,"Music Playing!" EndIf EndFunction Function stopCurrent() StopChannel channel SetGadgetText musicFile,"Music Stopped" channel = AllocChannel() If music = Null SetGadgetText musicFile,"Error: File Not Found!" EndIf EndFunction Function pauseCurrent() If paused = 0 PauseChannel channel SetGadgetText musicPause,"Resume" SetGadgetText musicFile,"Music Paused" If music = Null SetGadgetText musicFile,"Error: File Not Found!" EndIf paused =1 ElseIf paused = 1 ResumeChannel channel SetGadgetText musicPause,"Pause" SetGadgetText musicFile,"Music Playing!" If music = Null SetGadgetText musicFile,"Error: File Not Found!" EndIf paused =0 EndIf EndFunction
P.S. Oh, and I've also added some drag n' drop handling code as to me drag n' drop is more intuitive than typing in the file-path yourself... Still, each to their own I suppose.