Qucs-GUI
0.0.19
|
00001 /*************************************************************************** 00002 main.h 00003 -------- 00004 begin : Mon May 24 2004 00005 copyright : (C) 2003 by Michael Margraf 00006 email : michael.margraf@alumni.tu-berlin.de 00007 ***************************************************************************/ 00008 00009 /*************************************************************************** 00010 * * 00011 * This program is free software; you can redistribute it and/or modify * 00012 * it under the terms of the GNU General Public License as published by * 00013 * the Free Software Foundation; either version 2 of the License, or * 00014 * (at your option) any later version. * 00015 * * 00016 ***************************************************************************/ 00022 #ifndef QUCS_MAIN_H 00023 #define QUCS_MAIN_H 00024 00025 #include <QFont> 00026 #include <QColor> 00027 #include <QStringList> 00028 #include <QDir> 00029 00030 #include "wire.h" 00031 #include "node.h" 00032 #include "diagrams/diagram.h" 00033 00034 class QucsApp; 00035 class Component; 00036 00037 static const double pi = 3.1415926535897932384626433832795029; /* pi */ 00038 00039 struct tQucsSettings { 00040 int x, y, dx, dy; // position and size of main window 00041 QFont font; 00042 float largeFontSize; 00043 QColor BGColor; // background color of view area 00044 QString Language; 00045 00046 // syntax highlighting 00047 QColor Comment, String, Integer, Real, Character, Type, 00048 Attribute, Directive, Task; 00049 00050 unsigned int maxUndo; // size of undo stack 00051 QString Editor; 00052 QString Qucsator; 00053 QString Qucsconv; 00054 QString BinDir; 00055 QString LangDir; 00056 QString LibDir; 00057 QString OctaveDir; // m-files location 00058 QString ExamplesDir; 00059 QString DocDir; 00060 00061 unsigned int NodeWiring; 00062 QDir QucsWorkDir; 00063 QDir QucsHomeDir; 00064 QDir AdmsXmlBinDir; // dir of admsXml executable 00065 QDir AscoBinDir; // dir of asco executable 00066 QDir OctaveBinDir; // dir of octave executable 00067 00068 // registered filename extensions with program to open the file 00069 QStringList FileTypes; 00070 00071 // List of extensions used for spice files 00072 QStringList spiceExtensions; 00073 00074 unsigned int numRecentDocs; 00075 QStringList RecentDocs; 00076 00077 bool IgnoreFutureVersion; 00078 bool GraphAntiAliasing; 00079 bool TextAntiAliasing; 00080 }; 00081 00082 extern tQucsSettings QucsSettings; // extern because nearly everywhere used 00083 extern QucsApp *QucsMain; // the Qucs application itself 00084 extern QString lastDir; // to remember last directory for several dialogs 00085 extern QStringList qucsPathList; 00086 00087 bool loadSettings(); 00088 bool saveApplSettings(); 00089 void qucsMessageOutput(QtMsgType type, const char *msg); 00090 00091 #endif // ifndef QUCS_MAIN_H