OSDN Git Service

インデックスデータベース完成記念バックアップ♪
[wordring-tm/wordring-tm.git] / proxy / mainwindow.cpp
1 #include "mainwindow.h"
2 #include "tmeditorwidget.h"
3 #include "tmcandidatewidget.h"
4
5 #include "settings.h"
6
7 #include <QDockWidget>
8 #include <QTextEdit>
9
10 #include "debug.h"
11
12 MainWindow::MainWindow(Settings *settings, TM::Service *service, QWidget *parent)
13         : QMainWindow(parent)
14         , m_settings(settings)
15 {
16         setWindowTitle(tr("wordring translation memory"));
17
18         // 編集ウィジェット
19         m_editor_dock = new QDockWidget(tr("editor"), this);
20         m_editor_dock->setObjectName("EditorDock");
21         m_editor_dock->setFeatures(QDockWidget::DockWidgetMovable);
22         m_editor_widget = new TM::EditorWidget(settings, service, m_editor_dock);
23         m_editor_dock->setWidget(m_editor_widget);
24         addDockWidget(Qt::RightDockWidgetArea, m_editor_dock, Qt::Vertical);
25
26         // 候補ウィジェット
27         m_candidate_dock = new QDockWidget(tr("candidate"), this);
28         m_candidate_dock->setObjectName("CandidateDock");
29         //m_candidate_dock->setFeatures(QDockWidget::DockWidgetMovable);
30         m_candidate_widget = new TM::CandidateWidget(this);
31         m_candidate_dock->setWidget(m_candidate_widget);
32         addDockWidget(Qt::RightDockWidgetArea, m_candidate_dock, Qt::Vertical);
33
34         // 設定の復帰
35         restoreGeometry(m_settings->value("MainWindow/geometry").toByteArray());
36         restoreState(m_settings->value("MainWindow/state").toByteArray());
37 }
38
39 MainWindow::~MainWindow()
40 {
41         m_settings->setValue("MainWindow/geometry", saveGeometry());
42         m_settings->setValue("MainWindow/state", saveState());
43 }
44
45 TM::EditorWidget* MainWindow::editor_widget() { return m_editor_widget; }
46
47 void MainWindow::set_http_port(quint16 http_port)
48 {
49         editor_widget()->set_http_port(http_port);
50 }
51
52 void MainWindow::closeEvent(QCloseEvent *ev)
53 {
54         emit closing();
55         QMainWindow::closeEvent(ev);
56 }