OSDN Git Service

Ver0.21
[gefu/Gefu.git] / main.cpp
index 055606e..83ede96 100644 (file)
--- a/main.cpp
+++ b/main.cpp
-#include "common.h"\r
 #include "mainwindow.h"\r
 \r
-#include <QDebug>\r
 #include <QApplication>\r
-#include <QSettings>\r
-#include <QDir>\r
-#include <QAction>\r
-#include <QTimer>\r
 \r
 int main(int argc, char *argv[])\r
 {\r
     QApplication a(argc, argv);\r
-    a.setOrganizationName("miyabi");\r
-    a.setOrganizationDomain("rakusaba.jp");\r
-    a.setApplicationName("Gefu");\r
-#if defined(Q_OS_MAC) || defined(Q_OS_MAC64) || defined(Q_OS_MACX)\r
-    a.setWindowIcon(QIcon(":/images/Gefu.icns"));\r
-#else\r
-    a.setWindowIcon(QIcon(":/images/Gefu.png"));\r
-#endif\r
-\r
-    QSettings::setDefaultFormat(QSettings::IniFormat);\r
-    QSettings settings;\r
-    if (settings.value(IniKey_ResetOnBoot, false).toBool()) {\r
-        settings.clear();\r
-    }\r
-\r
-    // オラはやっちまっただぁ…\r
-    QString strValue = settings.value("TerminalOption", "").toString();\r
-    if (!strValue.isEmpty()) {\r
-        settings.remove("TerminalOption");\r
-        settings.setValue(IniKey_TerminalOption, strValue);\r
-    }\r
-\r
-    // 各オプションのデフォルト値を設定する\r
-    //>>>>> 起動と終了\r
-    if (settings.value(IniKey_ConfirmExit, "").toString().isEmpty()) {\r
-        settings.setValue(IniKey_ConfirmExit, true);\r
-        settings.setValue(IniKey_BootSizeSpec, "sizeRelative");\r
-        settings.setValue(IniKey_BootSizeAbs, QSize(800,600));\r
-        settings.setValue(IniKey_BootSizeRel, QSize(75,75));\r
-        settings.setValue(IniKey_BootPosSpec, "posCenter");\r
-        settings.setValue(IniKey_BootPosAbs, QPoint(0, 0));\r
-        settings.setValue(IniKey_BootPosRel, QPoint(0, 0));\r
-    }\r
-    //>>>>> 色とフォント\r
-    if (settings.value(IniKey_BoxFont, "").toString().isEmpty()) {\r
-        settings.setValue(IniKey_BoxFont, a.font());\r
-        settings.setValue(IniKey_BoxColorBg, QPalette().base().color());\r
-        settings.setValue(IniKey_BoxColorFg, QPalette().text().color());\r
-    }\r
-    if (settings.value(IniKey_ViewFont, "").toString().isEmpty()) {\r
-        settings.setValue(IniKey_ViewFont, a.font());\r
-        settings.setValue(IniKey_ViewColorBgMark, QColor(0,192,0));\r
-        settings.setValue(IniKey_ViewColorBgNormal, QPalette().base().color());\r
-        settings.setValue(IniKey_ViewColorFgHidden, QColor(128,128,128));\r
-        settings.setValue(IniKey_ViewColorFgMark, QColor(128,0,0));\r
-        settings.setValue(IniKey_ViewColorFgNormal, QPalette().text().color());\r
-        settings.setValue(IniKey_ViewColorFgReadonly, QColor(0,128,0));\r
-        settings.setValue(IniKey_ViewColorFgSystem, QColor(128,0,128));\r
-    }\r
-    //>>>>> ファイル操作\r
-    if (settings.value(IniKey_AutoCloseCopy, "").toString().isEmpty()) {\r
-        settings.setValue(IniKey_AutoCloseCopy, false);\r
-        settings.setValue(IniKey_AutoCloseDelete, false);\r
-        settings.setValue(IniKey_AutoCloseMove, false);\r
-        settings.setValue(IniKey_AutoCloseRename, false);\r
-    }\r
-    if (settings.value(IniKey_ConfirmCopy, "").toString().isEmpty()) {\r
-        settings.setValue(IniKey_ConfirmCopy, true);\r
-        settings.setValue(IniKey_ConfirmDelete, true);\r
-        settings.setValue(IniKey_ConfirmMove, true);\r
-        settings.setValue(IniKey_ConfirmRename, true);\r
-    }\r
-    if (settings.value(IniKey_DefaultOnCopy, "").toString().isEmpty())\r
-        settings.setValue(IniKey_DefaultOnCopy, "owDefIfNew");\r
-    if (settings.value(IniKey_MoveAfterCreateFolder, "").toString().isEmpty())\r
-        settings.setValue(IniKey_MoveAfterCreateFolder, false);\r
-    if (settings.value(IniKey_OpenAfterCreateFile, "").toString().isEmpty())\r
-        settings.setValue(IniKey_OpenAfterCreateFile, false);\r
-    //>>>>> パス設定\r
-    if (settings.value(IniKey_EditorPath, "").toString().isEmpty()) {\r
-#if defined(Q_OS_WIN)\r
-        settings.setValue(IniKey_EditorPath, "notepad.exe");\r
-#elif defined(Q_OS_MAC)\r
-        settings.setValue(IniKey_EditorPath, "/Applications/TextEdit.app");\r
-#else\r
-        settings.setValue(IniKey_EditorPath, "gedit");\r
-#endif\r
-        settings.setValue(IniKey_EditorOption, QQ("$P"));\r
-    }\r
-    if (settings.value(IniKey_TerminalPath, "").toString().isEmpty()) {\r
-#if defined(Q_OS_WIN)\r
-        settings.setValue(IniKey_TerminalPath, "cmd.exe");\r
-        settings.setValue(IniKey_TerminalOption, "/k cd " + QQ("$D"));\r
-#elif defined(Q_OS_MAC)\r
-        settings.setValue(IniKey_TerminalPath, "/Applications/Utilities/Terminal.app");\r
-        settings.setValue(IniKey_TerminalOption, "-c cd " + QQ("$D"));\r
-#else\r
-        settings.setValue(IniKey_TerminalPath, "gnome-terminal");\r
-        settings.setValue(IniKey_TerminalOption, "-c cd " + QQ("$D"));\r
-#endif\r
-    }\r
-    //>>>>> テキストビューア\r
-    if (settings.value(IniKey_ViewerFont, "").toString().isEmpty()) {\r
-        settings.setValue(IniKey_ViewerColorBg, QPalette().base().color());\r
-        settings.setValue(IniKey_ViewerColorFg, QPalette().text().color());\r
-        settings.setValue(IniKey_ViewerFont, a.font());\r
-        settings.setValue(IniKey_ViewerForceOpen, false);\r
-        settings.setValue(IniKey_ViewerInherit, true);\r
-        settings.setValue(IniKey_ViewerIgnoreExt, ViewerIgnoreExt());\r
-    }\r
-\r
-    //>>>>> 隠しファイルの表示\r
-    if (settings.value(IniKey_ShowHidden, "").toString().isEmpty())\r
-        settings.setValue(IniKey_ShowHidden, false);\r
-    //>>>>> システムファイルの表示\r
-    if (settings.value(IniKey_ShowSystem, "").toString().isEmpty())\r
-        settings.setValue(IniKey_ShowSystem, false);\r
-    //>>>>> 最新版のチェック\r
-    if (settings.value(IniKey_CheckUpdates, "").toString().isEmpty())\r
-        settings.setValue(IniKey_CheckUpdates, true);\r
-    //>>>>> 最後のフォルダとソート方法\r
-    QString side = "Left/";\r
-    if (settings.value(side + IniKey_Dir, "").toString().isEmpty()) {\r
-        settings.setValue(side + IniKey_Dir, QDir::homePath());\r
-        settings.setValue(side + IniKey_SortBy, SortByName);\r
-        settings.setValue(side + IniKey_OrderBy, OrderByAsc);\r
-        settings.setValue(side + IniKey_PutDirs, PutDirsFirst);\r
-        settings.setValue(side + IniKey_IgnoreCase, true);\r
-    }\r
-    side = "Right/";\r
-    if (settings.value(side + IniKey_Dir, "").toString().isEmpty()) {\r
-        settings.setValue(side + IniKey_Dir, QDir::homePath());\r
-        settings.setValue(side + IniKey_SortBy, SortByName);\r
-        settings.setValue(side + IniKey_OrderBy, OrderByAsc);\r
-        settings.setValue(side + IniKey_PutDirs, PutDirsFirst);\r
-        settings.setValue(side + IniKey_IgnoreCase, true);\r
-    }\r
-\r
     MainWindow w;\r
     w.show();\r
 \r
     return a.exec();\r
 }\r
-\r
-QString ViewerIgnoreExt()\r
-{\r
-    QStringList list;\r
-    // 画像系\r
-    list << "ico" << "ai" << "psd" << "xcf" << "tif" << "tiff" << "wmf";\r
-    // 音・動画系\r
-    list << "wav" << "mp3" << "ogg" << "midi" << "mid" << "aif" << "aiff";\r
-    list << "mov" << "mpg" << "mpeg" << "wma" << "wmv" << "asf" << "avi";\r
-    list << "flac" << "mkv";\r
-    // 実行ファイル系\r
-    list << "exe" << "com" << "lib" << "dll" << "msi" << "scr" << "sys";\r
-    list << "o" << "obj" << "ocx" << "a" << "so" << "app";\r
-    // アーカイブ系\r
-    list << "lzh" << "zip" << "cab" << "tar" << "rar" << "gz" << "tgz";\r
-    list << "bz2" << "xz" << "jar" << "7z" << "dmg";\r
-    // ドキュメント系\r
-    list << "pdf" << "doc" << "docx" << "xls" << "xlsx" << "ppt" << "pptx";\r
-    // フォント\r
-    list << "ttf" << "ttc";\r
-\r
-    list.sort();\r
-\r
-    return list.join(",");\r
-}\r
-\r
-bool ProcessShortcut(const QString &ksq, const QObject *object)\r
-{\r
-    qDebug() << "ProcessShortcut()";\r
-\r
-    if (ksq.isEmpty()) {\r
-        return false;\r
-    }\r
-\r
-    foreach (QObject *obj, object->children()) {\r
-        QAction *action = qobject_cast<QAction*>(obj);\r
-        if (!action || !action->isEnabled()) {\r
-            continue;\r
-        }\r
-\r
-        foreach (const QKeySequence &k, action->shortcuts()) {\r
-            if (ksq == k.toString()) {\r
-                if (action->isCheckable()) {\r
-                    action->setChecked(!action->isChecked());\r
-                }\r
-                else {\r
-                    emit action->triggered();\r
-                }\r
-                qDebug() << "emit" << action->objectName();\r
-                return true;\r
-            }\r
-        }\r
-    }\r
-    return false;\r
-}\r
-\r
-void Sleep(int msec)\r
-{\r
-    QEventLoop loop;\r
-    QTimer::singleShot(msec, &loop, SLOT(quit()));\r
-    loop.exec();\r
-}\r