summaryrefslogtreecommitdiffstats
path: root/tdecore/tdeinstance.h
diff options
context:
space:
mode:
authorMichele Calgaro <michele.calgaro@yahoo.it>2025-08-06 13:07:21 +0900
committerMichele Calgaro <michele.calgaro@yahoo.it>2025-08-13 21:51:57 +0900
commitcfe383b0628d5e8b642e5df2e261b258b7c19103 (patch)
tree63a2b50a5544818432ff7d2d5a28b37b60f6398b /tdecore/tdeinstance.h
parent351e6ce3b2757c57071ab33fdde2afe265c048af (diff)
downloadtdelibs-cfe383b0628d5e8b642e5df2e261b258b7c19103.tar.gz
tdelibs-cfe383b0628d5e8b642e5df2e261b258b7c19103.zip
Rename kinstance.{h,cpp} to tdeinstance.{h,cpp}.
A dummy kinstance.h has been temporarily added to keep other apps building while the replacement is completed across all TDE code base. Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
Diffstat (limited to 'tdecore/tdeinstance.h')
-rw-r--r--tdecore/tdeinstance.h192
1 files changed, 192 insertions, 0 deletions
diff --git a/tdecore/tdeinstance.h b/tdecore/tdeinstance.h
new file mode 100644
index 000000000..7ded51878
--- /dev/null
+++ b/tdecore/tdeinstance.h
@@ -0,0 +1,192 @@
+/* This file is part of the TDE libraries
+ Copyright (C) 1999 Torben Weis <weis@kde.org>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License version 2 as published by the Free Software Foundation.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+*/
+#ifndef _TDEINSTANCE_H
+#define _TDEINSTANCE_H
+
+#include <tqstring.h>
+#include "tdelibs_export.h"
+
+class TDEStandardDirs;
+class TDEAboutData;
+class TDEConfig;
+class TDEIconLoader;
+class KCharsets;
+class TQFont;
+class TDEInstancePrivate;
+class KMimeSourceFactory;
+class TDESharedConfig;
+#ifdef __TDE_HAVE_TDEHWLIB
+class TDEHardwareDevices;
+class TDEGlobalNetworkManager;
+#endif
+
+
+/**
+ * Access to TDE global objects for use in shared libraries. In
+ * practical terms, this class is used in TDE components. This allows
+ * components to store things that normally would be accessed by
+ * TDEGlobal.
+ *
+ * @author Torben Weis
+ */
+class TDECORE_EXPORT TDEInstance
+{
+ friend class TDEStandardDirs;
+
+ public:
+ /**
+ * Constructor.
+ * @param instanceName the name of the instance
+ */
+ TDEInstance( const TQCString& instanceName) ;
+
+ /**
+ * Constructor.
+ * When building a TDEInstance that is not your TDEApplication,
+ * make sure that the TDEAboutData and the TDEInstance have the same life time.
+ * You have to destroy both, since the instance doesn't own the about data.
+ * Don't build a TDEAboutData on the stack in this case !
+ * Building a TDEAboutData on the stack is only ok for usage with
+ * TDECmdLineArgs and TDEApplication (not destroyed until the app exits).
+ * @param aboutData data about this instance (see TDEAboutData)
+ */
+ TDEInstance( const TDEAboutData * aboutData );
+
+ /*
+ * @internal
+ * Only for K(Unique)Application
+ * Initialize from src and delete it.
+ */
+
+ TDEInstance( TDEInstance* src );
+
+ /**
+ * Destructor.
+ */
+ virtual ~TDEInstance();
+
+ /**
+ * Returns the application standard dirs object.
+ * @return The TDEStandardDirs of the application.
+ */
+ TDEStandardDirs *dirs() const;
+
+ /**
+ * Returns the general config object ("appnamerc").
+ * @return the TDEConfig object for the instance.
+ */
+ TDEConfig *config() const;
+
+ /**
+ * Returns the general config object ("appnamerc").
+ * @return the TDEConfig object for the instance.
+ */
+ TDESharedConfig *sharedConfig() const;
+
+ /**
+ * Set a read-only flag on the configuration files
+ * This must be called before config() or dirs() to have any effect
+ * Defaults to false
+ * @param ro read only if true
+ */
+ void setConfigReadOnly(bool ro);
+
+ /**
+ * Returns an iconloader object.
+ * @return the iconloader object.
+ */
+ TDEIconLoader *iconLoader() const;
+
+#ifdef __TDE_HAVE_TDEHWLIB
+ /**
+ * Returns a TDEHardwareDevices object.
+ * @return the hardwaredevices object.
+ */
+ TDEHardwareDevices *hardwareDevices() const;
+
+ /**
+ * Returns a TDEGlobalNetworkManager object.
+ * @return the networkmanager object.
+ */
+ TDEGlobalNetworkManager *networkManager() const;
+#endif
+
+ /**
+ * Re-allocate the global iconloader.
+ */
+ void newIconLoader() const;
+
+ /**
+ * Returns the about data of this instance
+ * Warning, can be 0L
+ * @return the about data of the instance, or 0 if it has
+ * not been set yet
+ */
+ const TDEAboutData *aboutData() const;
+
+ /**
+ * Returns the name of the instance
+ * @return the instance name, can be null if the TDEInstance has been
+ * created with a null name
+ */
+ TQCString instanceName() const;
+
+ /**
+ * Returns the KMimeSourceFactory of the instance.
+ * Mainly added for API completeness and future extensibility.
+ * @return the KMimeSourceFactory set as default for this application.
+ */
+ KMimeSourceFactory* mimeSourceFactory () const;
+
+protected:
+ /**
+ * Copy Constructor is not allowed
+ */
+ TDEInstance( const TDEInstance& );
+
+ /**
+ * Set name of default config file.
+ * @param name the name of the default config file
+ * @since 3.1
+ */
+ void setConfigName(const TQString &name);
+
+private:
+ mutable TDEStandardDirs *_dirs;
+
+ mutable TDEConfig *_config;
+ mutable TDEIconLoader *_iconLoader;
+
+#ifdef __TDE_HAVE_TDEHWLIB
+ mutable TDEHardwareDevices *_hardwaredevices;
+ mutable TDEGlobalNetworkManager *_networkmanager;
+#endif
+ mutable void *_placeholder;
+
+ TQCString _name;
+ const TDEAboutData *_aboutData;
+
+protected:
+ virtual void virtual_hook( int id, void* data );
+private:
+ TDEInstancePrivate *d;
+ bool m_configReadOnly;
+};
+
+#endif
+