Skip to content

Commit

Permalink
Code cleanup and refactoring.
Browse files Browse the repository at this point in the history
以面向对象思想重构了大部分代码。
  • Loading branch information
gztss committed Sep 7, 2018
1 parent 4416859 commit 6b2a79f
Show file tree
Hide file tree
Showing 75 changed files with 1,674 additions and 1,351 deletions.
95 changes: 53 additions & 42 deletions SerialTool/SerialTool.pro
Original file line number Diff line number Diff line change
Expand Up @@ -32,53 +32,64 @@ RC_FILE += resource/serialtool.rc
INCLUDEPATH += include

SOURCES += \
source/aboutbox.cpp \
source/channelitem.cpp \
source/main.cpp \
source/optionsbox.cpp \
source/portsetbox.cpp \
source/textedit.cpp \
source/wavedecode.cpp \
source/oscilloscope.cpp \
source/filethread.cpp \
source/xmodem.cpp \
source/vediobox.cpp \
source/tcpudpport.cpp \
source/defaultconfig.cpp \
source/oscopetimestamp.cpp \
source/terminalview.cpp \
source/serialport.cpp \
source/pointdatabuffer.cpp \
source/valuedisplay.cpp \
source/mainwindow.cpp \
source/filetransmitview.cpp \
source/plotview.cpp \
source/updatedialog.cpp
src/aboutbox.cpp \
src/main.cpp \
src/mainwindow.cpp \
src/controller.cpp \
src/optionsbox.cpp \
src/portsetbox.cpp \
src/defaultconfig.cpp \
src/updatedialog.cpp \
src/port/portmanager.cpp \
src/port/tcpudpport.cpp \
src/port/serialport.cpp \
src/views/viewmanager.cpp \
src/views/terminal/terminalview.cpp \
src/views/terminal/textedit.cpp \
src/views/oscilloscope/oscilloscopeview.cpp \
src/views/oscilloscope/channelitem.cpp \
src/views/oscilloscope/oscopetimestamp.cpp \
src/views/oscilloscope/pointdatabuffer.cpp \
src/views/oscilloscope/plotview.cpp \
src/views/oscilloscope/wavedecode.cpp \
src/views/filetransmit/filetransmitview.cpp \
src/views/filetransmit/filethread.cpp \
src/views/filetransmit/xmodem.cpp \
src/toolbox/toolboxmanager.cpp \
src/toolbox/vediobox/vediobox.cpp \
src/toolbox/valuedisplay/valuedisplay.cpp

HEADERS += \
include/aboutbox.h \
include/channelitem.h \
include/mainwindow.h \
include/controller.h \
include/optionsbox.h \
include/portsetbox.h \
include/textedit.h \
include/version.h \
include/wavedecode.h \
include/oscilloscope.h \
include/filethread.h \
include/xmodem.h \
include/xmodem_crc16.h \
include/vediobox.h \
include/tcpudpport.h \
include/defaultconfig.h \
include/oscopetimestamp.h \
include/terminalview.h \
include/serialport.h \
include/pointdatabuffer.h \
include/valuedisplay.h \
include/mainwindow.h \
include/filetransmitview.h \
include/plotview.h \
include/updatedialog.h
include/updatedialog.h \
src/port/portmanager.h \
src/port/abstractport.h \
src/port/tcpudpport.h \
src/port/serialport.h \
src/views/viewmanager.h \
src/views/abstractview.h \
src/views/terminal/terminalview.h \
src/views/terminal/textedit.h \
src/views/oscilloscope/oscilloscopeview.h \
src/views/oscilloscope/channelitem.h \
src/views/oscilloscope/oscopetimestamp.h \
src/views/oscilloscope/pointdatabuffer.h \
src/views/oscilloscope/plotview.h \
src/views/oscilloscope/wavedecode.h \
src/views/filetransmit/filetransmitview.h \
src/views/filetransmit/filethread.h \
src/views/filetransmit/xmodem.h \
src/views/filetransmit/xmodem_crc16.h \
src/toolbox/toolboxmanager.h \
src/toolbox/abstracttoolbox.h \
src/toolbox/vediobox/vediobox.h \
src/toolbox/valuedisplay/valuedisplay.h

DISTFILES += \
resource/images/clear.png \
Expand All @@ -99,14 +110,14 @@ FORMS += \
ui/aboutbox.ui \
ui/optionsbox.ui \
ui/portsetbox.ui \
ui/oscilloscope.ui \
ui/vediobox.ui \
ui/tcpudpport.ui \
ui/terminalview.ui \
ui/valuedisplay.ui \
ui/serialport.ui \
ui/mainwindow.ui \
ui/filetransmitview.ui \
ui/updatedialog.ui
ui/updatedialog.ui \
ui/oscilloscopeview.ui

LIBS += -lqscintilla2_qt5
46 changes: 46 additions & 0 deletions SerialTool/include/controller.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
#ifndef CONTROLLER_H
#define CONTROLLER_H

#include <QObject>

class QMenu;
class QAction;
class QSettings;
class QTabWidget;
class PortManager;
class ViewManager;
class ToolBoxManager;

class Controller : public QObject
{
Q_OBJECT
public:
explicit Controller(QString *docPath, QTabWidget *tabWidget,
QMenu *menu, QAction *openAction, QAction *saveAction);
void setPortManager(PortManager *manager);
void loadConfig(QSettings *config);
void saveConfig(QSettings *config);
void loadSettings(QSettings *config);
void retranslate();
void setEnabled(bool enabled);
void clear(void);
void setPause(bool paused) { m_pause = paused; }
int receiveCount() { return m_rxCount; }
int transmitCount () { return m_txCount; }
void setWindowOpacity(qreal level);

signals:

private slots:
void readPortData();
void writePortData(const QByteArray &array);

private:
ViewManager *m_views;
ToolBoxManager *m_toolBoxs;
PortManager *m_port;
bool m_pause = false;
int m_rxCount = 0, m_txCount = 0;
};

#endif // CONTROLLER_H
44 changes: 8 additions & 36 deletions SerialTool/include/mainwindow.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,23 +9,14 @@ namespace Ui {
class MainWindow;
}
class QSettings;
class TcpUdpPort;
class WaveDecode;
class SerialPort;
class VedioBox;
class ValueDisplay;
class QTranslator;
class QActionGroup;
class PortManager;
class Controller;

class MainWindow : public QMainWindow
{
Q_OBJECT

enum PortType {
ComPort,
NetworkPort
};

public:
MainWindow(QWidget *parent = Q_NULLPTR);
~MainWindow();
Expand All @@ -37,55 +28,36 @@ class MainWindow : public QMainWindow
void setStyleSheet(const QString &string);

private slots:
void tabIndexChanged(int index);
void tabActionGroupTriggered(QAction *action);
void changeRunFlag();
void onSecTimerTimeout();
void openPort();
void closePort();
void onPortSwitchActionTriggered();
void openSetPortInfoBox();
void readPortData();
void writePort(const QByteArray &array);
void cleanData();
void setOptions();
void dispPortStatus();
void clear();
void saveFile();
void openFile();
void setOptions();
void onStaysOnTopTriggered();
void about();
void openWiki();
void onVedioBoxTriggered();
void onVedioBoxDelete();
void onValueDisplayTriggered();
void onValueDisplayDelete();
void onStaysOnTopTriggered();
void currentTabChanged(int index);
void dispPortStatus();
void updateSoftware();

private:
void loadConfig();
void closeEvent(QCloseEvent *event);
bool openComPort();
bool openTcpUdpPort();
void loadPortTool();
void setTabActionIndex(int index);
void setWindowStaysOnTop(bool enabled);

private:
Ui::MainWindow *ui;
QString m_docPath;
QTimer m_timer; // 秒定时器
TcpUdpPort *m_tcpUdpPort; // TCP/UDP端口
QSettings *m_config;
bool m_runFlag = true;
QActionGroup *m_tabActionGroup;
int m_rxCount, m_txCount;
QLabel *m_rxCntLabel, *m_txCntLabel, *m_portInfoLabel;
QVector<QTranslator*> m_translator;
VedioBox *m_vedioBox = NULL;
ValueDisplay *m_valueDisplay = NULL;
PortType m_portType;
SerialPort *m_serialPort;
PortManager *m_port;
Controller *m_controller;
};

#endif // __MAINWINDOW_H
1 change: 0 additions & 1 deletion SerialTool/include/portsetbox.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
#define __PORTSETBOX_H

#include <QtWidgets/QDialog>
#include <QSettings>
#include <QtSerialPort/QSerialPort>

namespace Ui {
Expand Down
24 changes: 0 additions & 24 deletions SerialTool/include/valuedisplay.h

This file was deleted.

32 changes: 0 additions & 32 deletions SerialTool/include/vediobox.h

This file was deleted.

4 changes: 2 additions & 2 deletions SerialTool/include/version.h
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
#ifndef __VERSION_H
#define __VERSION_H

#define MAIN_VERSION 1.2.6
#define MAIN_VERSION 1.3.0Beta

#define SOFTWARE_NAME "SerialTool"
#define COPYRIGHT "Copyleft 2017-2018, Wenliang Guan"

#define _STR_(s) #s
#define __STR(s) _STR_(s)

#define BUILD_VERSION _STR_(57a6fM)
#define BUILD_VERSION _STR_(5880dM)
#define SOFTWARE_VERSION __STR(MAIN_VERSION)

#endif
Loading

0 comments on commit 6b2a79f

Please sign in to comment.