Page 1 of 1

Problems with ProGUI userlib

Posted: Mon Oct 04, 2010 6:52 pm
by PrincieD
Hi ABBKlaus

I'm getting the following errors when trying to compile ProGUI examples with threadsafe/unicode enabled with the ProGUI multilib:

POLINK: error: Unresolved external symbol 'ProGUI_THREAD_a_UIWhidbeyColours'
POLINK: error: Unresolved external symbol 'ProGUI_THREAD_a_UIOffice2003Colours'
POLINK: error: Unresolved external symbol 'ProGUI_THREAD_a_brushHandle'

These global arrays of structures are declared in the ProGUI_Init proceduredll:

Code: Select all

Global Dim UIWhidbeyColours.UIColours(#MaxUIComponents)
Global Dim UIOffice2003Colours.UIColours(#MaxUIComponents)
Global Dim brushHandle.brushHandles(#MaxUIComponents)
and the structures are:

Code: Select all

Structure dynamicBlitEx ; used for storing list of different sized blitEx components
  hdc.i
  bitmap.i
  width.l
  height.l
EndStructure

Structure UIColours
  Blue.l
  Olive.l
  Silver.l
  Grey.l
  CustomBlue.l
  CustomOlive.l
  CustomSilver.l
  CustomGrey.l
  
  ; blitCache
  hdc.i
  bitmap.i
  width.l
  height.l
  List dBlitEx.dynamicBlitEx()
  
EndStructure

Structure brushHandles
  Handle.i
  colour.l
EndStructure
I'm really scratching my head over this as when threadsafe/unicode is not ticked in the compiler options the multilib works fine :?

Any help would be greatly appreciated! :)

Thanks!

Chris.

Re: Problems with ProGUI userlib

Posted: Tue Oct 05, 2010 6:01 pm
by ABBKlaus
i can“t reproduce the problem you are having here on my machine :o

would be good to have a snippet that reproduces your problem clearly :idea:

BR Klaus

Code: Select all

#MaxUIComponents = 256

Structure dynamicBlitEx ; used for storing list of different sized blitEx components
  hdc.i
  bitmap.i
  width.l
  height.l
EndStructure

Structure UIColours
  Blue.l
  Olive.l
  Silver.l
  Grey.l
  CustomBlue.l
  CustomOlive.l
  CustomSilver.l
  CustomGrey.l
  
  ; blitCache
  hdc.i
  bitmap.i
  width.l
  height.l
  List dBlitEx.dynamicBlitEx()
  
EndStructure

Structure brushHandles
  Handle.i
  colour.l
EndStructure

ProcedureDLL ProGUI_Init()
  Global Dim UIWhidbeyColours.UIColours(#MaxUIComponents)
  Global Dim UIOffice2003Colours.UIColours(#MaxUIComponents)
  Global Dim brushHandle.brushHandles(#MaxUIComponents)
EndProcedure

Re: Problems with ProGUI userlib

Posted: Wed Oct 06, 2010 3:48 pm
by PrincieD
Thanks for getting back to me ABBKlaus!

The following Testlib.pb as multilib reproduces the problem:

Code: Select all

#MaxUIComponents = 256

Structure dynamicBlitEx ; used for storing list of different sized blitEx components
  hdc.i
  bitmap.i
  width.l
  height.l
EndStructure

Structure UIColours
  Blue.l
  Olive.l
  Silver.l
  Grey.l
  CustomBlue.l
  CustomOlive.l
  CustomSilver.l
  CustomGrey.l
  
  ; blitCache
  hdc.i
  bitmap.i
  width.l
  height.l
  List dBlitEx.dynamicBlitEx()
  
EndStructure

Structure brushHandles
  Handle.i
  colour.l
EndStructure

ProcedureDLL Testlib_Init()
  Global Dim UIWhidbeyColours.UIColours(#MaxUIComponents)
  Global Dim UIOffice2003Colours.UIColours(#MaxUIComponents)
  Global Dim brushHandle.brushHandles(#MaxUIComponents)
EndProcedure

ProcedureDLL StartProGUI(user.s, k1.l, k2.l, k3.l, k4.l, k5.l, k6.l, k7.l)
  
  x = x + 1
  
EndProcedure
Compile the following example in PB with threadsafe and/or unicode and the polink errors are reported:

Code: Select all

StartProGUI("", 0, 0, 0, 0, 0, 0, 0)

Debug "testing"

End
Cheers,

Chris.

Re: Problems with ProGUI userlib

Posted: Thu Oct 07, 2010 3:35 pm
by PrincieD
It's deffinately a problem with any type of "global dim" in Tailbite not just "global dim" of structures. I hope you can work on a fix soon! :)

Cheers mate,

Chris.

Re: Problems with ProGUI userlib

Posted: Thu Oct 07, 2010 4:46 pm
by ABBKlaus
thanks for the bugreport, its reproducable now.

Maybe i get on it next week, no time atm sorry :oops:

BR Klaus

Re: Problems with ProGUI userlib

Posted: Thu Oct 07, 2010 9:10 pm
by PrincieD
ABBKlaus wrote:thanks for the bugreport, its reproducable now.

Maybe i get on it next week, no time atm sorry :oops:

BR Klaus
No worries :) I'm glad it wasn't just on my system or a problem with the internals of ProGUI.

Cheers!

Chris.

Re: Problems with ProGUI userlib

Posted: Mon Oct 11, 2010 5:56 pm
by ABBKlaus
There is a bugfixed version ready for you to test.

http://www.tailbite.com/downloads/TailBiteV1.4.4.zip

Please confirm if it is working (or not) !

BR Klaus

Re: Problems with ProGUI userlib

Posted: Mon Oct 11, 2010 6:23 pm
by KJ67
Thank you.

It works well for me, both with 1-D and 2-D arrays.

Re: Problems with ProGUI userlib

Posted: Tue Oct 12, 2010 4:26 pm
by PrincieD
Thanks ABBKlaus! :D works great now! :)