Qucs-GUI  0.0.19
/home/travis/build/Qucs/qucs/qucs/qucs/paintings/ellipsearc.h
Go to the documentation of this file.
00001 /***************************************************************************
00002                                ellipsearc.h
00003                               --------------
00004     begin                : Thu Sep 9 2004
00005     copyright            : (C) 2004 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  ***************************************************************************/
00017 
00018 #ifndef ELLIPSEARC_H
00019 #define ELLIPSEARC_H
00020 
00021 #include "painting.h"
00022 
00023 #include <QPen>
00024 
00025 
00026 class EllipseArc : public Painting  {
00027 public:
00028   EllipseArc();
00029  ~EllipseArc();
00030 
00031   void paintScheme(Schematic*);
00032   void getCenter(int&, int&);
00033   void setCenter(int, int, bool relative=false);
00034 
00035   Painting* newOne();
00036   static Element* info(QString&, char* &, bool getNewOne=false);
00037   bool load(const QString&);
00038   QString save();
00039   QString saveCpp();
00040   QString saveJSON();
00041   void paint(ViewPainter*);
00042   void MouseMoving(Schematic*, int, int, int, int, Schematic*, int, int, bool);
00043   bool MousePressing();
00044   bool getSelected(float, float, float);
00045   bool resizeTouched(float, float, float);
00046   void MouseResizeMoving(int, int, Schematic*);
00047 
00048   void rotate();
00049   void mirrorX();
00050   void mirrorY();
00051   bool Dialog();
00052 
00053   QPen  Pen;
00054   int   Angle, ArcLen;   // start angle and arc length
00055 };
00056 
00057 #endif
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines