logplus/logPlus/formlogmud.h

72 lines
1.8 KiB
C++

#ifndef FORMLOGMUD_H
#define FORMLOGMUD_H
#include <QWidget>
#include <QVariant>
#include "LogmudResultItem.h"
#include "LogmuditemDrawer.h"
#pragma execution_character_set("utf-8")
namespace Ui {
class FormLogmud;
}
class CDrawTvd;
class FormLogmud : public QWidget
{
Q_OBJECT
public:
explicit FormLogmud(QWidget *parent = nullptr, QString strSlfName="", QString strWellName="", QString strTrackName="", QString strLineName="");
~FormLogmud();
bool LoadFromSLF_LogMud();
bool SaveToSLF_LogMud();
LogmudResultItem* AddItem(double topDepth, double bottomDepth);
LogmudResultItem *AddItem(double topDepth, double bottomDepth, int insertPos);
int GetInsertIndex(double topDepth, double bottomDepth) const;
private:
Ui::FormLogmud *ui;
protected:
void paintEvent(QPaintEvent *event);
virtual void wheelEvent(QWheelEvent *event);
bool IsFiniteNumber(float v)
{
#ifdef _MSC_VER
return _finite(v) != 0;
#else
return (v == v) && (v <= FLT_MAX) && (v >= -FLT_MAX);
#endif
}
public:
QString m_strUuid;
QString m_strSlfName;
QString m_strWellName;
QString m_strTrackName;
QString m_strLineName;
LogmudItemDrawer* m_pLogMud = NULL;
QWidget *m_parent;
double m_wellTop = 0.0;
double m_dTopDepth = 0.0;
struct logmud_stru *m_LogMun = NULL;
QList<LogmudResultItem*> m_childrenItems;//所有小分段
public:
void DrawTvd();
public slots:
//斜井三图一表
void s_ChangeTvdProperty(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName,
QString strGroup, QString strProperty, QVariant variant);
//滚动条
void vertScrollBarChanged(QString strUuid, double value, double low, double upper);
void vertScrollBarChanged_Print(QString strUuid, int iNum, int iHeightOfScreen);
};
#endif // FORMLOGMUD_H