summaryrefslogtreecommitdiff
path: root/odk
diff options
context:
space:
mode:
authorHossein <hossein@libreoffice.org>2022-04-12 15:20:01 +0200
committerHossein <hossein@libreoffice.org>2022-04-20 14:51:40 +0200
commita40558be785756929f606ab0798a026b985e0ffb (patch)
treeed75ea8dd0e525a61c52684ceff35e3ba59fd05d /odk
parent63bad2bf8dc0d1052532e92be1a18118c0398fbf (diff)
tdf#143122 - Port Java examples to C++
Porting FirstSteps/FirstUnoContact.java to C++ is done. More information on this example can be found in the DevGuide: LibreOffice Developer's Guide: Chapter 1 - First Steps - First Contact https://wiki.documentfoundation.org/Documentation/DevGuide/First_Steps Change-Id: I84b0a60738bfe614158d7eabf8bff3cda1ccca50 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132910 Tested-by: Jenkins Reviewed-by: Hossein <hossein@libreoffice.org>
Diffstat (limited to 'odk')
-rw-r--r--odk/examples/DevelopersGuide/FirstSteps/FirstUnoContact.cpp35
1 files changed, 35 insertions, 0 deletions
diff --git a/odk/examples/DevelopersGuide/FirstSteps/FirstUnoContact.cpp b/odk/examples/DevelopersGuide/FirstSteps/FirstUnoContact.cpp
new file mode 100644
index 000000000000..bdcac76bec14
--- /dev/null
+++ b/odk/examples/DevelopersGuide/FirstSteps/FirstUnoContact.cpp
@@ -0,0 +1,35 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4;
+ * fill-column: 100 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#include <com/sun/star/lang/XMultiComponentFactory.hpp>
+#include <cppuhelper/bootstrap.hxx>
+#include <iostream>
+#include <sal/main.h>
+
+SAL_IMPLEMENT_MAIN()
+{
+ try
+ {
+ css::uno::Reference<css::uno::XComponentContext> xContext(cppu::bootstrap());
+ std::cout << "Connected to a running office ..." << std::endl;
+ css::uno::Reference<css::lang::XMultiComponentFactory> xMCF = xContext->getServiceManager();
+ std::string available = xMCF != nullptr ? "available" : "not available";
+ std::cout << "remote ServiceManager is " + available << std::endl;
+ }
+ catch (css::uno::Exception& e)
+ {
+ std::cout << e.Message << std::endl;
+ return 1;
+ }
+ return 0;
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s
+ * cinkeys+=0=break: */