diff --git a/cd_utils/cdutils_core.cpp b/cd_utils/cdutils_core.cpp index ae106b8..9c95baa 100644 --- a/cd_utils/cdutils_core.cpp +++ b/cd_utils/cdutils_core.cpp @@ -217,6 +217,12 @@ void CDCore::stop() { } +void CDCore::release() { + stop(); + connection.removeAllDevices(); +} + + void CDCore::startX(double freq) { //piCout << "start x" << x_timer.isRunning() << freq; if (!x_timer.isRunning()) @@ -225,7 +231,7 @@ void CDCore::startX(double freq) { void CDCore::stopX() { - x_timer.stop(); + x_timer.stop(true); } diff --git a/cd_utils/cdutils_core.h b/cd_utils/cdutils_core.h index 3fe45d6..cf5040a 100644 --- a/cd_utils/cdutils_core.h +++ b/cd_utils/cdutils_core.h @@ -63,6 +63,7 @@ public: void initPult(); void init(const PIString & configuration, bool pult = false); void stop(); + void release(); void startX(double freq = 20.); void stopX(); void sendCommand(const CDType & c); diff --git a/cd_utils/cdutils_interface.cpp b/cd_utils/cdutils_interface.cpp index f976772..e5c90ba 100644 --- a/cd_utils/cdutils_interface.cpp +++ b/cd_utils/cdutils_interface.cpp @@ -125,11 +125,16 @@ bool Interface::configure(const PIString & config) { } -void Interface::reinitConnection(const PIString &configuration) { +void Interface::reinitConnection(const PIString & configuration) { core->init(configuration); } +void Interface::releaseConnection() { + core->release(); +} + + void Interface::write(PIIODevice * d) { core->cd_write(s, d); } diff --git a/cd_utils/cdutils_interface.h b/cd_utils/cdutils_interface.h index 0ad710a..c6e166c 100644 --- a/cd_utils/cdutils_interface.h +++ b/cd_utils/cdutils_interface.h @@ -37,6 +37,7 @@ public: void setFileName(const PIString & _file); bool configure(const PIString & config); void reinitConnection(const PIString & configuration); + void releaseConnection(); void write(PIIODevice * d); void read(PIIODevice * d); void parse(PIIODevice * d); diff --git a/qad/utils/qad_types.cpp b/qad/utils/qad_types.cpp index c09805e..7c508cd 100644 --- a/qad/utils/qad_types.cpp +++ b/qad/utils/qad_types.cpp @@ -139,3 +139,8 @@ QSize preferredIconSize(float x) { int s = qMax(8, qRound(fontHeight() * x)); return QSize(s, s); } + + +double appScale() { + return qMax(fontHeight() / 15., 1.); +} diff --git a/qad/utils/qad_types.h b/qad/utils/qad_types.h index b909b07..867cebe 100644 --- a/qad/utils/qad_types.h +++ b/qad/utils/qad_types.h @@ -120,6 +120,7 @@ QString uniqueName(QString n, const QStringList & names); int fontHeight(); int lineThickness(); QSize preferredIconSize(float x = 1.f); +double appScale(); #endif // QAD_TYPES_H