import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
+import java.io.File;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import com.evernote.edam.type.UserAttributes;
import com.swabunga.spell.engine.Configuration;
import com.trolltech.qt.core.QByteArray;
+import com.trolltech.qt.core.QFile;
import com.trolltech.qt.core.QSettings;
import com.trolltech.qt.core.QSize;
import com.trolltech.qt.gui.QPalette;
// Do initial setup
public static void setup(StartupConfig startupConfig) throws InitializationException {
- // ICHANGED 設定値の保存先を変更
- settings = new QSettings("NeighborNote.ini", QSettings.Format.IniFormat);
+ String settingFileName = new String("NeighborNote.ini");
+
+ // バージョン0.1.2以下では設定ファイルをプログラムディレクトリに置いていたので、それを見つけたらホームディレクトリに移動させる。
+ File programDir = new File(FileManager.toPlatformPathSeparator(startupConfig.getProgramDirPath()));
+ String programPath = FileManager.slashTerminatePath(programDir.getPath());
+ File homeDir = new File(FileManager.toPlatformPathSeparator(startupConfig.getHomeDirPath()));
+ String homePath = FileManager.slashTerminatePath(homeDir.getPath());
+ if (QFile.exists(programPath + settingFileName)) {
+ QFile file = new QFile(programPath + settingFileName);
+ file.copy(homePath + settingFileName);
+ file.remove();
+ }
+
+ settings = new QSettings(homePath + settingFileName, QSettings.Format.IniFormat);
disableViewing = startupConfig.getDisableViewing();
syncOnly = startupConfig.isSyncOnly();
return translateDirPath + toPlatformPathSeparator(relativePath);
}
- private static String toPlatformPathSeparator(String relativePath) {
+ public static String toPlatformPathSeparator(String relativePath) {
// Sometimes a space in the file name comes across as a %20. This is to put it back as a space.
relativePath = relativePath.replace("%20", " ");
return ALL_PATH_SEPARATORS_REGEX.matcher(relativePath).replaceAll(
(File.separator.equals("\\") ? "\\\\" : File.separator));
}
- private static String slashTerminatePath(String path) {
+ public static String slashTerminatePath(String path) {
if (!path.substring(path.length() - 1).equals(File.separator)) {
return path + File.separator;
}