diff --git a/examples/lazarus/nimlaz.lpi b/examples/cross_calculator/lazarus/nimlaz.lpi similarity index 100% rename from examples/lazarus/nimlaz.lpi rename to examples/cross_calculator/lazarus/nimlaz.lpi diff --git a/examples/lazarus/nimlaz.lpr b/examples/cross_calculator/lazarus/nimlaz.lpr similarity index 100% rename from examples/lazarus/nimlaz.lpr rename to examples/cross_calculator/lazarus/nimlaz.lpr diff --git a/examples/lazarus/nimlaz.lrs b/examples/cross_calculator/lazarus/nimlaz.lrs similarity index 100% rename from examples/lazarus/nimlaz.lrs rename to examples/cross_calculator/lazarus/nimlaz.lrs diff --git a/examples/lazarus/nimlaz.rc b/examples/cross_calculator/lazarus/nimlaz.rc similarity index 100% rename from examples/lazarus/nimlaz.rc rename to examples/cross_calculator/lazarus/nimlaz.rc diff --git a/examples/lazarus/readme.txt b/examples/cross_calculator/lazarus/readme.txt similarity index 100% rename from examples/lazarus/readme.txt rename to examples/cross_calculator/lazarus/readme.txt diff --git a/examples/lazarus/unit1.lfm b/examples/cross_calculator/lazarus/unit1.lfm similarity index 100% rename from examples/lazarus/unit1.lfm rename to examples/cross_calculator/lazarus/unit1.lfm diff --git a/examples/lazarus/unit1.pas b/examples/cross_calculator/lazarus/unit1.pas similarity index 100% rename from examples/lazarus/unit1.pas rename to examples/cross_calculator/lazarus/unit1.pas diff --git a/examples/lazarus/backend.nim b/examples/cross_calculator/nimrod_backend/backend.nim similarity index 57% rename from examples/lazarus/backend.nim rename to examples/cross_calculator/nimrod_backend/backend.nim index 64f0c5bf71..ffa4311f9d 100755 --- a/examples/lazarus/backend.nim +++ b/examples/cross_calculator/nimrod_backend/backend.nim @@ -1,4 +1,4 @@ -# Backend for the Lazarus GUI +# Backend for the different user interfaces. proc myAdd*(x, y: int): int {.cdecl, exportc.} = result = x + y diff --git a/examples/cross_calculator/readme.txt b/examples/cross_calculator/readme.txt new file mode 100644 index 0000000000..e59cb7e54d --- /dev/null +++ b/examples/cross_calculator/readme.txt @@ -0,0 +1,11 @@ +The cross platform calculator illustrates how to use Nimrod to create a backend +called by different native user interfaces. + +Since the purpose of the example is to show how the cross platform code +interacts with Nimrod the actual backend code is just a simple addition proc. +By keeping your program logic in Nimrod you can easily reuse it in different +platforms. + +To avoid duplication of code, the backend code lies in a separate directory and +each platform compiles it with a different custom build process, usually +generating C code in a temporary build directory.