ScreenGadget bugs

Post bugreports for the Windows version here
drgolf
Enthusiast
Enthusiast
Posts: 115
Joined: Tue Mar 03, 2009 3:40 pm
Location: france

ScreenGadget bugs

Post by drgolf »

Hello,

In the example : screengadgetmultiplewindow, on window2, tab splitter, move splitter on max right or max left : the app freeze.

I have an error message : accès mémoire invalide, ligne 217.

Very good lib.

Tested with pb 6.30 b3 x64 windows 11 pro.
Fred
Administrator
Administrator
Posts: 18312
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Re: ScreenGadget bugs

Post by Fred »

Moved to regular bug forums, you can put all your ScreenGadget related bugs here so pf-shadoko have a quick overall.
User avatar
Bisonte
Addict
Addict
Posts: 1315
Joined: Tue Oct 09, 2007 2:15 am

Re: ScreenGadget bugs

Post by Bisonte »

Fred wrote: Mon Oct 06, 2025 10:36 am Moved to regular bug forums, you can put all your ScreenGadget related bugs here so pf-shadoko have a quick overall.
Todo so, a little doc was very helpful... ;)
Functions, their parameters ... and what they should do.
Or missed I the posts about that ?
PureBasic 6.21 (Windows x64) | Windows 11 Pro | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom​​
English is not my native language... (I often use DeepL.)
User_Russian
Addict
Addict
Posts: 1574
Joined: Wed Nov 12, 2008 5:01 pm
Location: Russia

Re: ScreenGadget bugs

Post by User_Russian »

drgolf wrote: Mon Oct 06, 2025 10:11 amIn the example : screengadgetmultiplewindow, on window2, tab splitter, move splitter on max right or max left : the app freeze.
Doesn't freeze.
I guess this happens under certain circumstances.

I found this bug. When entering non-english text, the text cursor is moved to the right of the text.
Image
pjay
Enthusiast
Enthusiast
Posts: 272
Joined: Thu Mar 30, 2006 11:14 am

Re: ScreenGadget bugs

Post by pjay »

No crashes to report here on x64.

I echo Bisonte's sentiment that a simple list of the new commands, parameters & flags would be really useful in testing.

A few points regarding the ScreenGadgetMultipleWindow.pb sample:

The progress bars have a cosmetic issue when the values are down towards the lower end (you can see it in the video posted above).
The shift key has input lag, so keying something that contains occasional capitals (such as your name) will often miss the capitals.
Typical shift-select of multiple characters on an input box doesn't work, so you can't clear the box quickly & easily.
Keyboard inputs aren't repeating, so clearing an input took many presses of the backspace key.
Adjusting the rotation slider & clicking the 'show / hide' button a few times eventually caused Window 2 to just hide & re-appear instead of it animating on & off the screen.

What's the command to rename a ScreenWindows title?
Are tooltips implemented / going to be implemented?
User_Russian
Addict
Addict
Posts: 1574
Joined: Wed Nov 12, 2008 5:01 pm
Location: Russia

Re: ScreenGadget bugs

Post by User_Russian »

pjay wrote: Mon Oct 06, 2025 2:17 pmI echo Bisonte's sentiment that a simple list of the new commands, parameters & flags would be really useful in testing.
This information can be retrieved from the screen library.

Code: Select all

AddScreenGadgetItem(#ScreenGadget, Position, Text$) ; Adds an item to a gadget (ListView, ComboBox etc.)
ButtonImageScreenGadget(#ScreenGadget, x, y, Width, Height, ImageID [, Flags]) ; Creates a button image gadget in the current screen or screen window.
ButtonScreenGadget(#ScreenGadget, x, y, Width, Height, Text$ [, Flags]) ; Creates a button gadget in the current screen or screen window.
CheckBoxScreenGadget(#ScreenGadget, x, y, Width, Height, Text$ [, Flags]) ; Creates a checkbox gadget in the current screen or screen window.
CloseScreenGadgetList(#ScreenGadget [, GadgetItem]) ; Closes the current screen gadget list and go back to the previous one.
CloseScreenWindow(#ScreenWindow) ; Closes the specified screen window.
ComboBoxScreenGadget(#ScreenGadget, x, y, Width, Height [, Flags]) ; Creates a combobox gadget in the current screen or screen window.
ContainerScreenGadget(#ScreenGadget, x, y, Width, Height, [, Flags]) ; Creates a container gadget in the current screen or screen window.
DisableScreenGadget(#ScreenGadget) ; Disables or enables the #ScreenGadget.
DisableScreenWindow(#ScreenWindow, State) ; Disable or enable all user input in the window.
EditorScreenGadget(#ScreenGadget, x, y, Width, Height [, Flags]) ; Creates an editor gadget in the current screen or screen window.
EventScreenGadget() ; Returns the screen gadget number (#ScreenGagdet) which triggered the event.
FreeScreenGadget(#ScreenGadget) ; Frees the specified screen gadget
GetScreenGadgetState(#ScreenGadget) ; Gets the state of the #ScreenGadget.
GetScreenGadgetText(#ScreenGadget) ; Gets the text of the #ScreenGadget.
HideScreenGadget(#ScreenGadget) ; Hides or shows the specified screen gadget.
HideScreenWindow(#ScreenWindow, State) ; Hide or show the specified #ScreenWindow.
ImageScreenGadget(#ScreenGadget, x, y, Width, Height, ImageID [, Flags]) ; Creates a image gadget in the current screen or screen window.
InitScreenGadgets() ; Intialize the screen gadget library for the current screen.
IsScreenGadget(#ScreenGadget) ; Tests if the given screen gadget is a valid screen gadget object.
ListViewScreenGadget(#ScreenGadget, x, y, Width, Height [, Flags]) ; Creates a listview gadget in the current screen or screen window.
OpenScreenGadgetList(#ScreenGadget [, GadgetItem]) ; Makes the #ScreenGadget the current screen gadget list.
OpenScreenWindow(#ScreenWindow, x, y, Width, Height [Title$ [, Flags]]) ; Open a new window on the current screen.
OptionScreenGadget(#ScreenGadget, x, y, Width, Height, Text$) ; Creates an option gadget in the current screen or screen window.
PanelScreenGadget(#ScreenGadget, x, y, Width, Height) ; Create a panel gadget in the current screen or screen window.
ProgressBarScreenGadget(#ScreenGadget, x, y, Width, Height, Min, Max [, Flags]) ; Creates a progressbar gadget in the current screen or screen window.
RemoveScreenGadgetItem(#ScreenGadget, Position, Text$) ; Removes the item at the specified position from the #ScreenGadget.
RenderScreenGadgets() ; Renders the screen window and gadgets on the current screen.
ResizeScreenGadget(#ScreenGadget, x, y, Width, Height) ; Moves and resizes the specified #ScreenGadget to the given position and dimensions.
ResizeScreenWindow(#ScreenWindow, x, y, Width, Height) ; Moves and resizes the specified #ScreenWindow to the given position and dimensions.
ScreenEventType() ; After ScreenWindowEvent(), use this function to determine of which type the event is.
ScreenGadgetHeight(#ScreenGadget) ; Returns the height of the #ScreenGadget, in pixels. 
ScreenGadgetSkin(SkinPart, #Image [, FreePrevious]) ; Set an image for a specific skin part. 
ScreenGadgetType(#ScreenGadget) ; Returns the type of the specified #ScreenGadget.
ScreenGadgetWidth(#ScreenGadget) ; Returns the width of the #ScreenGadget, in pixels.
ScreenGadgetX(#ScreenGadget) ; Returns the X position of the #ScreenGadget, in pixels.
ScreenGadgetY(#ScreenGadget) ; Returns the Y position of the #ScreenGadget, in pixels.
ScreenWindowAnimation(#ScreenWindow, Way, Duration, [, Fading [, Zoom, [x, [y, [, Angle]]]]) ; Setup an animation to open the window.
ScreenWindowEvent() ; Check if an event has occurred on any of the opened screen windows.
ScrollAreaScreenGadget(#ScreenGadget, x, y, Width, Height, ScrollAreaWidth, ScrollAreaHeight, ScrollStep [, Flags]) ; Creates a scrollarea gadget in the current screen or screen window.
ScrollBarScreenGadget(#ScreenGadget, x, y, Width, Height, Min, Max, PageLength [, Flags]) ; Creates a scrollbar gadget in the current screen or screen window.
SetScreenGadgetFont(#ScreenGadget, FontID) ; Changes the font which will be used by newly created gadgets.
SetScreenGadgetState(#ScreenGadget, State) ; Changes the state of the #ScreenGadget.
SetScreenGadgetText(#ScreenGadget, Text$) ; Changes the text of the #ScreenGadget.
SplitterScreenGadget(#ScreenGadget, x, y, Width, Height, #ScreenGadget1, #ScreenGadget2 [, Flags]) ; Creates a splitter gadget in the current screen or screen window.
StringScreenGadget(#ScreenGadget, x, y, Width, Height, Text$ [, Flags]) ; Creates a string gadget in the current screen or screen window.
TextScreenGadget(#ScreenGadget, x, y, Width, Height, Text$ [, Flags]) ; Creates a text gadget in the current screen or screen window.
TrackBarScreenGadget(#ScreenGadget, x, y, Width, Height, Min, Max [, Flags]) ; Creates a trackbar gadget in the current screen or screen window.
Fred
Administrator
Administrator
Posts: 18312
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Re: ScreenGadget bugs

Post by Fred »

This lib is a mimic of the regular gadget lib so it should be easy for PB coders to get a grip of it. Doc will be ready a bit later
Post Reply