Unicorn - Coriolis GUI


UnicornGui.h
1// -*- C++ -*-
2//
3// This file is part of the Coriolis Software.
4// Copyright (c) UPMC 2008-2018, All Rights Reserved
5//
6// +-----------------------------------------------------------------+
7// | C O R I O L I S |
8// | U n i c o r n - M a i n G U I |
9// | |
10// | Author : Jean-Paul CHAPUT |
11// | E-mail : Jean-Paul.Chaput@asim.lip6.fr |
12// | =============================================================== |
13// | C++ Header : "./unicorn/UnicornGui.h" |
14// +-----------------------------------------------------------------+
15
16
17
18
19#ifndef UNICORN_UNICORN_H
20#define UNICORN_UNICORN_H
21
22#include <set>
23#include <iostream>
24#include <functional>
25#include <boost/any.hpp>
26#include "hurricane/viewer/CellViewer.h"
27#include "crlcore/Banner.h"
28namespace CRL {
29 class GraphicTool;
30 class LibraryManager;
31}
32
33#include "unicorn/ImportCell.h"
34
35
36namespace Unicorn {
37
38
39 using std::set;
41 using Hurricane::Cell;
42 using CRL::Banner;
43 using CRL::GraphicTool;
44 using CRL::LibraryManager;
45
46 class ImportCellDialog;
47 class ExportCellDialog;
48
49
50 class UnicornGui : public CellViewer {
51 Q_OBJECT;
52 public:
53 static UnicornGui* create ( QWidget* parent=NULL );
54 void destroy ();
55 void readQtSettings ();
56 static inline Banner& getBanner ();
57 virtual Cell* getCellFromDb ( const char* name );
58 inline ImportCell* getImportCell ();
60 virtual UnicornGui* vcreate () const;
61 virtual std::string _getString () const;
62 public slots:
63 void saveQtSettings ();
64 void openCell ();
65 void saveCell ();
66 void importCell ();
67 void exportCell ();
68 protected:
69 UnicornGui ( QWidget* parent );
70 virtual ~UnicornGui ();
71 virtual void _postCreate ();
72 virtual void _preDestroy ();
73 void _runUnicornInit ();
74 protected:
75 static Banner _banner;
76 set<GraphicTool*> _tools;
77 ImportCell _importCell;
78 ImportCellDialog* _importDialog;
79 ExportCellDialog* _exportDialog;
80 LibraryManager* _libraryManager;
81 };
82
83
84 inline Banner& UnicornGui::getBanner () { return _banner; }
85 inline ImportCell* UnicornGui::getImportCell () { return &_importCell; }
86
87
88} // End of Unicorn namespace.
89
90
91GETSTRING_POINTER_SUPPORT(Unicorn::UnicornGui)
92IOSTREAM_POINTER_SUPPORT(Unicorn::UnicornGui)
93
94
95#endif // __UNICORN_UNICORN__
96
CellViewer(QWidget *parent=NULL)
The Full Fledged GUI of Coriolis.
Definition UnicornGui.h:50
static UnicornGui * create(QWidget *parent=NULL)
static Banner & getBanner()
Definition UnicornGui.h:84
void registerTool(GraphicTool *)
virtual Cell * getCellFromDb(const char *name)
Namespace of Unicorn.
Definition UnicornGui.h:36


Generated by doxygen 1.13.2 on Fri Sep 27 2024 Return to top of page
Unicorn - Coriolis GUI Copyright © 2008-2020 Sorbonne Universite All rights reserved