Merge orphaned zone painter changes.

This commit is contained in:
sfb 2011-12-19 07:58:09 -06:00
commit bb6c9e9f06
4 changed files with 107 additions and 0 deletions

View file

@ -0,0 +1,40 @@
// Object Viewer Qt - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
// Copyright (C) 2010 Winch Gate Property Limited
// Copyright (C) 2011 Dzmitry Kamiahin <dnk-88@tut.by>
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program 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 Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "zone_painter_model.h"
// STL includes
// Qt includes
// NeL includes
namespace Plugin
{
CZonePainterModel::CZonePainterModel()
{
}
CZonePainterModel::~CZonePainterModel()
{
}
} /* namespace Plugin */

View file

@ -0,0 +1,42 @@
// Object Viewer Qt - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
// Copyright (C) 2010 Winch Gate Property Limited
// Copyright (C) 2011 Dzmitry Kamiahin <dnk-88@tut.by>
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program 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 Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
#ifndef ZONE_PAINTER_MODEL_H
#define ZONE_PAINTER_MODEL_H
// NeL includes
#include <nel/misc/types_nl.h>
#include <nel/misc/rgba.h>
#include <nel/misc/event_emitter.h>
// Qt includes
namespace Plugin
{
class CZonePainterModel
{
public:
CZonePainterModel();
virtual ~CZonePainterModel();
}; /* class CZonePainterModel */
} /* namespace Plugin */
#endif // ZONE_PAINTER_MODEL_H

View file

@ -16,6 +16,7 @@
#include <QtGui/QMenu> #include <QtGui/QMenu>
#include <QtGui/QAction> #include <QtGui/QAction>
#include <QtGui/QMenuBar> #include <QtGui/QMenuBar>
#include <QtGui/QFileDialog>
namespace Plugin namespace Plugin
{ {
@ -39,6 +40,7 @@ bool ZonePainterPlugin::initialize(ExtensionSystem::IPluginManager *pluginManage
addAutoReleasedObject(new CZonePainterSettingsPage(this)); addAutoReleasedObject(new CZonePainterSettingsPage(this));
addAutoReleasedObject(new CZonePainterContext(this)); addAutoReleasedObject(new CZonePainterContext(this));
//addAutoReleasedObject(new CCoreListener(this)); //addAutoReleasedObject(new CCoreListener(this));
return true; return true;
} }
@ -46,8 +48,26 @@ void ZonePainterPlugin::extensionsInitialized()
{ {
Core::ICore *core = Core::ICore::instance(); Core::ICore *core = Core::ICore::instance();
Core::MenuManager *menuManager = core->menuManager(); Core::MenuManager *menuManager = core->menuManager();
QAction *loadZoneAction = new QAction("Load Zone", this);
QAction *saveZoneAction = new QAction("Save Zone", this);
QMenu *toolsMenu = menuManager->menu(Core::Constants::M_TOOLS);
QMenu *zoneMenu = toolsMenu->addMenu("Zone Painter");
zoneMenu->addAction(loadZoneAction);
connect(loadZoneAction, SIGNAL(triggered()), this, SLOT(clickLoadZoneAction()));
zoneMenu->addAction(saveZoneAction);
} }
/****** SLOTS ******/
void ZonePainterPlugin::clickLoadZoneAction() {
QString zoneFile = QFileDialog::getOpenFileName(NULL, tr("Open Zone File"), ".", tr("Zone Files (*.zone);;"));
}
void ZonePainterPlugin::clickSaveZoneAction() {
}
/****** END SLOTS ******/
void ZonePainterPlugin::setNelContext(NLMISC::INelContext *nelContext) void ZonePainterPlugin::setNelContext(NLMISC::INelContext *nelContext)
{ {
#ifdef NL_OS_WINDOWS #ifdef NL_OS_WINDOWS

View file

@ -56,12 +56,17 @@ public:
void addAutoReleasedObject(QObject *obj); void addAutoReleasedObject(QObject *obj);
public Q_SLOTS:
void clickLoadZoneAction();
void clickSaveZoneAction();
protected: protected:
NLMISC::CLibraryContext *m_LibContext; NLMISC::CLibraryContext *m_LibContext;
private: private:
ExtensionSystem::IPluginManager *m_plugMan; ExtensionSystem::IPluginManager *m_plugMan;
QList<QObject *> m_autoReleaseObjects; QList<QObject *> m_autoReleaseObjects;
NL3D::CLandscapeModel *m_Landscape;
}; };
class CZonePainterContext: public Core::IContext class CZonePainterContext: public Core::IContext