![]() |
Home · All Namespaces · All Classes · Functions · Coding Style · Scripting · Plugins · File Structure |
00001 /* 00002 * Stellarium 00003 * Copyright (C) 2009 Fabien Chereau 00004 * 00005 * This program is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU General Public License 00007 * as published by the Free Software Foundation; either version 2 00008 * of the License, or (at your option) any later version. 00009 * 00010 * This program is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 * GNU General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU General Public License 00016 * along with this program; if not, write to the Free Software 00017 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00018 */ 00019 00020 #ifndef _STELGUIBASE_HPP_ 00021 #define _STELGUIBASE_HPP_ 00022 00023 #include "StelObject.hpp" 00024 #include "StelStyle.hpp" 00025 00026 #include <QtPlugin> 00027 00028 class QGraphicsWidget; 00029 class QAction; 00030 00033 class StelGuiBase 00034 { 00035 public: 00036 StelGuiBase(); 00037 virtual ~StelGuiBase() {;} 00038 00039 virtual void init(QGraphicsWidget* topLevelGraphicsWidget, class StelAppGraphicsWidget* stelAppGraphicsWidget); 00040 00042 virtual void updateI18n(); 00043 00045 virtual void setStelStyle(const StelStyle& style) =0; 00046 00048 virtual void setInfoTextFilters(const StelObject::InfoStringGroup& aflags) =0; 00049 virtual const StelObject::InfoStringGroup& getInfoTextFilters() const =0; 00050 00054 virtual class QProgressBar* addProgressBar() =0; 00055 00063 virtual QAction* addGuiActions(const QString& actionName, const QString& text, const QString& shortCut, const QString& helpGroup, bool checkable=true, bool autoRepeat=false); 00064 00068 virtual QAction* getGuiActions(const QString& actionName); 00069 00070 virtual void forceRefreshGui() {;} 00071 00074 virtual void setVisible(bool b) =0; 00076 virtual bool getVisible() const =0; 00079 virtual bool isCurrentlyUsed() const =0; 00080 00081 00082 protected: 00083 class StelAppGraphicsWidget* stelAppGraphicsWidget; 00084 }; 00085 00089 class StelGuiPluginInterface 00090 { 00091 public: 00092 virtual ~StelGuiPluginInterface() {} 00093 00095 virtual class StelGuiBase* getStelGuiBase() const = 0; 00096 }; 00097 Q_DECLARE_INTERFACE(StelGuiPluginInterface, "stellarium.StelGuiPluginInterface/1.0"); 00098 00099 00100 #endif // _STELGUIBASE_HPP_