External code - safest way

I have a folder of code that containsclasses, modules, thread subclasses, basically all kinds of things. I made it external with the idea that I want to make it shareable between projects. I notice that the thread subclasses dont have the little arrow bottom left like the rest of the items but they do show up in the external folder. Is it now the case that xojo does externalize all items including classes andthreads and the missing arrows are just a ui thing? What is the best way to undo making a folder ike this external? I am worried about deleting the referenced folder in the project and copy/paste it back in - is that generally how its done?

I’m not sure what you mean, can you post a picture?

Also, you cannot make modules external, unfortunately.

right!? Totally unexpected but they are all in teh external folder i saved…
phoenix external

Your thread subclasses have the “external” arrow, it’s just hard to see black on brown/black. Magnify that image and you’ll see it too.

Ahhh, you and your young eyes! Well, what say you about the module ebing external and how to get them back in the best way

I’d say you discovered a bug that makes it appear as though the module is external, but it’s not. There is no good choice but the copy/paste that among your projects.

… or something has changed that lets modules be external now, and I was unaware.

You are now officially my favorite person here.

1 Like

lol. Im checking it in and starting a new project with it so I will know soon if its an oddity, bug or a feature

I believe you can make modules external except when they contain one or more classes.

1 Like

Also, I think if you hover your mouse cursor over the External Item, you should see a tooltip that gives you the actual location of the item.

Hope that helps.

1 Like

Yeah, my eyes aren’t good enough any more to make out those little arrows either but, at least on Windows, external items are shown in italics while internal items are not. That’s enough of an indicator for my poor eyes.

1 Like

@Wayne_Golding is right @Kem_Tekinay. Modules can 100% be external so long as they don’t contain classes or sub modules. A very annoying limitation but it does work.

1 Like

I’ve explained the approach we’re using in the Xojo Guest Blog Post: Xojo Projects in a MonoRepo.

That works just fine with “internal item” approach using a MonoRepo in order to share Code between Projects.

Sure… a MonoRepo is not ‘the’ solution for every collection of projects - but maybe something to consider.

See also this Forum Thread: Best way to re-use code

1 Like