aboutsummaryrefslogtreecommitdiff
path: root/samples
diff options
context:
space:
mode:
authoraindros <aindros@hotmail.com>2020-05-13 01:45:16 +0200
committeraindros <aindros@hotmail.com>2020-05-13 01:45:16 +0200
commit1f99e21c23f32fcc4bd2185af6cf1710c98f413a (patch)
tree4b349f2b21f0448a8526df25a6e06beb3b12b87e /samples
parentc4f15aa3a95d61ebd333b64662164e27d232ec04 (diff)
downloadcherry-1f99e21c23f32fcc4bd2185af6cf1710c98f413a.tar.gz
cherry-1f99e21c23f32fcc4bd2185af6cf1710c98f413a.zip
Sources, samples and makefile (first alpha version)
Diffstat (limited to 'samples')
-rw-r--r--samples/application1/Makefile33
-rw-r--r--samples/application1/application.c35
-rw-r--r--samples/application2/Makefile33
-rw-r--r--samples/application2/application.c47
4 files changed, 148 insertions, 0 deletions
diff --git a/samples/application1/Makefile b/samples/application1/Makefile
new file mode 100644
index 0000000..7417484
--- /dev/null
+++ b/samples/application1/Makefile
@@ -0,0 +1,33 @@
+# ------------------------------------------------------------------------------
+# Sample Application makefile
+#
+# Author: Alessandro Iezzi info@alessandroiezzi.it
+# Date : 2020-05-06
+#
+# Changelog:
+# 2020-05-06 - first version
+# ------------------------------------------------------------------------------
+
+SRC=src
+OBJ=build
+BIN=bin
+
+RM=DEL /Q
+
+CC=cl
+CFLAGS=/c /I..\..\bin\include
+
+LINKER=link
+LFLAGS=/DLL
+
+application.exe: application.obj
+ $(LINKER) /out:application.exe application.obj /LIBPATH:"..\..\bin\lib" cherry.lib
+ copy ..\..\bin\lib\cherry.dll cherry.dll
+
+application.obj: application.c
+ $(CC) $(CFLAGS) application.c /Fo"application.obj"
+
+clean:
+ if exist application.obj $(RM) *.obj
+ if exist application.exe $(RM) *.exe
+ if exist cherry.dll $(RM) *.dll
diff --git a/samples/application1/application.c b/samples/application1/application.c
new file mode 100644
index 0000000..64133b6
--- /dev/null
+++ b/samples/application1/application.c
@@ -0,0 +1,35 @@
+/*-
+ * Copyright (c) 2020 Alessandro Iezzi
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <stdio.h>
+#include <cherry.h>
+
+int main(int argc, char** argv)
+{
+ CherryApplication* app = cherry_application_new("Sample Application");
+ printf("Application name is: %s\n", app->name);
+
+ return 0;
+}
diff --git a/samples/application2/Makefile b/samples/application2/Makefile
new file mode 100644
index 0000000..5d86efa
--- /dev/null
+++ b/samples/application2/Makefile
@@ -0,0 +1,33 @@
+# ------------------------------------------------------------------------------
+# Sample Application makefile
+#
+# Author: Alessandro Iezzi info@alessandroiezzi.it
+# Date : 2020-05-06
+#
+# Changelog:
+# 2020-05-06 - first version
+# ------------------------------------------------------------------------------
+
+SRC=src
+OBJ=build
+BIN=bin
+
+RM=DEL /Q
+
+CC=cl
+CFLAGS=/c /I..\..\bin\include
+
+LINKER=link
+LFLAGS=User32.lib /LIBPATH:"..\..\bin\lib" cherry.lib
+
+application.exe: application.obj
+ $(LINKER) /out:application.exe application.obj $(LFLAGS)
+ copy ..\..\bin\lib\cherry.dll cherry.dll
+
+application.obj: application.c
+ $(CC) $(CFLAGS) application.c /Fo"application.obj"
+
+clean:
+ if exist application.obj $(RM) *.obj
+ if exist application.exe $(RM) *.exe
+ if exist cherry.dll $(RM) *.dll
diff --git a/samples/application2/application.c b/samples/application2/application.c
new file mode 100644
index 0000000..6ad3fe7
--- /dev/null
+++ b/samples/application2/application.c
@@ -0,0 +1,47 @@
+/*-
+ * Copyright (c) 2020 Alessandro Iezzi
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <stdio.h>
+#include <cherry.h>
+
+int main(int argc, char** argv)
+{
+ CherryApplication* app;
+ int result;
+
+ printf("This sample show how application enter in main loop\n");
+
+ app = cherry_application_new("Sample Application");
+ printf("Application name is: %s\n", app->name);
+
+ printf("Trying to call PostQuitMessage()");
+ PostQuitMessage(0);
+ printf("Try to comment PostQuitMessage(), let's see what happens\n");
+
+ result = cherry_application_run();
+ printf("If you comment PostQuitMessage(), you won't read this line\n");
+
+ return result;
+}