We value your input!
Please participate in Archicad 28 Home Screen and Tooltips/Quick Tutorials survey

Archicad C++ API
About Archicad add-on development using the C++ API.
SOLVED!

Strange problem with overlapping dockable palettes on Mac

Anonymous
Not applicable
Hi all,

I have got a very strange problem with two palettes on Archicad 20 on Mac: when both of them are opened and docked, they are totally overlapped as if there is only one of them, moving this "double" palette also moves both of them. When I drag this palette down to undock it, then the other palette which remains docked is seen and I can see both of them - one docked and the other undocked. If I drag the docked one down, then it overlaps the undocked one and I can see again only one palette. Dragging this palette back to dock it moves both palettes to the dock and they remain overlapped. The only way I can see two palettes is when both are docked and then I drag "the upper" one down to undock it.

Do I have any problems with the IDs in the .grc file?

Thanks!
1 ACCEPTED SOLUTION

Accepted Solutions
Solution
Tibor Lorantfy
Graphisoft Alumni
Graphisoft Alumni
Hi,

My first tip is that you accidentally used the same GUID for the two palettes.
Make sure that both palettes have unique GUID and you passed the proper identifiers to the constructor function of DG::Palette baseclass and the ACAPI_RegisterModelessWindow function.

Regards,
Tibor

View solution in original post

5 REPLIES 5
Solution
Tibor Lorantfy
Graphisoft Alumni
Graphisoft Alumni
Hi,

My first tip is that you accidentally used the same GUID for the two palettes.
Make sure that both palettes have unique GUID and you passed the proper identifiers to the constructor function of DG::Palette baseclass and the ACAPI_RegisterModelessWindow function.

Regards,
Tibor
Anonymous
Not applicable
Thanks a lot, Tibor!

I changed GS::Guid and it works! But only the first opened palette can be docked and undocked by dragging, if I drag the second to the dock and down, it remains always undocked.

And something else - GS::Guid is a very complex combination of letters, numbers and dashes, surrounded by '{}'. I don't know how it is generated because I inherited this project from the previous colleague who I never met. . I just changed the last letter.

Regards!
Tibor Lorantfy
Graphisoft Alumni
Graphisoft Alumni
I recommend you this page: https://www.guidgenerator.com
This simple site explans well what is GUID and you can generate unique identifiers here also.

If you are using macOS system, then you can use the following command in the Terminal to generate GUID:
uuidgen
Tibor Lorantfy
Graphisoft Alumni
Graphisoft Alumni
n.mihaylov wrote:
only the first opened palette can be docked and undocked by dragging, if I drag the second to the dock and down, it remains always undocked.
The following reasons can cause this issue:
- A palette cannot be docked if there isn't enough free space for it on your display to be docked.
- You used the same reference ID or palette callback function for the two palettes. These informations are passed to the ACAPI_RegisterModelessWindow function in the first and the second parameters.

Maybe there could be more reasons too... but let's see you face one of these.
Anonymous
Not applicable
The problem was the guid which I changed manually - I just found the online generators and generated a "real" one, now I am going to learn more about the guid.

Thank you very much, it turned out this is the only place in the whole internet where I can find any information about this specific area of programming!