#ifndef FORMLOGMUD_H #define FORMLOGMUD_H #include #include #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 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