Why is Servoy Scope Backwards?

‘See’
I suppose that where the confusion is coming from. What I meant by ‘see’ is by seeing the public functions from that module. As in, I’m seeing the Solution / Modules as objects, and that when you link them that is an extension.

https://www.ennicode.com/inheritance-in … mming-oop/

// Create parent with myMethod
class Parent1{
   public void myMethod(){
      System.out.println("Parent 1 Method");
   }
}
// myMethod derived through the inheritance to child1 
class Child1 extends Parent1{
}
// myMethod derived through the inheritance to child2
class Child2 extends Parent1{
}

The children ‘see’ the public method is what I’m getting at. Although your right in that isn’t the proper wording. Rather the children are ‘inheriting’ the functions by extension.

In Servoy, linking modules together creates a situation where it inherits backwards. The Parent inherits the functions of the child nodes… Which doesn’t make sense to me.

SOLUTION
I supposed if the idea behind the Solution / Module design is that the Solution is just another Module… Perhaps the resource itself should be the true Global Space?

As in, having an option to create ‘Scopes’/functions that would be available to every function in the environment.I believe I remember hearing that Servoy used to have this, but deprecated it? This could also be expanded to ‘assets’ or custom resources too. Just so there’s a central point that can be shared between different solution environments.

Because an issue I have with the ‘multiple solutions’ design is… I have no idea how to setup multiple solutions that would all share the same global functions and assets and also work in tandem together.

For example, if we go back to my example; Is it possible to convert some of those modules into their very own Solutions?
Like so;

Solution0 → Solution1, Solution2, Solution3

Solution1 → Molude1, Module2, Solution 4
Solution2 → Molude3, Module4, Solution 4
Solution3 → Molude5, Module6, Solution 4

Solution4 → Module7, Module8

(In this context, that Solution0 is the Start and that Solution4 is the End.)

Is the more proper way of setting up a Servoy project? Rather than having a bunch of modules?