]> Shamusworld >> Repos - ttedit/blobdiff - src/mainwindow.cpp
Added preview window to file loading dialog. :-)
[ttedit] / src / mainwindow.cpp
index 2c9b45d1024d27a29540d537771b802ca6afa945..173c977a8a04a0fe4cad8e6791d4ace2e418147b 100644 (file)
 #include "charwindow.h"
 #include "editwindow.h"
 #include "global.h"
+#include "previewfiledialog.h"
 #include "ttedit.h"
 
 
 MainWindow::MainWindow()
 {
-       ((TTEdit *)qApp)->charWnd = new CharWindow(this);
+       Global::charWnd = new CharWindow(this);
        editWnd = new EditWindow(this);
        setCentralWidget(editWnd);
        editWnd->setFocus();
        setWindowIcon(QIcon(":/res/ttedit.png"));
        setWindowTitle("TTEdit! - Untitled");
 
-#if 0
-//     createActions();
-       newAct = new QAction(QIcon(":/images/new.png"), tr("&New"), this);
-       newAct->setShortcuts(QKeySequence::New);
-       newAct->setStatusTip(tr("Create a new file"));
-       connect(newAct, SIGNAL(triggered()), this, SLOT(newFile()));
-
-       openAct = new QAction(QIcon(":/images/open.png"), tr("&Open..."), this);
-       openAct->setShortcuts(QKeySequence::Open);
-       openAct->setStatusTip(tr("Open an existing file"));
-       connect(openAct, SIGNAL(triggered()), this, SLOT(open()));
-
-       aboutQtAct = new QAction(tr("About &Qt"), this);
-       aboutQtAct->setStatusTip(tr("Show the Qt library's About box"));
-       connect(aboutQtAct, SIGNAL(triggered()), qApp, SLOT(aboutQt()));
-
-//     createMenus();
-       fileMenu = menuBar()->addMenu(tr("&File"));
-       fileMenu->addAction(newAct);
-       fileMenu->addAction(openAct);
-       fileMenu->addAction(saveAct);
-       fileMenu->addAction(saveAsAct);
-       fileMenu->addSeparator();
-       fileMenu->addAction(exitAct);
-
-       editMenu = menuBar()->addMenu(tr("&Edit"));
-       editMenu->addAction(cutAct);
-       editMenu->addAction(copyAct);
-       editMenu->addAction(pasteAct);
-
-       menuBar()->addSeparator();
-
-       helpMenu = menuBar()->addMenu(tr("&Help"));
-       helpMenu->addAction(aboutAct);
-       helpMenu->addAction(aboutQtAct);
-
-//     createToolBars();
-       fileToolBar = addToolBar(tr("File"));
-       fileToolBar->addAction(newAct);
-       fileToolBar->addAction(openAct);
-       fileToolBar->addAction(saveAct);
-
-       editToolBar = addToolBar(tr("Edit"));
-       editToolBar->addAction(cutAct);
-       editToolBar->addAction(copyAct);
-       editToolBar->addAction(pasteAct);
-#else
        CreateActions();
        CreateMenus();
        CreateToolbars();
-#endif
 
        //      Create status bar
        scaleIndicator = new QLabel("Scale: 100%");
@@ -116,7 +69,7 @@ MainWindow::MainWindow()
 //     setCurrentFile("");
        setUnifiedTitleAndToolBarOnMac(true);
 
-       ((TTEdit *)qApp)->charWnd->show();//eh?
+       Global::charWnd->show();
 }
 
 
@@ -206,8 +159,8 @@ void MainWindow::closeEvent(QCloseEvent * event)
 void MainWindow::NewGlyph(void)
 {
        editWnd->pts.Clear();
-       ((TTEdit *)qApp)->charWnd->MakePathFromPoints(&(editWnd->pts));
-       ((TTEdit *)qApp)->charWnd->update();
+       Global::charWnd->MakePathFromPoints(&(editWnd->pts));
+       Global::charWnd->update();
        filename.clear();
 //     editWnd->polyFirstPoint = true;
        editWnd->update();
@@ -218,8 +171,19 @@ void MainWindow::NewGlyph(void)
 
 void MainWindow::OpenFile(void)
 {
+#if 0
        filename = QFileDialog::getOpenFileName(this, tr("Open Glyph File"),
                "./", tr("Glyph files (*.glyph)"));
+#else
+       PreviewFileDialog * pfd = new PreviewFileDialog(this, tr("Open Glyph File"),
+               "./", tr("Glyph files (*.glyph)"));
+       pfd->setAcceptMode(QFileDialog::AcceptOpen);
+
+       if (pfd->exec() == false)
+               return;
+
+       filename = pfd->selectedFiles().at(0);
+#endif
        FILE * file = fopen(filename.toUtf8().data(), "r");
 
        //need to pop an error box here...
@@ -229,8 +193,8 @@ void MainWindow::OpenFile(void)
        editWnd->pts.LoadGlyphFromFile(file);
        fclose(file);
 
-       ((TTEdit *)qApp)->charWnd->MakePathFromPoints(&(editWnd->pts));
-       ((TTEdit *)qApp)->charWnd->update();
+       Global::charWnd->MakePathFromPoints(&(editWnd->pts));
+       Global::charWnd->update();
        editWnd->update();
        setWindowTitle(QString("TTEdit! - %1").arg(filename));
        editWnd->setFocus();
@@ -300,8 +264,8 @@ void MainWindow::ReadSettings(void)
        move(pos);
        pos = settings.value("charWndPos", QPoint(0, 0)).toPoint();
        size = settings.value("charWndSize", QSize(200, 200)).toSize();
-       ((TTEdit *)qApp)->charWnd->resize(size);
-       ((TTEdit *)qApp)->charWnd->move(pos);
+       Global::charWnd->resize(size);
+       Global::charWnd->move(pos);
 }
 
 
@@ -310,8 +274,8 @@ void MainWindow::WriteSettings(void)
        QSettings settings("Underground Software", "TTEdit");
        settings.setValue("pos", pos());
        settings.setValue("size", size());
-       settings.setValue("charWndPos", ((TTEdit *)qApp)->charWnd->pos());
-       settings.setValue("charWndSize", ((TTEdit *)qApp)->charWnd->size());
+       settings.setValue("charWndPos", Global::charWnd->pos());
+       settings.setValue("charWndSize", Global::charWnd->size());
 }