GlobalOptions.cc 18.1 KB
Newer Older
Jan Möbius's avatar
 
Jan Möbius committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14
//=============================================================================
//
//                               OpenFlipper
//        Copyright (C) 2008 by Computer Graphics Group, RWTH Aachen
//                           www.openflipper.org
//
//-----------------------------------------------------------------------------
//
//                                License
//
//  OpenFlipper is free software: you can redistribute it and/or modify
//  it under the terms of the GNU Lesser General Public License as published by
//  the Free Software Foundation, either version 3 of the License, or
//  (at your option) any later version.
Jan Möbius's avatar
Jan Möbius committed
15
//
Jan Möbius's avatar
 
Jan Möbius committed
16 17 18 19
//  OpenFlipper 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 Lesser General Public License for more details.
Jan Möbius's avatar
Jan Möbius committed
20
//
Jan Möbius's avatar
 
Jan Möbius committed
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
//  You should have received a copy of the GNU Lesser General Public License
//  along with OpenFlipper.  If not, see <http://www.gnu.org/licenses/>.
//
//-----------------------------------------------------------------------------
//
//   $Revision$
//   $Author$
//   $Date$
//
//=============================================================================




//=============================================================================
//
//  Options used throughout the System
//
//=============================================================================

#include <QDir>

#include "GlobalOptions.hh"
#include <stdlib.h>
45
#include <iostream>
46
#include <ACG/Scenegraph/DrawModes.hh>
Jan Möbius's avatar
 
Jan Möbius committed
47 48 49 50


namespace OpenFlipper {
namespace Options {
Jan Möbius's avatar
Jan Möbius committed
51 52

/// Stores the base Path of the application
Jan Möbius's avatar
 
Jan Möbius committed
53 54
static QDir applicationDir_;

Jan Möbius's avatar
Jan Möbius committed
55
/// Stores the base Path of the application
Jan Möbius's avatar
 
Jan Möbius committed
56 57 58 59 60 61 62 63 64 65 66 67 68 69
static QDir configDir_;

/// Stores the Path to the Standard Plugins
static QDir pluginDir_;

/// Stores the Path to the shaders
static QDir shaderDir_;

/// Stores the Path to the Textures
static QDir textureDir_;

/// Stores the Path to the Icons
static QDir iconDir_;

70 71 72
/// Stores the OpenFlipper Icon
static QIcon* OpenFlipperIcon_ = 0;

Jan Möbius's avatar
Jan Möbius committed
73 74 75
/// Stores the Path to the Fonts
static QDir fontsDir_;

76 77 78
/// Stores the Path to the Help
static QDir helpDir_;

Jan Möbius's avatar
 
Jan Möbius committed
79 80 81 82 83 84
/// Stores all available option files in the Order in which they should be used
static QStringList optionFiles_;

/// Currentdirectory of the application
static QDir currentDir_;

Dirk Wilden's avatar
Dirk Wilden committed
85 86 87
/// Current script directory of the application
static QDir currentScriptDir_;

88 89 90
/// Current texture directory of the application
static QDir currentTextureDir_;

Jan Möbius's avatar
 
Jan Möbius committed
91 92 93 94 95 96
/// Experience level of the user
static Experience experienceLevel_ = NOVICE;

/// Show gui or not?
static bool nogui_ = false;

Jan Möbius's avatar
Dennis:  
Jan Möbius committed
97
/// Store the stereo support
Jan Möbius's avatar
Jan Möbius committed
98
static bool stereo_ = true;
Jan Möbius's avatar
 
Jan Möbius committed
99

Jan Möbius's avatar
Dennis:  
Jan Möbius committed
100 101 102 103
/// Store the opengl stereo support
static bool glStereo_ = true;

/// Stereo mode
Jan Möbius's avatar
Dennis:  
Jan Möbius committed
104 105 106 107 108 109 110
static StereoMode stereoMode_ = OpenGL;

/// get stereo eye distance (default = 7cm)
static float eyeDistance_ = 0.07;

/// stereo focal distance relative to scene near plane (default = to center of scene)
static float focalDistance_ = 0.5;
Jan Möbius's avatar
Dennis:  
Jan Möbius committed
111 112 113 114 115

/// vectroy containing left/right color matrices for custom anaglyph mode
std::vector<float> anaglyphLeftEyeColors_ = std::vector<float> (9, 0.0);
std::vector<float> anaglyphRightEyeColors_ = std::vector<float> (9, 0.0);

Dirk Wilden's avatar
 
Dirk Wilden committed
116 117 118
/// Store the synchronization mode
static bool synchronization_ = false;

Dirk Wilden's avatar
Dirk Wilden committed
119 120 121 122 123 124
/// Store the wheelZoomFactor mode
static double wheelZoomFactor_ = 1.0;

/// Store the wheelZoomFactorShift mode
static double wheelZoomFactorShift_ = 0.2;

125 126 127 128 129 130
/// Store the restrictFrameRate_ mode
static bool restrictFrameRate_ = false;

/// Store the maxFrameRate_ mode
static int maxFrameRate_ = 35;

131 132 133
/// Store the standardDrawMode_ mode
static uint standardDrawMode_ = ACG::SceneGraph::DrawModes::SOLID_SMOOTH_SHADED;

Dirk Wilden's avatar
Dirk Wilden committed
134
/// Store the disableRedraw_ mode
135
static int redrawDisabled_ = 0;
Dirk Wilden's avatar
Dirk Wilden committed
136

137 138 139
/// Set if a drawMode Menu should always be in the context menu
static bool drawModesInContextMenu_ = true;

Jan Möbius's avatar
 
Jan Möbius committed
140 141 142 143
/// Store the toolbox gui Mode mode
static bool hideToolbox_ = false;

/// Store the logger gui Mode mode
144
static LoggerState loggerState_ = Normal;
Jan Möbius's avatar
 
Jan Möbius committed
145

146
/// Store if we should go into multiview Mode
Jan Möbius's avatar
Jan Möbius committed
147
static bool multiView_ = true;
148

Jan Möbius's avatar
 
Jan Möbius committed
149 150 151 152 153 154 155 156 157 158
/// Start in Fullscreen Mode?
static bool fullScreen_ = false;

static QString defaultToolboxMode_ = "";

static QString title_ = "OpenFlipper v?";

/// Show a splash screen on init?
static bool splash_ = true;

159
/// default background color for the viewer
Jan Möbius's avatar
Jan Möbius committed
160
static QColor defaultBackgroundColor_ = QColor("black");
161

162
/// default base color
Jan Möbius's avatar
Jan Möbius committed
163
static QColor defaultBaseColor_ = QColor("white");
164 165 166 167

/// use random base color
static bool randomBaseColor_ = false;

Jan Möbius's avatar
 
Jan Möbius committed
168 169 170 171 172 173 174 175 176
/// Scripting status
static bool scripting_ = false;

/// Log to logger and console
static bool logToConsole_ = false;

/// Extra debug info
static bool debug_ = false;

Jan Möbius's avatar
Jan Möbius committed
177 178 179
/// Slot Debugging
static bool doSlotDebugging_ = false;

180 181 182 183 184 185 186 187 188
/// URL for updates
static QString updateURL_ = "";

/// Username for updates
static QString updateUsername_ = "";

/// Password for updates
static QString updatePassword_ = "";

Dirk Wilden's avatar
Dirk Wilden committed
189 190 191 192 193 194
/// enable logging to file
static bool logFileEnabled_;

/// logfile location (path + filename)
static QString logFile_;

Jan Möbius's avatar
 
Jan Möbius committed
195 196 197 198 199 200
/// last used DataType
static QString lastDataType_ = "Triangle Mesh";

/// Should backups be enabled
static bool enableBackup_ = true;

201 202 203
/// Currently loading Settings?
static bool loadingSettings_ = false;

Dirk Wilden's avatar
Dirk Wilden committed
204 205 206
/// Currently loading recent file?
static bool loadingRecentFile_ = false;

207 208
/// Currently saving Settings?
static bool savingSettings_ = false;
Jan Möbius's avatar
 
Jan Möbius committed
209

210 211 212 213 214 215
/// Enable picking renderer?
static bool renderPicking_ = false;

/// picking Renderer Mode
static QString pickingRenderMode_ = "PICK_ANYTHING";

Jan Möbius's avatar
Jan Möbius committed
216
static int* argc_;
217

Jan Möbius's avatar
Jan Möbius committed
218
static char *** argv_;
219

Dirk Wilden's avatar
Dirk Wilden committed
220 221
static bool remoteControl_ = false;

Jan Möbius's avatar
 
Jan Möbius committed
222 223 224 225
# if __WORDSIZE == 64
  const bool is64 = true;
#else
  const bool is64 = false;
Jan Möbius's avatar
Jan Möbius committed
226 227
#endif

228
#if defined(WIN32)
Jan Möbius's avatar
 
Jan Möbius committed
229 230
  const bool linux_ = false;
  const bool windows_ = true;
231 232 233 234 235
  const bool darwin_ = false;
#elif defined(ARCH_DARWIN)
  const bool darwin_ = true;
  const bool linux_ = false;
  const bool windows_ = false;
Jan Möbius's avatar
 
Jan Möbius committed
236
#else
237
  const bool darwin_ = false;
Jan Möbius's avatar
 
Jan Möbius committed
238 239 240 241 242 243 244 245
  const bool linux_ = true;
  const bool windows_ = false;
#endif

bool is64bit() { return is64; };
bool is32bit() { return !is64; };

bool isLinux() {
Jan Möbius's avatar
Jan Möbius committed
246
  return linux_;
Jan Möbius's avatar
 
Jan Möbius committed
247
}
Jan Möbius's avatar
Jan Möbius committed
248

Jan Möbius's avatar
 
Jan Möbius committed
249 250 251 252
bool isWindows() {
  return windows_;
}

253 254 255 256
bool isDarwin() {
 return darwin_;
}

Jan Möbius's avatar
 
Jan Möbius committed
257 258

QString lang() {
Jan Möbius's avatar
Jan Möbius committed
259
  QString lang = getenv( "LANG" ) ;
Jan Möbius's avatar
 
Jan Möbius committed
260 261 262 263 264 265 266 267 268
  return lang;
}


QString dirSeparator() {
//   if (windows_)
//     return QString("\\");
//   if (linux_)
//     return QString("/");
Jan Möbius's avatar
Jan Möbius committed
269

Jan Möbius's avatar
 
Jan Möbius committed
270 271
  return QString("/");
}
Jan Möbius's avatar
Jan Möbius committed
272

273 274 275 276 277 278
QDir applicationDir()   { return applicationDir_; }
QDir configDir()        { return configDir_;  }
QDir pluginDir()        { return pluginDir_;  }
QDir shaderDir()        { return shaderDir_;  }
QDir textureDir()       { return textureDir_; }
QDir iconDir()          { return iconDir_;    }
279 280
QDir fontsDir()         { return fontsDir_;   }
QDir helpDir()         	{ return helpDir_;    }
281 282 283 284 285 286 287 288 289 290 291
QDir currentDir()       { return currentDir_; }
QDir currentScriptDir() { return currentScriptDir_; }
QDir currentTextureDir(){ return currentTextureDir_; }

QString applicationDirStr()    { return applicationDir_.absolutePath();    }
QString configDirStr()         { return configDir_.absolutePath();         }
QString pluginDirStr()         { return pluginDir_.absolutePath();         }
QString shaderDirStr()         { return shaderDir_.absolutePath();         }
QString textureDirStr()        { return textureDir_.absolutePath();        }
QString iconDirStr()           { return iconDir_.absolutePath();           }
QString fontsDirStr()          { return fontsDir_.absolutePath();          }
292
QString helpDirStr()           { return helpDir_.absolutePath();          }
293 294 295
QString currentDirStr()        { return currentDir_.absolutePath();        }
QString currentScriptDirStr()  { return currentScriptDir_.absolutePath();  }
QString currentTextureDirStr() { return currentTextureDir_.absolutePath(); }
Jan Möbius's avatar
 
Jan Möbius committed
296 297 298

QStringList optionFiles()   { return optionFiles_; }

299 300 301 302 303
void applicationDir(QDir _dir)       { applicationDir_    = _dir; }
void pluginDir(QDir _dir)            { pluginDir_         = _dir; }
void shaderDir(QDir _dir)            { shaderDir_         = _dir; }
void textureDir(QDir _dir)           { textureDir_        = _dir; }
void iconDir(QDir _dir)              { iconDir_           = _dir; }
Jan Möbius's avatar
Jan Möbius committed
304
void fontsDir(QDir _dir)             { fontsDir_          = _dir;}
305
void helpDir(QDir _dir)              { helpDir_          = _dir;}
306 307 308 309
void configDir(QDir _dir)            { configDir_         = _dir; }
void currentDir(QDir _dir)           { currentDir_        = _dir; }
void currentScriptDir(QDir _dir)     { currentScriptDir_  = _dir; }
void currentTextureDir(QDir _dir)    { currentTextureDir_ = _dir; }
Jan Möbius's avatar
 
Jan Möbius committed
310 311 312

void optionFiles(QStringList _list) { optionFiles_ = _list; }

Jan Möbius's avatar
Jan Möbius committed
313
bool applicationDir(QString _dir) {
Jan Möbius's avatar
 
Jan Möbius committed
314 315
  QDir tmp(_dir);
  if (tmp.exists()) {
Jan Möbius's avatar
Jan Möbius committed
316
    applicationDir_ = tmp;
Jan Möbius's avatar
 
Jan Möbius committed
317 318 319 320 321
    return true;
  }
  return false;
}

Jan Möbius's avatar
Jan Möbius committed
322
bool pluginDir(QString      _dir) {
Jan Möbius's avatar
 
Jan Möbius committed
323 324
  QDir tmp(_dir);
  if (tmp.exists()) {
Jan Möbius's avatar
Jan Möbius committed
325
    pluginDir_      = tmp;
Jan Möbius's avatar
 
Jan Möbius committed
326 327 328 329 330 331 332 333
    return true;
  }
  return false;
}

bool shaderDir(QString _dir) {
  QDir tmp(_dir);
  if (tmp.exists()) {
Jan Möbius's avatar
Jan Möbius committed
334
    shaderDir_ = tmp;
Jan Möbius's avatar
 
Jan Möbius committed
335 336 337 338 339
    return true;
  }
  return false;
}

Jan Möbius's avatar
Jan Möbius committed
340
bool textureDir(QString     _dir) {
Jan Möbius's avatar
 
Jan Möbius committed
341 342
  QDir tmp(_dir);
  if (tmp.exists()) {
Jan Möbius's avatar
Jan Möbius committed
343
    textureDir_     = tmp;
Jan Möbius's avatar
 
Jan Möbius committed
344 345 346 347 348
    return true;
  }
  return false;
}

Jan Möbius's avatar
Jan Möbius committed
349
bool iconDir(QString      _dir) {
Jan Möbius's avatar
 
Jan Möbius committed
350 351
  QDir tmp(_dir);
  if (tmp.exists()) {
Jan Möbius's avatar
Jan Möbius committed
352 353 354 355 356 357
    iconDir_ = tmp;
    return true;
  }
  return false;
}

358 359 360 361 362 363 364 365 366 367 368 369
QIcon& OpenFlipperIcon() {

  if (OpenFlipperIcon_ == 0){
    OpenFlipperIcon_ = new QIcon( iconDirStr() + dirSeparator() + "OpenFlipper_Icon_128x128x32.png");
    OpenFlipperIcon_->addFile( iconDirStr() + dirSeparator() + "OpenFlipper_Icon_48x48x32.png", QSize(48,48) );
    OpenFlipperIcon_->addFile( iconDirStr() + dirSeparator() + "OpenFlipper_Icon_32x32x32.png", QSize(32,32) );
    OpenFlipperIcon_->addFile( iconDirStr() + dirSeparator() + "OpenFlipper_Icon_16x16x32.png", QSize(16,16) );
  }

  return *OpenFlipperIcon_;
}

Jan Möbius's avatar
Jan Möbius committed
370 371 372 373
bool fontsDir(QString      _dir) {
  QDir tmp(_dir);
  if (tmp.exists()) {
    fontsDir_      = tmp;
Jan Möbius's avatar
 
Jan Möbius committed
374 375 376 377 378
    return true;
  }
  return false;
}

379 380 381 382 383 384 385 386 387
bool helpDir(QString      _dir) {
  QDir tmp(_dir);
  if (tmp.exists()) {
    helpDir_      = tmp;
    return true;
  }
  return false;
}

Jan Möbius's avatar
Jan Möbius committed
388
bool configDir(QString      _dir) {
Jan Möbius's avatar
 
Jan Möbius committed
389 390
  QDir tmp(_dir);
  if (tmp.exists()) {
Jan Möbius's avatar
Jan Möbius committed
391
    configDir_      = tmp;
Jan Möbius's avatar
 
Jan Möbius committed
392 393 394 395 396
    return true;
  }
  return false;
}

Jan Möbius's avatar
Jan Möbius committed
397
bool currentDir(QString      _dir) {
Jan Möbius's avatar
 
Jan Möbius committed
398 399
  QDir tmp(_dir);
  if (tmp.exists()) {
Jan Möbius's avatar
Jan Möbius committed
400
    currentDir_     = tmp;
Jan Möbius's avatar
 
Jan Möbius committed
401 402 403 404 405
    return true;
  }
  return false;
}

Dirk Wilden's avatar
Dirk Wilden committed
406 407 408 409 410 411 412 413 414
bool currentScriptDir(QString _dir) {
  QDir tmp(_dir);
  if (tmp.exists()) {
    currentScriptDir_     = tmp;
    return true;
  }
  return false;
}

415 416 417 418 419 420 421 422 423
bool currentTextureDir(QString _dir) {
  QDir tmp(_dir);
  if (tmp.exists()) {
    currentTextureDir_ = tmp;
    return true;
  }
  return false;
}

Jan Möbius's avatar
 
Jan Möbius committed
424 425
/// Get experience level
Experience getExperience() {
Jan Möbius's avatar
Jan Möbius committed
426
  return experienceLevel_;
Jan Möbius's avatar
 
Jan Möbius committed
427 428 429 430
}

/// Set experience level
void setExperience( Experience _exp) {
Jan Möbius's avatar
Jan Möbius committed
431
  experienceLevel_ = _exp;
Jan Möbius's avatar
 
Jan Möbius committed
432 433 434 435
}

/// Store if a gui should be visible or not
void nogui( bool _nogui ) {
Jan Möbius's avatar
Jan Möbius committed
436
  nogui_ = _nogui;
Jan Möbius's avatar
 
Jan Möbius committed
437
}
Jan Möbius's avatar
Jan Möbius committed
438 439

/// get if a gui should be visible or not
Jan Möbius's avatar
 
Jan Möbius committed
440
bool nogui( ) {
Jan Möbius's avatar
Jan Möbius committed
441
  return nogui_;
Jan Möbius's avatar
 
Jan Möbius committed
442 443
}

Jan Möbius's avatar
Jan Möbius committed
444
/// get if a gui should be visible or not
Jan Möbius's avatar
 
Jan Möbius committed
445
bool gui( ) {
Jan Möbius's avatar
Jan Möbius committed
446
  return !nogui_;
Jan Möbius's avatar
 
Jan Möbius committed
447 448
}

Jan Möbius's avatar
Dennis:  
Jan Möbius committed
449
/// Store stereo setting
Jan Möbius's avatar
 
Jan Möbius committed
450
void stereo( bool _stereo ) {
Jan Möbius's avatar
Jan Möbius committed
451
  stereo_ = _stereo;
Jan Möbius's avatar
 
Jan Möbius committed
452
}
Jan Möbius's avatar
Jan Möbius committed
453

Jan Möbius's avatar
 
Jan Möbius committed
454 455
/// get current stereo setting
bool stereo( ) {
Jan Möbius's avatar
Jan Möbius committed
456
  return stereo_;
Jan Möbius's avatar
 
Jan Möbius committed
457 458
}

Jan Möbius's avatar
Dennis:  
Jan Möbius committed
459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478
/// Store opengl stereo mode setting
void glStereo( bool _glStereo ) {
  glStereo_ = _glStereo;
}

/// get current opengl stereo setting
bool glStereo( ) {
  return glStereo_;
}

/// Store stereo mode setting
void stereoMode( StereoMode _mode ) {
  stereoMode_ = _mode;
}

/// get current stereo mode setting
StereoMode stereoMode( ) {
  return stereoMode_;
}

Jan Möbius's avatar
Dennis:  
Jan Möbius committed
479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502
/// Store stereo eye distance
void eyeDistance( float _eye )
{
  eyeDistance_ = _eye;
}

/// get stereo eye distance
float eyeDistance( )
{
  return eyeDistance_;
}

/// Store stereo focal distance relative to scene near plane
void focalDistance( float _focal )
{
  focalDistance_ = _focal;
}

/// get stereo focal distance relative to scene near plane
float focalDistance( )
{
  return focalDistance_;
}

Jan Möbius's avatar
Dennis:  
Jan Möbius committed
503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529
/// Store the 3x3 left eye color matrix values for custom anaglyph stereo mode
void anaglyphLeftEyeColorMatrix( std::vector<float> _mat )
{
  for (int i = 0; i < 9; i++)
    anaglyphLeftEyeColors_[i] = _mat[i];
}

/// get the 3x3 left eye color matrix values for custom anaglyph stereo mode
std::vector<float> anaglyphLeftEyeColorMatrix( )
{
  return anaglyphLeftEyeColors_;
}

/// Store the 3x3 right eye color matrix values for custom anaglyph stereo mode
void anaglyphRightEyeColorMatrix( std::vector<float> _mat )
{
  for (int i = 0; i < 9; i++)
    anaglyphRightEyeColors_[i] = _mat[i];
}

/// get the 3x3 right eye color matrix values for custom anaglyph stereo mode
std::vector<float> anaglyphRightEyeColorMatrix( )
{
  return anaglyphRightEyeColors_;
}


Dirk Wilden's avatar
 
Dirk Wilden committed
530 531 532 533 534 535 536 537 538 539
/// Store synchronization mode setting
void synchronization( bool _synchronization ) {
  synchronization_ = _synchronization;
}

/// get current synchronization setting
bool synchronization( ) {
  return synchronization_;
}

Dirk Wilden's avatar
Dirk Wilden committed
540 541
/// Store wheelZoomFactor setting
void wheelZoomFactor( double _factor ) {
Jan Möbius's avatar
Jan Möbius committed
542
  wheelZoomFactor_ = _factor;
Dirk Wilden's avatar
Dirk Wilden committed
543
}
Jan Möbius's avatar
Jan Möbius committed
544

Dirk Wilden's avatar
Dirk Wilden committed
545 546
/// get wheelZoomFactor setting
double wheelZoomFactor( ) {
Jan Möbius's avatar
Jan Möbius committed
547
  return wheelZoomFactor_;
Dirk Wilden's avatar
Dirk Wilden committed
548 549 550 551
}

/// Store wheelZoomFactorShift setting
void wheelZoomFactorShift( double _factor ) {
Jan Möbius's avatar
Jan Möbius committed
552
  wheelZoomFactorShift_ = _factor;
Dirk Wilden's avatar
Dirk Wilden committed
553
}
Jan Möbius's avatar
Jan Möbius committed
554

Dirk Wilden's avatar
Dirk Wilden committed
555 556
/// get wheelZoomFactorShift setting
double wheelZoomFactorShift( ) {
Jan Möbius's avatar
Jan Möbius committed
557
  return wheelZoomFactorShift_;
Dirk Wilden's avatar
Dirk Wilden committed
558 559
}

560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575
void restrictFrameRate( bool _enable ){
  restrictFrameRate_ = _enable;
}

bool restrictFrameRate( ){
  return restrictFrameRate_;
}

void maxFrameRate( int _fps ){
  maxFrameRate_ = _fps;
}

int maxFrameRate(){
  return maxFrameRate_;
}

576 577 578 579 580 581 582 583
void standardDrawMode( uint _mode ){
  standardDrawMode_ = _mode;
}

uint standardDrawMode(){
  return standardDrawMode_;
}

Dirk Wilden's avatar
Dirk Wilden committed
584
void redrawDisabled( bool disable ){
585 586 587 588 589 590 591
  if ( disable )
    redrawDisabled_++;
  else
    if ( redrawDisabled_ == 0 )
      std::cerr << "Mismatch of redraw enable/disable!!" << std::endl;
    else
      redrawDisabled_--;
Dirk Wilden's avatar
Dirk Wilden committed
592 593 594
}

bool redrawDisabled( ){
595
  return (redrawDisabled_ > 0);
Dirk Wilden's avatar
Dirk Wilden committed
596 597
}

598 599 600 601 602 603 604 605
bool drawModesInContextMenu() {
  return drawModesInContextMenu_;
}

void drawModesInContextMenu(bool _show) {
  drawModesInContextMenu_ = _show;
}

606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622

void multiView( bool _multiView) {
  multiView_ = _multiView;
}

bool multiView() {
  return multiView_;
}

unsigned int examinerWidgets() {
  if ( multiView_)
    return 4;
  else
    return 1;
}


Jan Möbius's avatar
Jan Möbius committed
623 624 625
/// Set to current
void loggerState( LoggerState _state) {
  loggerState_ = _state;
Jan Möbius's avatar
 
Jan Möbius committed
626 627
}

Jan Möbius's avatar
Jan Möbius committed
628 629 630
/// Current state of the logging window?
LoggerState loggerState( ) {
  return loggerState_;
Jan Möbius's avatar
 
Jan Möbius committed
631 632 633 634 635 636 637 638 639 640 641 642 643 644
}

/// Set if we start the toolbox widget closed
void hideToolbox( bool _hide) {
  hideToolbox_ = _hide;
}

/// Start the toolbox widget closed?
bool hideToolbox( ) {
  return hideToolbox_;
}

/// Start fullscreen Mode?
void fullScreen( bool _fs ) {
Jan Möbius's avatar
Jan Möbius committed
645
  fullScreen_ = _fs;
Jan Möbius's avatar
 
Jan Möbius committed
646 647 648 649
}

/// Start fullscreen Mode?
bool fullScreen( ) {
Jan Möbius's avatar
Jan Möbius committed
650
  return fullScreen_;
Jan Möbius's avatar
 
Jan Möbius committed
651 652 653 654
}

/// Which mode should be the default for the toolbar?
QString defaultToolboxMode( ) {
Jan Möbius's avatar
Jan Möbius committed
655
  return defaultToolboxMode_;
Jan Möbius's avatar
 
Jan Möbius committed
656
}
Jan Möbius's avatar
Jan Möbius committed
657

Jan Möbius's avatar
 
Jan Möbius committed
658 659 660 661 662 663 664
/// Which mode should be the default for the toolbar?
void defaultToolboxMode( QString _mode ) {
  defaultToolboxMode_ = _mode;
}


QString windowTitle( ) {
Jan Möbius's avatar
Jan Möbius committed
665
  return title_;
Jan Möbius's avatar
 
Jan Möbius committed
666 667 668
}

void windowTitle( QString _titel ) {
Jan Möbius's avatar
Jan Möbius committed
669
  title_ = _titel;
Jan Möbius's avatar
 
Jan Möbius committed
670 671 672
}

void splash( bool _splash ) {
Jan Möbius's avatar
Jan Möbius committed
673
  splash_ = _splash;
Jan Möbius's avatar
 
Jan Möbius committed
674
}
Jan Möbius's avatar
Jan Möbius committed
675

Jan Möbius's avatar
 
Jan Möbius committed
676
bool splash( ) {
Jan Möbius's avatar
Jan Möbius committed
677
  return splash_;
Jan Möbius's avatar
 
Jan Möbius committed
678 679
}

680
void defaultBackgroundColor( QColor _color ) {
681 682 683
  defaultBackgroundColor_ = _color;
}

684
QColor defaultBackgroundColor() {
685 686
  return defaultBackgroundColor_;
}
Jan Möbius's avatar
 
Jan Möbius committed
687

688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703
void defaultBaseColor( QColor _color ) {
  defaultBaseColor_ = _color;
}

QColor defaultBaseColor() {
  return defaultBaseColor_;
}

void randomBaseColor(bool _random) {
  randomBaseColor_ = _random;
}

bool randomBaseColor() {
  return randomBaseColor_;
}

Jan Möbius's avatar
 
Jan Möbius committed
704 705 706 707
/// return last used dataType
QString lastDataType(){
  return lastDataType_;
}
Jan Möbius's avatar
Jan Möbius committed
708

Jan Möbius's avatar
 
Jan Möbius committed
709 710 711 712 713 714
/// set the last used dataType
void lastDataType(QString _type){
   lastDataType_ = _type;
}

bool scripting( ) {
Jan Möbius's avatar
Jan Möbius committed
715
  return scripting_;
Jan Möbius's avatar
 
Jan Möbius committed
716
}
Jan Möbius's avatar
Jan Möbius committed
717

Jan Möbius's avatar
 
Jan Möbius committed
718
void scripting(bool _status ) {
Jan Möbius's avatar
Jan Möbius committed
719
  scripting_ = _status;
Jan Möbius's avatar
 
Jan Möbius committed
720 721 722
}

bool logToConsole( ) {
Jan Möbius's avatar
Jan Möbius committed
723
  return logToConsole_;
Jan Möbius's avatar
 
Jan Möbius committed
724
}
Jan Möbius's avatar
Jan Möbius committed
725

Jan Möbius's avatar
 
Jan Möbius committed
726
void logToConsole(bool _logToConsole ) {
Jan Möbius's avatar
Jan Möbius committed
727
  logToConsole_ = _logToConsole;
Jan Möbius's avatar
 
Jan Möbius committed
728 729 730
}

bool debug() {
Jan Möbius's avatar
Jan Möbius committed
731
  return debug_;
Jan Möbius's avatar
 
Jan Möbius committed
732 733 734
}

void debug(bool _debug ) {
Jan Möbius's avatar
Jan Möbius committed
735
  debug_ = _debug;
Jan Möbius's avatar
 
Jan Möbius committed
736 737
}

Dirk Wilden's avatar
Dirk Wilden committed
738 739 740 741 742 743 744 745 746 747 748
void logFileEnabled(bool _enable ){
  logFileEnabled_ = _enable;
}

bool logFileEnabled(){
  return logFileEnabled_;
}

void logFile(QString _filename){
  logFile_ = _filename;
}
Jan Möbius's avatar
 
Jan Möbius committed
749

Dirk Wilden's avatar
Dirk Wilden committed
750 751 752
QString logFile(){
  return logFile_;
}
Jan Möbius's avatar
 
Jan Möbius committed
753 754

bool backupEnabled( ) {
Jan Möbius's avatar
Jan Möbius committed
755
  return enableBackup_;
Jan Möbius's avatar
 
Jan Möbius committed
756 757 758 759 760 761
}

void enableBackup(bool _enableBackup ) {
  enableBackup_ = _enableBackup;
}

762 763 764 765 766 767 768 769 770 771
bool loadingSettings( ) {
  return loadingSettings_;
}

void loadingSettings(bool _loadingSettings ) {
  loadingSettings_ = _loadingSettings;
}

bool savingSettings( ) {
  return savingSettings_;
Jan Möbius's avatar
 
Jan Möbius committed
772
}
Jan Möbius's avatar
Jan Möbius committed
773

774 775
void savingSettings(bool _savingSettings ) {
  savingSettings_ = _savingSettings;
Jan Möbius's avatar
 
Jan Möbius committed
776 777
}

Dirk Wilden's avatar
Dirk Wilden committed
778 779 780 781 782 783 784 785
bool loadingRecentFile( ) {
  return loadingRecentFile_;
}

void loadingRecentFile(bool _loadingRecentFile ) {
  loadingRecentFile_ = _loadingRecentFile;
}

Jan Möbius's avatar
Jan Möbius committed
786
int* argc() {
787 788 789
  return argc_;
}

Jan Möbius's avatar
Jan Möbius committed
790
char *** argv() {
791 792 793
  return argv_;
}

Jan Möbius's avatar
Jan Möbius committed
794
void  argc( int* _argc ) {
795 796 797
  argc_ = _argc;
}

Jan Möbius's avatar
Jan Möbius committed
798
void argv( char*** _argv) {
799 800 801
  argv_ = _argv;
}

Dirk Wilden's avatar
Dirk Wilden committed
802 803 804 805 806 807 808 809
bool remoteControl(){
  return remoteControl_;
}

void remoteControl(bool _remote){
  remoteControl_ = _remote;
}

Jan Möbius's avatar
Jan Möbius committed
810 811 812 813 814 815 816 817
void doSlotDebugging( bool _debugging ) {
  doSlotDebugging_ = _debugging;
}

bool doSlotDebugging( ) {
  return doSlotDebugging_;
}

818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842
void updateUrl( QString _url ) {
  updateURL_ = _url;
}

QString updateUrl( ) {
  return updateURL_;
}

void updateUsername( QString _username ) {
  updateUsername_ = _username;
}

QString updateUsername( ) {
  return updateUsername_;
}

void updatePassword( QString _password ) {
  updatePassword_ = _password;
}

QString updatePassword( ) {
  return updatePassword_;
}

QString coreVersion() {
Jan Möbius's avatar
Jan Möbius committed
843
  return QString("1.0 RC2");
844 845
}

846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861
void pickingRenderMode( QString _target ) {
  pickingRenderMode_ = _target;
}

QString pickingRenderMode( ) {
  return pickingRenderMode_;
}

void renderPicking(bool _enable) {
  renderPicking_ = _enable;
}

bool renderPicking( ) {
  return renderPicking_;
}

Jan Möbius's avatar
 
Jan Möbius committed
862 863 864 865 866 867

}
}

//=============================================================================