Scribus
Open source desktop publishing at your fingertips
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
osgeditor.h
1
/*
2
For general Scribus (>=1.3.2) copyright and licensing information please refer
3
to the COPYING file provided with the program. Following this notice may exist
4
a copyright and/or license notice that predates the release of Scribus 1.3.2
5
for which a new license (GPL+exception) is in place.
6
*/
7
/***************************************************************************
8
* Copyright (C) 2009 by Franz Schmid *
9
* franz.schmid@altmuehlnet.de *
10
* *
11
* This program is free software; you can redistribute it and/or modify *
12
* it under the terms of the GNU General Public License as published by *
13
* the Free Software Foundation; either version 2 of the License, or *
14
* (at your option) any later version. *
15
* *
16
* This program is distributed in the hope that it will be useful, *
17
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
18
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
19
* GNU General Public License for more details. *
20
* *
21
* You should have received a copy of the GNU General Public License *
22
* along with this program; if not, write to the *
23
* Free Software Foundation, Inc., *
24
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
25
***************************************************************************/
26
27
#ifndef OSGEDITOR_H
28
#define OSGEDITOR_H
29
30
#include <QDialog>
31
#include "ui_osgeditor.h"
32
#include "scribusapi.h"
33
#include "scribusdoc.h"
34
#include "scribus.h"
35
#include "pageitem_osgframe.h"
36
#include <osg/StateSet>
37
#include <osg/Group>
38
#include <osg/Drawable>
39
#include <osg/Geometry>
40
41
class
SCRIBUS_API
OSGEditorDialog
:
public
QDialog, Ui::OSGEditor
42
{
43
Q_OBJECT
44
45
public
:
46
OSGEditorDialog
(QWidget* parent,
PageItem_OSGFrame
*frame, QString osgFilterString);
47
~
OSGEditorDialog
() {};
48
49
public
slots:
50
void
clearDisplay();
51
void
setCameraValues();
52
void
changeView(QString viewName);
53
void
addView();
54
void
removeView();
55
void
renameView(QString newName);
56
void
changeRenderMode(
int
mode);
57
void
changeACcolor();
58
void
changeFCcolor();
59
void
changeTransparency(
double
value);
60
void
changeLightMode(
int
mode);
61
void
reportCamera();
62
void
openFile();
63
void
accept();
64
65
private
:
66
void
analyse(osg::Node *nd,
double
transparency);
67
void
analyseGeode(osg::Geode *geode,
double
transparency);
68
69
protected
:
70
PageItem_OSGFrame
*currItem;
71
QHash<QString, PageItem_OSGFrame::viewDefinition> viewMap;
72
PageItem_OSGFrame::viewDefinition
currentView;
73
QString currentViewName;
74
osg::ref_ptr<osg::Group> rootnode;
75
osg::ref_ptr<osg::Group> decorator;
76
osg::ref_ptr<osg::Node> loadedModel;
77
osg::ref_ptr<osg::Node> usedModel;
78
osg::ref_ptr<osg::Node> usedModel2;
79
osg::ref_ptr<osg::StateSet> default_stateset;
80
QString modelFile;
81
QString filterString;
82
};
83
84
#endif
PageItem_OSGFrame::viewDefinition
Definition:
pageitem_osgframe.h:93
OSGEditorDialog
Definition:
osgeditor.h:41
PageItem_OSGFrame
Definition:
pageitem_osgframe.h:38
scribus
ui
osgeditor.h
Generated on Tue Sep 29 2015 09:15:20 for Scribus by
1.8.9.1