Problems with ProGUI userlib

TailBite specific forum

Moderators: gnozal, ABBKlaus, lexvictory

PrincieD
Addict
Addict
Posts: 861
Joined: Wed Aug 10, 2005 2:08 pm
Location: Yorkshire, England
Contact:

Problems with ProGUI userlib

Post 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.
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk
ABBKlaus
Addict
Addict
Posts: 1143
Joined: Sat Apr 10, 2004 1:20 pm
Location: Germany

Re: Problems with ProGUI userlib

Post 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
PrincieD
Addict
Addict
Posts: 861
Joined: Wed Aug 10, 2005 2:08 pm
Location: Yorkshire, England
Contact:

Re: Problems with ProGUI userlib

Post 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.
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk
PrincieD
Addict
Addict
Posts: 861
Joined: Wed Aug 10, 2005 2:08 pm
Location: Yorkshire, England
Contact:

Re: Problems with ProGUI userlib

Post 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.
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk
ABBKlaus
Addict
Addict
Posts: 1143
Joined: Sat Apr 10, 2004 1:20 pm
Location: Germany

Re: Problems with ProGUI userlib

Post by ABBKlaus »

thanks for the bugreport, its reproducable now.

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

BR Klaus
PrincieD
Addict
Addict
Posts: 861
Joined: Wed Aug 10, 2005 2:08 pm
Location: Yorkshire, England
Contact:

Re: Problems with ProGUI userlib

Post 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.
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk
ABBKlaus
Addict
Addict
Posts: 1143
Joined: Sat Apr 10, 2004 1:20 pm
Location: Germany

Re: Problems with ProGUI userlib

Post 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
User avatar
KJ67
Enthusiast
Enthusiast
Posts: 218
Joined: Fri Jun 26, 2009 3:51 pm
Location: Westernmost tip of Norway

Re: Problems with ProGUI userlib

Post by KJ67 »

Thank you.

It works well for me, both with 1-D and 2-D arrays.
The best preparation for tomorrow is doing your best today.
PrincieD
Addict
Addict
Posts: 861
Joined: Wed Aug 10, 2005 2:08 pm
Location: Yorkshire, England
Contact:

Re: Problems with ProGUI userlib

Post by PrincieD »

Thanks ABBKlaus! :D works great now! :)
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk
Post Reply