Page MenuHomePhabricator (Chris)

No OneTemporary

Authored By
Unknown
Size
135 KB
Referenced Files
None
Subscribers
None
diff --git a/Guitar.pro b/Guitar.pro
index 2f86cae..63079c4 100644
--- a/Guitar.pro
+++ b/Guitar.pro
@@ -1,382 +1,385 @@
QT += core gui widgets svg network
win32:QT += winextras
CONFIG(debug,debug|release):TARGET = Guitard
CONFIG(release,debug|release):TARGET = Guitar
TEMPLATE = app
CONFIG += c++11
DESTDIR = $$PWD/_bin
TRANSLATIONS = Guitar_ja.ts
DEFINES += APP_GUITAR
DEFINES += USE_DARK_THEME
DEFINES += HAVE_POSIX_OPENPT
macx:DEFINES += HAVE_SYS_TIME_H
macx:DEFINES += HAVE_UTMPX
gcc:QMAKE_CXXFLAGS += -Wall -Wextra -Werror=return-type -Werror=trigraphs -Wno-switch -Wno-reorder
linux:QMAKE_RPATHDIR += $ORIGIN
macx:QMAKE_RPATHDIR += @executable_path/../Frameworks
linux:QTPLUGIN += ibusplatforminputcontextplugin
#linux:QTPLUGIN += fcitxplatforminputcontextplugin
INCLUDEPATH += $$PWD/src
INCLUDEPATH += $$PWD/src/texteditor
win32:INCLUDEPATH += $$PWD/winpty
win32:LIBS += $$PWD/winpty/winpty.lib
# OpenSSL
linux:LIBS += -lssl -lcrypto
haiku:LIBS += -lssl -lcrypto -lnetwork
macx:INCLUDEPATH += /usr/local/include
macx:LIBS += /usr/local/lib/libssl.a /usr/local/lib/libcrypto.a
win32:msvc {
INCLUDEPATH += C:\openssl\include
LIBS += -LC:\openssl\lib
}
win32:gcc {
INCLUDEPATH += C:\Qt\Tools\mingw530_32\opt\include
LIBS += -LC:\Qt\Tools\mingw530_32\opt\lib
LIBS += -lcrypto -lssl
}
# execute 'ruby prepare.rb' automatically
prepare.target = prepare
prepare.commands = cd $$PWD && ruby -W0 prepare.rb
QMAKE_EXTRA_TARGETS += prepare
PRE_TARGETDEPS += prepare
# zlib
win32:msvc {
CONFIG(debug, debug|release):LIBS += $$PWD/_bin/libz.lib
CONFIG(release, debug|release):LIBS += $$PWD/_bin/libz.lib
}
win32:gcc {
CONFIG(debug, debug|release):LIBS += $$PWD/_bin/liblibz.a
CONFIG(release, debug|release):LIBS += $$PWD/_bin/liblibz.a
}
!haiku {
unix:CONFIG(debug, debug|release):LIBS += $$PWD/_bin/libzd.a
unix:CONFIG(release, debug|release):LIBS += $$PWD/_bin/libz.a
#unix:LIBS += -lz
}
haiku:LIBS += -lz
win32 {
LIBS += -ladvapi32 -lshell32 -luser32 -lws2_32
RC_FILE = win.rc
QMAKE_SUBSYSTEM_SUFFIX=,5.01
}
macx {
QMAKE_INFO_PLIST = Info.plist
ICON += Guitar.icns
t.path=Contents/Resources
QMAKE_BUNDLE_DATA += t
}
SOURCES += \
version.c \
src/main.cpp\
src/MainWindow.cpp \
src/Git.cpp \
src/common/joinpath.cpp \
src/common/misc.cpp \
src/ConfigCredentialHelperDialog.cpp \
src/MySettings.cpp \
src/FileDiffWidget.cpp \
src/TextEditDialog.cpp \
src/LogTableWidget.cpp \
src/FileDiffSliderWidget.cpp \
src/FileUtil.cpp \
src/SettingsDialog.cpp \
src/MergeBranchDialog.cpp \
src/CloneDialog.cpp \
src/AboutDialog.cpp \
src/RepositoryInfoFrame.cpp \
src/RepositoryPropertyDialog.cpp \
src/RepositoryData.cpp \
src/MyToolButton.cpp \
src/GitDiff.cpp \
src/CommitPropertyDialog.cpp \
src/Terminal.cpp \
src/DeleteTagsDialog.cpp \
src/RepositoriesTreeWidget.cpp \
src/SelectCommandDialog.cpp \
src/ImageViewWidget.cpp \
src/FileHistoryWindow.cpp \
src/GitPackIdxV2.cpp \
src/GitPack.cpp \
src/GitObjectManager.cpp \
src/FilePropertyDialog.cpp \
src/BigDiffWindow.cpp \
src/MaximizeButton.cpp \
src/CommitExploreWindow.cpp \
src/ReadOnlyLineEdit.cpp \
src/ReadOnlyPlainTextEdit.cpp \
src/MyTableWidgetDelegate.cpp \
src/SetRemoteUrlDialog.cpp \
src/ClearButton.cpp \
src/SetUserDialog.cpp \
src/SearchFromGitHubDialog.cpp \
src/webclient.cpp \
src/charvec.cpp \
src/urlencode.cpp \
src/HyperLinkLabel.cpp \
src/JumpDialog.cpp \
src/CheckoutDialog.cpp \
src/DeleteBranchDialog.cpp \
src/BasicRepositoryDialog.cpp \
src/RemoteRepositoriesTableWidget.cpp \
src/LocalSocketReader.cpp \
src/PushDialog.cpp \
src/StatusLabel.cpp \
src/RepositoryLineEdit.cpp \
src/DirectoryLineEdit.cpp \
src/AbstractSettingForm.cpp \
src/SettingExampleForm.cpp \
src/CreateRepositoryDialog.cpp \
src/GitHubAPI.cpp \
src/MemoryReader.cpp \
src/ExperimentDialog.cpp \
src/gunzip.cpp \
src/AvatarLoader.cpp \
src/SettingNetworkForm.cpp \
src/Photoshop.cpp \
src/SettingBehaviorForm.cpp \
src/MyProcess.cpp \
src/FileViewWidget.cpp \
src/MyTextEditorWidget.cpp \
src/AbstractProcess.cpp \
src/texteditor/AbstractCharacterBasedApplication.cpp \
src/texteditor/InputMethodPopup.cpp \
src/texteditor/TextEditorTheme.cpp \
src/texteditor/TextEditorWidget.cpp \
src/texteditor/unicode.cpp \
src/texteditor/UnicodeWidth.cpp \
src/MyImageViewWidget.cpp \
src/SetGlobalUserDialog.cpp \
src/ReflogWindow.cpp \
src/Theme.cpp \
src/ApplicationGlobal.cpp \
src/BlameWindow.cpp \
src/MenuButton.cpp \
src/SettingGeneralForm.cpp \
src/WelcomeWizardDialog.cpp \
src/DialogHeaderFrame.cpp \
src/CommitViewWindow.cpp \
src/EditRemoteDialog.cpp \
src/gpg.cpp \
src/SelectGpgKeyDialog.cpp \
src/SetGpgSigningDialog.cpp \
src/CommitDialog.cpp \
src/ConfigSigningDialog.cpp \
src/AreYouSureYouWantToContinueConnectingDialog.cpp \
src/LineEditDialog.cpp \
src/SettingProgramsForm.cpp \
src/InputNewTagDialog.cpp \
src/EditTagsDialog.cpp \
darktheme/src/DarkStyle.cpp \
darktheme/src/NinePatch.cpp \
darktheme/src/StandardStyle.cpp \
darktheme/src/TraditionalWindowsStyleTreeControl.cpp \
- src/EditGitIgnoreDialog.cpp
+ src/EditGitIgnoreDialog.cpp \
+ src/SelectItemDialog.cpp
HEADERS += \
src/MainWindow.h \
src/Git.h \
src/common/joinpath.h \
src/common/misc.h \
src/ConfigCredentialHelperDialog.h \
src/MySettings.h \
src/main.h \
src/FileDiffWidget.h \
src/TextEditDialog.h \
src/LogTableWidget.h \
src/FileDiffSliderWidget.h \
src/FileUtil.h \
src/SettingsDialog.h \
src/MergeBranchDialog.h \
src/CloneDialog.h \
src/AboutDialog.h \
src/RepositoryInfoFrame.h \
src/RepositoryPropertyDialog.h \
src/RepositoryData.h \
src/MyToolButton.h \
src/GitDiff.h \
src/CommitPropertyDialog.h \
src/Terminal.h \
src/DeleteTagsDialog.h \
src/RepositoriesTreeWidget.h \
src/SelectCommandDialog.h \
src/ImageViewWidget.h \
src/FileHistoryWindow.h \
src/Debug.h \
src/GitPackIdxV2.h \
src/GitPack.h \
src/GitObjectManager.h \
src/FilePropertyDialog.h \
src/BigDiffWindow.h \
src/MaximizeButton.h \
src/CommitExploreWindow.h \
src/ReadOnlyLineEdit.h \
src/ReadOnlyPlainTextEdit.h \
src/MyTableWidgetDelegate.h \
src/SetRemoteUrlDialog.h \
myzlib.h \
src/ClearButton.h \
src/SetUserDialog.h \
src/SearchFromGitHubDialog.h \
src/webclient.h \
src/charvec.h \
src/urlencode.h \
src/HyperLinkLabel.h \
src/JumpDialog.h \
src/CheckoutDialog.h \
src/DeleteBranchDialog.h \
src/BasicRepositoryDialog.h \
src/RemoteRepositoriesTableWidget.h \
src/LocalSocketReader.h \
src/PushDialog.h \
src/StatusLabel.h \
src/RepositoryLineEdit.h \
src/DirectoryLineEdit.h \
src/AbstractSettingForm.h \
src/SettingExampleForm.h \
src/CreateRepositoryDialog.h \
src/GitHubAPI.h \
src/MemoryReader.h \
src/ExperimentDialog.h \
src/gunzip.h \
src/AvatarLoader.h \
src/SettingNetworkForm.h \
src/Photoshop.h \
src/SettingBehaviorForm.h \
src/MyProcess.h \
src/MyTextEditorWidget.h \
src/AbstractProcess.h \
src/texteditor/AbstractCharacterBasedApplication.h \
src/texteditor/InputMethodPopup.h \
src/texteditor/TextEditorTheme.h \
src/texteditor/TextEditorWidget.h \
src/texteditor/unicode.h \
src/texteditor/UnicodeWidth.h \
src/MyImageViewWidget.h \
src/SetGlobalUserDialog.h \
src/ReflogWindow.h \
src/Theme.h \
src/ApplicationGlobal.h \
src/BlameWindow.h \
src/MenuButton.h \
src/SettingGeneralForm.h \
src/WelcomeWizardDialog.h \
src/DialogHeaderFrame.h \
src/CommitViewWindow.h \
src/EditRemoteDialog.h \
src/gpg.h \
src/SelectGpgKeyDialog.h \
src/SetGpgSigningDialog.h \
src/CommitDialog.h \
src/ConfigSigningDialog.h \
src/AreYouSureYouWantToContinueConnectingDialog.h \
src/LineEditDialog.h \
src/SettingProgramsForm.h \
src/InputNewTagDialog.h \
src/EditTagsDialog.h \
darktheme/src/DarkStyle.h \
darktheme/src/NinePatch.h \
darktheme/src/StandardStyle.h \
darktheme/src/TraditionalWindowsStyleTreeControl.h \
- src/EditGitIgnoreDialog.h
+ src/EditGitIgnoreDialog.h \
+ src/SelectItemDialog.h
FORMS += \
src/MainWindow.ui \
src/ConfigCredentialHelperDialog.ui \
src/TextEditDialog.ui \
src/SettingsDialog.ui \
src/MergeBranchDialog.ui \
src/CloneDialog.ui \
src/AboutDialog.ui \
src/RepositoryPropertyDialog.ui \
src/CommitPropertyDialog.ui \
src/DeleteTagsDialog.ui \
src/SelectCommandDialog.ui \
src/FileDiffWidget.ui \
src/FileHistoryWindow.ui \
src/FilePropertyDialog.ui \
src/BigDiffWindow.ui \
src/CommitExploreWindow.ui \
src/SetRemoteUrlDialog.ui \
src/SetUserDialog.ui \
src/SearchFromGitHubDialog.ui \
src/JumpDialog.ui \
src/CheckoutDialog.ui \
src/DeleteBranchDialog.ui \
src/PushDialog.ui \
src/SettingExampleForm.ui \
src/CreateRepositoryDialog.ui \
src/ExperimentDialog.ui \
src/SettingNetworkForm.ui \
src/SettingBehaviorForm.ui \
src/SetGlobalUserDialog.ui \
src/ReflogWindow.ui \
src/BlameWindow.ui \
src/SettingGeneralForm.ui \
src/WelcomeWizardDialog.ui \
src/CommitViewWindow.ui \
src/EditRemoteDialog.ui \
src/SelectGpgKeyDialog.ui \
src/SetGpgSigningDialog.ui \
src/CommitDialog.ui \
src/ConfigSigningDialog.ui \
src/AreYouSureYouWantToContinueConnectingDialog.ui \
src/LineEditDialog.ui \
src/SettingProgramsForm.ui \
src/InputNewTagDialog.ui \
src/EditTagsDialog.ui \
- src/EditGitIgnoreDialog.ui
+ src/EditGitIgnoreDialog.ui \
+ src/SelectItemDialog.ui
RESOURCES += \
resources.qrc
unix {
SOURCES += \
src/unix/UnixProcess.cpp \
src/unix/UnixPtyProcess.cpp
HEADERS += \
src/unix/UnixProcess.h \
src/unix/UnixPtyProcess.h
}
win32 {
SOURCES += \
src/win32/thread.cpp \
src/win32/event.cpp \
src/win32/win32.cpp \
src/win32/Win32Process.cpp \
src/win32/Win32PtyProcess.cpp
HEADERS += \
src/win32/thread.h \
src/win32/event.h \
src/win32/mutex.h \
src/win32/win32.h \
src/win32/Win32Process.h \
src/win32/Win32PtyProcess.h
}
diff --git a/Guitar_ja.qm b/Guitar_ja.qm
index 8c93ad5..ddb2eac 100644
Binary files a/Guitar_ja.qm and b/Guitar_ja.qm differ
diff --git a/Guitar_ja.ts b/Guitar_ja.ts
index b4f7cb2..70608c3 100644
--- a/Guitar_ja.ts
+++ b/Guitar_ja.ts
@@ -1,2486 +1,2321 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="ja_JP">
<context>
<name>AboutDialog</name>
<message>
<location filename="src/AboutDialog.ui" line="14"/>
<source>Dialog</source>
<translation></translation>
</message>
<message>
<location filename="src/AboutDialog.ui" line="29"/>
<location filename="src/AboutDialog.ui" line="36"/>
<location filename="src/AboutDialog.ui" line="43"/>
<location filename="src/AboutDialog.ui" line="50"/>
<source>TextLabel</source>
<translation></translation>
</message>
- <message>
- <source>About Guitar</source>
- <translation type="vanished">Guitarについて</translation>
- </message>
<message>
<location filename="src/AboutDialog.cpp" line="28"/>
<source>About %1</source>
<translation>%1 について</translation>
</message>
</context>
<context>
<name>AreYouSureYouWantToContinueConnectingDialog</name>
<message>
<location filename="src/AreYouSureYouWantToContinueConnectingDialog.ui" line="14"/>
<source>Unknown Host</source>
<translation>不明なホスト</translation>
</message>
<message>
<location filename="src/AreYouSureYouWantToContinueConnectingDialog.ui" line="20"/>
<source>Are you sure you want to continue connecting (yes/no)?</source>
- <translation>接続を続行しますか? (yes/no)</translation>
+ <translation>接続を続行しますか? (yes/no)?</translation>
</message>
<message>
<location filename="src/AreYouSureYouWantToContinueConnectingDialog.ui" line="52"/>
<source>Continue</source>
<translation>続行</translation>
</message>
<message>
<location filename="src/AreYouSureYouWantToContinueConnectingDialog.ui" line="59"/>
<source>Close</source>
<translation>閉じる</translation>
</message>
</context>
<context>
<name>BasicRepositoryDialog</name>
<message>
<location filename="src/BasicRepositoryDialog.cpp" line="66"/>
<source>Name</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/BasicRepositoryDialog.cpp" line="67"/>
<source>Purpose</source>
<translation>用途</translation>
</message>
- <message>
- <source>Remote</source>
- <translation type="vanished">リモート</translation>
- </message>
<message>
<location filename="src/BasicRepositoryDialog.cpp" line="68"/>
<source>URL</source>
<translation></translation>
</message>
</context>
<context>
<name>BigDiffWindow</name>
<message>
<location filename="src/BigDiffWindow.ui" line="14"/>
<source>Diff</source>
<translation>差分</translation>
</message>
</context>
<context>
<name>BlameWindow</name>
<message>
<location filename="src/BlameWindow.ui" line="14"/>
<source>Blame</source>
<translation></translation>
</message>
<message>
<location filename="src/BlameWindow.ui" line="45"/>
<source>Information</source>
<translation>情報</translation>
</message>
<message>
<location filename="src/BlameWindow.ui" line="54"/>
<source>Commit</source>
<translation>コミット</translation>
</message>
<message>
<location filename="src/BlameWindow.ui" line="64"/>
<source>Date</source>
<translation>日付</translation>
</message>
<message>
<location filename="src/BlameWindow.ui" line="74"/>
<source>Message</source>
<translation>メッセージ</translation>
</message>
<message>
<location filename="src/BlameWindow.ui" line="84"/>
<source>Author</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/BlameWindow.ui" line="112"/>
<source>Close</source>
<translation>閉じる</translation>
</message>
</context>
-<context>
- <name>CheckoutBranchDialog</name>
- <message>
- <source>Checkout</source>
- <translation type="vanished">チェックアウト</translation>
- </message>
- <message>
- <source>Cancel</source>
- <translation type="vanished">キャンセル</translation>
- </message>
- <message>
- <source>Current branch :</source>
- <translation type="vanished">現在のブランチ :</translation>
- </message>
-</context>
<context>
<name>CheckoutDialog</name>
<message>
<location filename="src/CheckoutDialog.ui" line="14"/>
<source>Checkout</source>
<translation>チェックアウト</translation>
</message>
<message>
<location filename="src/CheckoutDialog.ui" line="20"/>
<location filename="src/CheckoutDialog.ui" line="27"/>
<location filename="src/CheckoutDialog.ui" line="34"/>
<source>RadioButton</source>
<translation></translation>
</message>
<message>
<location filename="src/CheckoutDialog.ui" line="63"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/CheckoutDialog.ui" line="70"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
</context>
<context>
<name>CloneDialog</name>
<message>
<location filename="src/CloneDialog.ui" line="14"/>
<location filename="src/CloneDialog.ui" line="103"/>
<source>Clone</source>
<translation>クローン</translation>
</message>
<message>
<location filename="src/CloneDialog.ui" line="22"/>
<source>Remote</source>
<translation>リモート</translation>
</message>
<message>
<location filename="src/CloneDialog.ui" line="39"/>
<source>&amp;Test</source>
<translation>テスト(&amp;T)</translation>
</message>
<message>
<location filename="src/CloneDialog.ui" line="46"/>
<source>Local</source>
<translation>ローカル</translation>
</message>
<message>
<location filename="src/CloneDialog.ui" line="56"/>
<source>Browse</source>
<translation>参照</translation>
</message>
<message>
<location filename="src/CloneDialog.ui" line="83"/>
<source>Open existing local directory...</source>
<translation>既存のフォルダを開く...</translation>
</message>
<message>
<location filename="src/CloneDialog.ui" line="113"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
<message>
<location filename="src/CloneDialog.cpp" line="40"/>
<source>Search</source>
<translation>検索</translation>
</message>
<message>
<location filename="src/CloneDialog.cpp" line="41"/>
<source>GitHub</source>
<translation></translation>
</message>
<message>
<location filename="src/CloneDialog.cpp" line="108"/>
<source>Checkout into</source>
<translation>ここにチェックアウト</translation>
</message>
<message>
<location filename="src/CloneDialog.cpp" line="120"/>
<source>Open existing directory</source>
<translation>既存のフォンるだを開く</translation>
</message>
</context>
<context>
<name>CommitDialog</name>
<message>
<location filename="src/CommitDialog.ui" line="14"/>
<source>Commit</source>
<translation>コミット</translation>
</message>
<message>
<location filename="src/CommitDialog.ui" line="27"/>
<source>TextLabel</source>
<translation></translation>
</message>
<message>
<location filename="src/CommitDialog.ui" line="43"/>
<source>Author</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/CommitDialog.ui" line="56"/>
<location filename="src/CommitDialog.ui" line="76"/>
<location filename="src/CommitDialog.ui" line="115"/>
<location filename="src/CommitDialog.ui" line="135"/>
<location filename="src/CommitDialog.ui" line="155"/>
<source>---</source>
<translation></translation>
</message>
<message>
<location filename="src/CommitDialog.ui" line="63"/>
<location filename="src/CommitDialog.ui" line="142"/>
<source>Mail</source>
<translation>メール</translation>
</message>
<message>
<location filename="src/CommitDialog.ui" line="93"/>
<source>GPG Signing</source>
<translation>GPG署名</translation>
</message>
<message>
<location filename="src/CommitDialog.ui" line="102"/>
<source>ID</source>
<translation></translation>
</message>
<message>
<location filename="src/CommitDialog.ui" line="122"/>
<source>Name</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/CommitDialog.ui" line="165"/>
<source>Configure...</source>
<translation>設定...</translation>
</message>
<message>
<location filename="src/CommitDialog.ui" line="174"/>
<source>Message</source>
<translation>メッセージ</translation>
</message>
<message>
<location filename="src/CommitDialog.ui" line="199"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/CommitDialog.ui" line="209"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
</context>
<context>
<name>CommitExploreWindow</name>
<message>
<location filename="src/CommitExploreWindow.ui" line="14"/>
<source>Commit Explorer</source>
<translation>コミットエクスプローラー</translation>
</message>
<message>
<location filename="src/CommitExploreWindow.ui" line="65"/>
<source>Commit ID</source>
<translation>コミットID</translation>
</message>
<message>
<location filename="src/CommitExploreWindow.ui" line="82"/>
<source>Date</source>
<translation>日付</translation>
</message>
<message>
<location filename="src/CommitExploreWindow.ui" line="89"/>
<source>Author</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/CommitExploreWindow.cpp" line="80"/>
<source>Commit</source>
<translation>コミット</translation>
</message>
</context>
<context>
<name>CommitPropertyDialog</name>
<message>
<location filename="src/CommitPropertyDialog.ui" line="14"/>
<source>Commit Property</source>
<oldsource>Commit Properties</oldsource>
<translation>コミットのプロパティ</translation>
</message>
<message>
<location filename="src/CommitPropertyDialog.ui" line="43"/>
<source>Date</source>
<translation>日付</translation>
</message>
<message>
<location filename="src/CommitPropertyDialog.ui" line="53"/>
<source>Author</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/CommitPropertyDialog.ui" line="63"/>
<location filename="src/CommitPropertyDialog.ui" line="187"/>
<source>Mail</source>
<translation>メール</translation>
</message>
<message>
<location filename="src/CommitPropertyDialog.ui" line="151"/>
<source>GPG Sign</source>
<translation>GPG署名</translation>
</message>
<message>
<location filename="src/CommitPropertyDialog.ui" line="167"/>
<source>ID</source>
<translation></translation>
</message>
<message>
<location filename="src/CommitPropertyDialog.ui" line="177"/>
<source>Name</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/CommitPropertyDialog.ui" line="224"/>
<source>Commit ID</source>
<translation>コミットID</translation>
</message>
<message>
<location filename="src/CommitPropertyDialog.ui" line="234"/>
<source>Parent IDs</source>
<translation>親ID</translation>
</message>
<message>
<location filename="src/CommitPropertyDialog.ui" line="256"/>
<source>Files...</source>
<translation>ファイル...</translation>
</message>
<message>
<location filename="src/CommitPropertyDialog.ui" line="276"/>
<source>Explorer</source>
<translation>エクスプローラ</translation>
</message>
<message>
<location filename="src/CommitPropertyDialog.ui" line="296"/>
<source>Checkout</source>
<translation>チェックアウト</translation>
</message>
<message>
<location filename="src/CommitPropertyDialog.ui" line="303"/>
<source>Jump</source>
<translation>移動</translation>
</message>
<message>
<location filename="src/CommitPropertyDialog.ui" line="323"/>
<source>Close</source>
<translation>閉じる</translation>
</message>
<message>
<location filename="src/CommitPropertyDialog.cpp" line="59"/>
<source>&lt;Unknown&gt;</source>
<translation>&lt;不明&gt;</translation>
</message>
</context>
<context>
<name>CommitViewWindow</name>
<message>
<location filename="src/CommitViewWindow.ui" line="14"/>
<source>Commit View</source>
<translation>コミットビュー</translation>
</message>
<message>
<location filename="src/CommitViewWindow.cpp" line="58"/>
<source>History</source>
<translation>履歴</translation>
</message>
</context>
<context>
<name>ConfigCredentialHelperDialog</name>
<message>
<location filename="src/ConfigCredentialHelperDialog.ui" line="14"/>
<source>Dialog</source>
<translation></translation>
</message>
<message>
<location filename="src/ConfigCredentialHelperDialog.ui" line="26"/>
<source>wincred</source>
<translation></translation>
</message>
<message>
<location filename="src/ConfigCredentialHelperDialog.ui" line="39"/>
<source>winstore</source>
<translation></translation>
</message>
<message>
<location filename="src/ConfigCredentialHelperDialog.ui" line="52"/>
<source>None</source>
<translation>なし</translation>
</message>
<message>
<location filename="src/ConfigCredentialHelperDialog.ui" line="65"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/ConfigCredentialHelperDialog.ui" line="78"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
<message>
<location filename="src/ConfigCredentialHelperDialog.ui" line="91"/>
<source>Other</source>
<translation>その他</translation>
</message>
</context>
<context>
<name>ConfigSigningDialog</name>
<message>
<location filename="src/ConfigSigningDialog.ui" line="14"/>
<source>Signing Policy</source>
<translation>署名ポリシー</translation>
</message>
<message>
<location filename="src/ConfigSigningDialog.ui" line="20"/>
<source>Config commit.gpgsign</source>
<translation>commit.gpgsign の設定</translation>
</message>
<message>
<location filename="src/ConfigSigningDialog.ui" line="26"/>
<source>global</source>
<translation></translation>
</message>
<message>
<location filename="src/ConfigSigningDialog.ui" line="36"/>
<source>local</source>
<translation></translation>
</message>
<message>
<location filename="src/ConfigSigningDialog.ui" line="64"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/ConfigSigningDialog.ui" line="71"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
</context>
<context>
<name>CreateRepositoryDialog</name>
<message>
<location filename="src/CreateRepositoryDialog.ui" line="14"/>
<location filename="src/CreateRepositoryDialog.cpp" line="42"/>
<location filename="src/CreateRepositoryDialog.cpp" line="46"/>
<location filename="src/CreateRepositoryDialog.cpp" line="50"/>
<location filename="src/CreateRepositoryDialog.cpp" line="54"/>
<source>Create Repository</source>
<translation>リポジトリの作成</translation>
</message>
<message>
<location filename="src/CreateRepositoryDialog.ui" line="22"/>
<source>Path</source>
<translation>パス</translation>
</message>
<message>
<location filename="src/CreateRepositoryDialog.ui" line="32"/>
<source>Browse</source>
<translation>参照</translation>
</message>
<message>
<location filename="src/CreateRepositoryDialog.ui" line="54"/>
<source>Bookmark</source>
<translation>ブックマーク</translation>
</message>
<message>
<location filename="src/CreateRepositoryDialog.ui" line="63"/>
<location filename="src/CreateRepositoryDialog.ui" line="88"/>
<source>Name</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/CreateRepositoryDialog.ui" line="76"/>
<source>Remote</source>
<translation>リモート</translation>
</message>
<message>
<location filename="src/CreateRepositoryDialog.ui" line="98"/>
<source>URL</source>
<translation></translation>
</message>
<message>
<location filename="src/CreateRepositoryDialog.ui" line="108"/>
<source>Test</source>
<translation>テスト</translation>
</message>
<message>
<location filename="src/CreateRepositoryDialog.ui" line="146"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/CreateRepositoryDialog.ui" line="153"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
<message>
<location filename="src/CreateRepositoryDialog.cpp" line="19"/>
<source>A valid git repository already exists there.</source>
<translation>有効なリポジトリが既に存在しています。</translation>
</message>
<message>
<location filename="src/CreateRepositoryDialog.cpp" line="42"/>
<location filename="src/CreateRepositoryDialog.cpp" line="50"/>
<source>The specified path is not a directory.</source>
<translation>指定されたパスはフォルダではありません。</translation>
</message>
<message>
<location filename="src/CreateRepositoryDialog.cpp" line="54"/>
<source>Remote name is invalid.</source>
<translation>リモート名が無効です。</translation>
</message>
<message>
<location filename="src/CreateRepositoryDialog.cpp" line="62"/>
<source>Destination Path</source>
<translation>作成先のパス</translation>
</message>
</context>
<context>
<name>DeleteBranchDialog</name>
<message>
<location filename="src/DeleteBranchDialog.ui" line="14"/>
<source>Delete Branch</source>
<translation>ブランチの削除</translation>
</message>
<message>
<location filename="src/DeleteBranchDialog.ui" line="25"/>
<source>&amp;All branches</source>
<translation>全てのブランチ(&amp;A)</translation>
</message>
<message>
<location filename="src/DeleteBranchDialog.ui" line="45"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/DeleteBranchDialog.ui" line="52"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
</context>
<context>
<name>DeleteTagsDialog</name>
<message>
<location filename="src/DeleteTagsDialog.ui" line="14"/>
<source>Delete tags</source>
<translation>タグを削除</translation>
</message>
<message>
<location filename="src/DeleteTagsDialog.ui" line="32"/>
<source>Check all</source>
<translation>全てチェック</translation>
</message>
<message>
<location filename="src/DeleteTagsDialog.ui" line="52"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/DeleteTagsDialog.ui" line="62"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
</context>
<context>
<name>EditGitIgnoreDialog</name>
<message>
<location filename="src/EditGitIgnoreDialog.ui" line="14"/>
<source>Edit Git Ignore</source>
<translation>Gitで無視するファイルの編集</translation>
</message>
<message>
<location filename="src/EditGitIgnoreDialog.ui" line="20"/>
<location filename="src/EditGitIgnoreDialog.ui" line="27"/>
<location filename="src/EditGitIgnoreDialog.ui" line="34"/>
<location filename="src/EditGitIgnoreDialog.ui" line="41"/>
<source>RadioButton</source>
<translation></translation>
</message>
<message>
<location filename="src/EditGitIgnoreDialog.ui" line="63"/>
<source>Edit the file</source>
<translation>ファイルを編集する</translation>
</message>
<message>
<location filename="src/EditGitIgnoreDialog.ui" line="83"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/EditGitIgnoreDialog.ui" line="90"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
</context>
<context>
<name>EditRemoteDialog</name>
<message>
<location filename="src/EditRemoteDialog.ui" line="14"/>
<source>Edit Remote</source>
<translation>リモートの編集</translation>
</message>
<message>
<location filename="src/EditRemoteDialog.ui" line="20"/>
<source>Remote</source>
<translation>リモート</translation>
</message>
<message>
<location filename="src/EditRemoteDialog.ui" line="26"/>
<source>Name</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/EditRemoteDialog.ui" line="33"/>
<source>URL</source>
<translation></translation>
</message>
<message>
<location filename="src/EditRemoteDialog.ui" line="53"/>
<source>&amp;Test</source>
<translation>テスト(&amp;T)</translation>
</message>
<message>
<location filename="src/EditRemoteDialog.ui" line="81"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/EditRemoteDialog.ui" line="88"/>
<source>Close</source>
<translation>閉じる</translation>
</message>
</context>
-<context>
- <name>EditTagDialog</name>
- <message>
- <source>Edit tag</source>
- <translation type="vanished">タグの編集</translation>
- </message>
- <message>
- <source>Tag</source>
- <translation type="vanished">タグ</translation>
- </message>
- <message>
- <source>Push tags</source>
- <translation type="vanished">タグをプッシュする</translation>
- </message>
- <message>
- <source>Cancel</source>
- <translation type="vanished">キャンセル</translation>
- </message>
-</context>
<context>
<name>EditTagsDialog</name>
<message>
<location filename="src/EditTagsDialog.ui" line="14"/>
<source>Edit Tags</source>
<translation>タグの編集</translation>
</message>
<message>
<location filename="src/EditTagsDialog.ui" line="41"/>
<source>Add...</source>
<translation>追加...</translation>
</message>
<message>
<location filename="src/EditTagsDialog.ui" line="48"/>
<source>Delete</source>
<translation>削除</translation>
</message>
<message>
<location filename="src/EditTagsDialog.ui" line="68"/>
<source>Close</source>
<translation>閉じる</translation>
</message>
</context>
<context>
<name>ExperimentDialog</name>
<message>
<location filename="src/ExperimentDialog.ui" line="14"/>
<source>Dialog</source>
<translation></translation>
</message>
</context>
<context>
<name>FileDiffWidget</name>
<message>
<location filename="src/FileDiffWidget.ui" line="14"/>
<source>Dialog</source>
<translation></translation>
</message>
</context>
<context>
<name>FileHistoryWindow</name>
<message>
<location filename="src/FileHistoryWindow.ui" line="14"/>
<source>File History</source>
<translation>ファイルの履歴</translation>
</message>
<message>
<location filename="src/FileHistoryWindow.ui" line="20"/>
<location filename="src/FileHistoryWindow.ui" line="27"/>
<source>TextLabel</source>
<translation></translation>
</message>
<message>
<location filename="src/FileHistoryWindow.cpp" line="112"/>
<source>Commit</source>
<translation>コミット</translation>
</message>
<message>
<location filename="src/FileHistoryWindow.cpp" line="113"/>
<source>Date</source>
<translation>日付</translation>
</message>
<message>
<location filename="src/FileHistoryWindow.cpp" line="114"/>
<source>Author</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/FileHistoryWindow.cpp" line="115"/>
<source>Description</source>
<translation>概要</translation>
</message>
</context>
-<context>
- <name>FilePreviewWidget</name>
- <message>
- <source>Save as...</source>
- <translation type="vanished">名前を付けて保存...</translation>
- </message>
- <message>
- <source>Save as</source>
- <translation type="vanished">名前を付けて保存</translation>
- </message>
-</context>
<context>
<name>FilePropertyDialog</name>
<message>
<location filename="src/FilePropertyDialog.ui" line="14"/>
<source>File Property</source>
<oldsource>File Properties</oldsource>
<translation>ファイルのプロパティ</translation>
</message>
<message>
<location filename="src/FilePropertyDialog.ui" line="78"/>
<source>&amp;Close</source>
<translation>閉じる(&amp;C)</translation>
</message>
</context>
<context>
<name>FileViewWidget</name>
<message>
<location filename="src/FileViewWidget.cpp" line="31"/>
<source>Form</source>
<translation></translation>
</message>
</context>
<context>
<name>InputNewTagDialog</name>
<message>
<location filename="src/InputNewTagDialog.ui" line="14"/>
<source>Edit tag</source>
<translation>タグの編集</translation>
</message>
<message>
<location filename="src/InputNewTagDialog.ui" line="28"/>
<source>Tag</source>
<translation>タグ</translation>
</message>
<message>
<location filename="src/InputNewTagDialog.ui" line="55"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/InputNewTagDialog.ui" line="62"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
</context>
<context>
<name>JumpDialog</name>
<message>
<location filename="src/JumpDialog.ui" line="14"/>
<source>Jump</source>
<translation>移動</translation>
</message>
<message>
<location filename="src/JumpDialog.ui" line="24"/>
<source>Branches and Tags</source>
<translation>ブランチとタグ</translation>
</message>
<message>
<location filename="src/JumpDialog.ui" line="47"/>
<source>&amp;Filter</source>
<translation>フィルタ(&amp;F)</translation>
</message>
<message>
<location filename="src/JumpDialog.ui" line="98"/>
<source>Find</source>
<translation>検索</translation>
</message>
<message>
<location filename="src/JumpDialog.ui" line="126"/>
<source>&amp;Checkout</source>
<translation>チェックアウト(&amp;C)</translation>
</message>
<message>
<location filename="src/JumpDialog.ui" line="146"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/JumpDialog.ui" line="153"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
<message>
<location filename="src/JumpDialog.cpp" line="28"/>
<source>Name</source>
<translation>名前</translation>
</message>
</context>
<context>
<name>LineEditDialog</name>
<message>
<location filename="src/LineEditDialog.ui" line="14"/>
<source>Dialog</source>
<translation></translation>
</message>
<message>
<location filename="src/LineEditDialog.ui" line="20"/>
<source>TextLabel</source>
<translation></translation>
</message>
<message>
<location filename="src/LineEditDialog.ui" line="45"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/LineEditDialog.ui" line="52"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
</context>
<context>
<name>MainWindow</name>
<message>
<location filename="src/MainWindow.ui" line="14"/>
<source>Guitar</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="96"/>
<location filename="src/MainWindow.ui" line="1324"/>
<location filename="src/MainWindow.ui" line="1327"/>
<location filename="src/MainWindow.cpp" line="3383"/>
<location filename="src/MainWindow.cpp" line="3388"/>
<location filename="src/MainWindow.cpp" line="3405"/>
<location filename="src/MainWindow.cpp" line="3410"/>
<source>Clone</source>
<translation>クローン</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="131"/>
<source>Fetch</source>
<translation>フェッチ</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="166"/>
<source>Pull</source>
<translation>プル</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="201"/>
<source>Push</source>
<translation>プッシュ</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="252"/>
<source>Terminal</source>
<translation>端末</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="287"/>
<source>Explorer</source>
<translation>エクスプローラ</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="373"/>
<source>Repository</source>
<translation>リポジトリ</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="380"/>
<source>Branch Name</source>
<translation>ブランチ名</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="422"/>
<source>Offline</source>
<translation>オフライン</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="432"/>
<source>Online</source>
<translation>オンライン</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="638"/>
<source>PushButton</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="752"/>
<location filename="src/MainWindow.cpp" line="2399"/>
<source>Unstage</source>
<translation>除外</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="781"/>
<source>Select all</source>
<translation>全て選択</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="816"/>
<location filename="src/MainWindow.cpp" line="2269"/>
<source>Stage</source>
<translation>追加</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="845"/>
<location filename="src/MainWindow.cpp" line="1197"/>
<location filename="src/MainWindow.cpp" line="1832"/>
<source>Commit</source>
<translation>コミット</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="976"/>
<source>&amp;File</source>
<translation>ファイル(&amp;F)</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="988"/>
<source>&amp;View</source>
<translation>表示(&amp;V)</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="994"/>
<source>&amp;Edit</source>
<translation>編集(&amp;E)</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1337"/>
<location filename="src/MainWindow.cpp" line="2153"/>
<source>Edit tags...</source>
<translation>タグの編集...</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1340"/>
<source>Edit tags</source>
<translation>タグの編集</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1381"/>
<source>push -u</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1386"/>
<source>reset HEAD~1</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1391"/>
<source>Create a repository</source>
<translation>リポジトリの作成</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1400"/>
<source>Stop process</source>
<translation>処理の停止</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1405"/>
<source>E&amp;xit</source>
<translation>終了(&amp;X)</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1408"/>
<source>Ctrl+Q</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1413"/>
<source>Reflog...</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1418"/>
<source>Property...</source>
<translation>プロパティ...</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1423"/>
<location filename="src/MainWindow.ui" line="1426"/>
<source>Set GPG signing</source>
<translation>GPS署名の指定</translation>
</message>
- <message>
- <source>&amp;Branch</source>
- <translation type="vanished">ブランチ(&amp;B)</translation>
- </message>
<message>
<location filename="src/MainWindow.ui" line="1006"/>
<source>&amp;Help</source>
<translation>ヘルプ(&amp;H)</translation>
</message>
- <message>
- <source>&amp;Tag</source>
- <oldsource>Tag</oldsource>
- <translation type="vanished">タグ(&amp;T)</translation>
- </message>
- <message>
- <source>File</source>
- <translation type="vanished">ファイル</translation>
- </message>
<message>
<location filename="src/MainWindow.ui" line="1012"/>
<source>&amp;Window</source>
<translation>ウィンドウ(&amp;W)</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1018"/>
<source>&amp;Repository</source>
<translation>リポジトリ(&amp;R)</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1038"/>
<source>Experiment</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1064"/>
<source>Log</source>
<translation>ログ</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1231"/>
<source>&amp;Open existing working copy...</source>
<translation>既存の作業コピーを開く(&amp;O)...</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1234"/>
<location filename="src/MainWindow.cpp" line="2547"/>
<source>Add existing working copy</source>
<translation>既存の作業コピーを追加</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1239"/>
<location filename="src/MainWindow.ui" line="1242"/>
<source>Refresh</source>
<translation>更新</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1245"/>
<source>F5</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1254"/>
<source>&amp;Commit</source>
<translation>コミット(&amp;C)</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1263"/>
<source>&amp;Push</source>
<translation>プッシュ(&amp;P)</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1271"/>
<source>test</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1274"/>
<source>Ctrl+T</source>
<translation></translation>
</message>
- <message>
- <source>Add all</source>
- <translation type="vanished">全て追加</translation>
- </message>
<message>
<location filename="src/MainWindow.ui" line="1283"/>
<source>Pu&amp;ll</source>
<translation>プル(&amp;L)</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1292"/>
<source>&amp;Fetch</source>
<translation>フェッチ(&amp;F)</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1297"/>
<location filename="src/MainWindow.ui" line="1300"/>
<source>Edit global .gitconfig</source>
<translation>グローバル .gitignore を編集</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1305"/>
<source>Edit .git/config</source>
<translation>.git/config を編集</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1310"/>
<source>Edit .gitignore</source>
<translation>.gitignore を編集</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1315"/>
<source>&amp;Settings</source>
<translation>設定(&amp;S)</translation>
</message>
- <message>
- <source>&amp;New branch...</source>
- <oldsource>&amp;New branch</oldsource>
- <translation type="vanished">新しいブランチ(&amp;N)...</translation>
- </message>
<message>
<location filename="src/MainWindow.ui" line="1363"/>
<source>&amp;Jump...</source>
<translation>移動(&amp;J)...</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1366"/>
<source>Ctrl+J</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1371"/>
<source>Check&amp;out...</source>
<translation>チェックアウト(&amp;O)...</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1376"/>
<location filename="src/MainWindow.cpp" line="2149"/>
<source>Delete branch...</source>
<translation>ブランチの削除...</translation>
</message>
- <message>
- <source>Check&amp;out</source>
- <translation type="vanished">チェックアウト(&amp;O)</translation>
- </message>
- <message>
- <source>&amp;Merge</source>
- <translation type="vanished">マージ(&amp;M)</translation>
- </message>
<message>
<location filename="src/MainWindow.ui" line="1332"/>
<source>&amp;About</source>
<translation>Guitarについて(&amp;A)</translation>
</message>
- <message>
- <source>Tag...</source>
- <translation type="vanished">タグ...</translation>
- </message>
<message>
<location filename="src/MainWindow.ui" line="1345"/>
<source>Push all tags</source>
<translation>全てのタグをプッシュ</translation>
</message>
- <message>
- <source>Delete tags...</source>
- <translation type="vanished">タグを削除...</translation>
- </message>
<message>
<location filename="src/MainWindow.ui" line="1350"/>
<source>Set config user</source>
<translation>ユーザー情報を設定</translation>
</message>
<message>
<location filename="src/MainWindow.ui" line="1358"/>
<source>&amp;Log</source>
<translation>ログ(&amp;L)</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="663"/>
<source>Unnamed</source>
<translation>無名</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="919"/>
<source>Default</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1196"/>
<source>Graph</source>
<translation>樹形図</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1198"/>
<source>Date</source>
<translation>日付</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1199"/>
<source>Author</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1200"/>
<source>Description</source>
<translation>概要</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1375"/>
<source>, %1 ahead</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1378"/>
<source>, %1 behind</source>
<translation></translation>
</message>
- <message>
- <source>Retrieving the log is in progress</source>
- <translation type="vanished">ログの取得中</translation>
- </message>
- <message>
- <source>Retrieving commit log...
-</source>
- <translation type="vanished">コミットログの取得中...</translation>
- </message>
- <message>
- <source>Retrieving branches...
-</source>
- <translation type="vanished">ブランチを取得中...</translation>
- </message>
- <message>
- <source>Retrieving tags...
-</source>
- <translation type="vanished">タグを取得中...</translation>
- </message>
- <message>
- <source>Canceled by user
-</source>
- <translation type="vanished">ユーザーによるキャンセル</translation>
- </message>
<message>
<location filename="src/MainWindow.cpp" line="1598"/>
<location filename="src/MainWindow.cpp" line="1885"/>
<source>Uncommited changes</source>
<translation>コミットされていない変更があります</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1680"/>
<source>Confirm Remove</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1680"/>
<source>Are you sure you want to remove the repository from bookmarks ?</source>
<translation>リポジトリをブックマークから削除してよろしいですか?</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1680"/>
<source>(Files will NOT be deleted)</source>
<translation>(ファルは削除されません)</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1701"/>
<location filename="src/MainWindow.cpp" line="1708"/>
<source>Open Repository</source>
<translation>リポジトリを開く</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1701"/>
<source>No such folder</source>
<translation>そのようなフォルダはありません</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1701"/>
<source>Remove from bookmark ?</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1708"/>
<source>Not a valid git repository</source>
<translation>有効なリポジトリではありません</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1832"/>
<source>Commit message can not be omitted.</source>
<translation>コミットメッセージを空にすることはできません。</translation>
</message>
- <message>
- <source>Config credential helper</source>
- <translation type="vanished">資格ヘルパーの設定</translation>
- </message>
- <message>
- <source>Invalid credential helper name</source>
- <translation type="vanished">資格ヘルパー名が無効です</translation>
- </message>
- <message>
- <source>&amp;Properties</source>
- <translation type="vanished">プロパティ(&amp;P)</translation>
- </message>
<message>
<location filename="src/MainWindow.cpp" line="2045"/>
<source>&amp;Add new group</source>
<translation>新しいグループを追加(&amp;A)</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2046"/>
<source>&amp;Delete group</source>
<translation>グループを削除(&amp;D)</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2047"/>
<source>&amp;Rename group</source>
<translation>グループ名の変更(&amp;R)</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2052"/>
<source>New group</source>
<translation>新しいグループ</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2076"/>
<source>Open &amp;terminal</source>
<translation>端末を開く(&amp;T)</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2077"/>
<source>Open command promp&amp;t</source>
<translation>コマンドプロンプトを開く(&amp;T)</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2079"/>
<source>&amp;Open</source>
<translation>開く(&amp;O)</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2088"/>
<source>Open &amp;folder</source>
<translation>フォルダを開く(&amp;F)</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2090"/>
<source>&amp;Remove</source>
<translation>削除(&amp;R)</translation>
</message>
- <message>
- <source>Set remote URL</source>
- <translation type="vanished">リモートURLを設定</translation>
- </message>
<message>
<location filename="src/MainWindow.cpp" line="2143"/>
<source>Edit comment...</source>
- <translation>コメントを編集</translation>
- </message>
- <message>
- <source>Checkout...</source>
- <translation type="vanished">チェックアウト...</translation>
- </message>
- <message>
- <source>Add a tag...</source>
- <translation type="vanished">タグを追加...</translation>
+ <translation>コメントを編集...</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2155"/>
<source>Explore</source>
<translation>探索</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2160"/>
<source>Reset HEAD</source>
<translation>HEADをリセット</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2225"/>
<location filename="src/MainWindow.cpp" line="2274"/>
<location filename="src/MainWindow.cpp" line="2400"/>
<source>History</source>
<translation>履歴</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2154"/>
<source>Revert</source>
<translation>変更を破棄する</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1847"/>
<source>Failed to commit</source>
<translation>コミット失敗</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1946"/>
<source>No remote repository is registered.</source>
<translation>リモートリポジトリが登録されていません。</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1968"/>
<source>The current branch %1 has no upstream branch.</source>
<translation>現在のブランチ「%1」には上流ブランチがありません。</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1971"/>
<source>You try push --set-upstream</source>
<translation>--set-upstream を試してください</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="1977"/>
<location filename="src/MainWindow.cpp" line="4203"/>
<source>Connection refused.</source>
- <translation>接続が拒否されました</translation>
+ <translation>接続が拒否されました。</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2026"/>
<source>&amp;Property</source>
<translation>プロパティ(&amp;P)</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2148"/>
<source>Checkout/Branch...</source>
<translation>チェックアウト/ブランチ...</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2150"/>
<source>Merge</source>
<translation>マージ</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2151"/>
<source>Cherry-pick</source>
<translation>チェリーピック</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2224"/>
<location filename="src/MainWindow.cpp" line="2273"/>
<source>Untrack</source>
<translation>追跡しない</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2226"/>
<location filename="src/MainWindow.cpp" line="2275"/>
<location filename="src/MainWindow.cpp" line="2401"/>
<source>Blame</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2234"/>
<source>Delete selected files.</source>
<translation>選択されたファイルを削除します。</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2245"/>
<source>rm --cached files</source>
<translation></translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2270"/>
<source>Reset</source>
<translation>リセット</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2271"/>
<source>Ignore</source>
<translation>無視する</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2440"/>
<source>Reset a file</source>
<translation>ファイルをリセットします</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="4129"/>
<source>No repository selected</source>
<translation>リポジトリが選択されていません</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2223"/>
<location filename="src/MainWindow.cpp" line="2272"/>
<source>Delete</source>
<translation>削除</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="2424"/>
<source>Are you sure you want to run the following command ?</source>
<translation>次のコマンドを実行してよろしいですか?</translation>
</message>
- <message>
- <source>Revert a file</source>
- <translation type="vanished">ファイルの変更を破棄</translation>
- </message>
<message>
<location filename="src/MainWindow.cpp" line="2455"/>
<source>Revert all files</source>
<translation>すべてのファイルの変更を破棄</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="3086"/>
<source>Select %1 command</source>
<translation>%1 コマンドの選択</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="3382"/>
<source>A file with same name already exists</source>
<translation>同じ名前のファイルが既に存在しています</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="3387"/>
<source>A folder with same name already exists</source>
<translation>同じ名前のフォルダが既に存在しています</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="3404"/>
<source>Invalid folder</source>
<translation>無効なフォルダ</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="3409"/>
<source>No such folder. Create it now ?</source>
<translation>このフォルダはありません。作成しますか?</translation>
</message>
- <message>
- <source>Cloning is in progress</source>
- <translation type="vanished">クローン中</translation>
- </message>
<message>
<location filename="src/MainWindow.cpp" line="3802"/>
<source>The URL is a valid repository</source>
<translation>このURLは有効なリポジトリです</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="3803"/>
<source>Failed to access the URL</source>
<translation>このURLへのアクセスに失敗しました</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="3808"/>
<source>Remote Repository</source>
<translation>リモートリポジトリ</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="3945"/>
<source>Jump</source>
<translation>移動</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="3945"/>
<source>That commmit has not foud or not read yet</source>
- <translation>そのコミットは、見つからないか、まだ読み込まれていません。</translation>
+ <translation>そのコミットは、見つからないか、まだ読み込まれていません</translation>
</message>
<message>
<location filename="src/MainWindow.cpp" line="4067"/>
<source>Failed to delete the branch &apos;%1&apos;
</source>
<translation>ブランチの削除に失敗しました : &apos;%1&apos;</translation>
</message>
</context>
<context>
<name>MergeBranchDialog</name>
<message>
<location filename="src/MergeBranchDialog.ui" line="14"/>
<source>Merge</source>
<translation>マージ</translation>
</message>
<message>
<location filename="src/MergeBranchDialog.ui" line="26"/>
<source>Current branch :</source>
- <translation>現在のブランチ</translation>
+ <translation>現在のブランチ :</translation>
</message>
<message>
<location filename="src/MergeBranchDialog.ui" line="39"/>
<source>TextLabel</source>
<translation></translation>
</message>
<message>
<location filename="src/MergeBranchDialog.ui" line="62"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/MergeBranchDialog.ui" line="75"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
</context>
<context>
<name>MyImageViewWidget</name>
<message>
<location filename="src/MyImageViewWidget.cpp" line="35"/>
<source>Save as...</source>
<translation>名前を付けて保存...</translation>
</message>
<message>
<location filename="src/MyImageViewWidget.cpp" line="42"/>
<source>Save as</source>
<translation>名前を付けて保存</translation>
</message>
</context>
<context>
<name>MyTextEditorWidget</name>
<message>
<location filename="src/MyTextEditorWidget.cpp" line="35"/>
<source>Save as...</source>
<translation>名前を付けて保存...</translation>
</message>
<message>
<location filename="src/MyTextEditorWidget.cpp" line="36"/>
<source>Copy</source>
<translation>コピー</translation>
</message>
<message>
<location filename="src/MyTextEditorWidget.cpp" line="43"/>
<source>Save as</source>
<translation>名前を付けて保存</translation>
</message>
</context>
-<context>
- <name>NewBranchDialog</name>
- <message>
- <source>New branch</source>
- <translation type="vanished">新しいブランチ</translation>
- </message>
- <message>
- <source>Cancel</source>
- <translation type="vanished">キャンセル</translation>
- </message>
-</context>
-<context>
- <name>ProgressDialog</name>
- <message>
- <source>Press Esc key to abort the process</source>
- <translation type="vanished">Escキーを押すと中止します</translation>
- </message>
- <message>
- <source>Press Esc key %1 times to abort the process</source>
- <translation type="vanished">Escキーを %1 回押すと中止します</translation>
- </message>
-</context>
<context>
<name>PushDialog</name>
<message>
<location filename="src/PushDialog.ui" line="14"/>
<source>Push</source>
<translation>プッシュ</translation>
</message>
<message>
<location filename="src/PushDialog.ui" line="20"/>
<source>push --set-upstream</source>
<translation></translation>
</message>
<message>
<location filename="src/PushDialog.ui" line="26"/>
<source>Remote</source>
<translation>リモート</translation>
</message>
<message>
<location filename="src/PushDialog.ui" line="33"/>
<source>Branch</source>
<translation>ブランチ</translation>
</message>
<message>
<location filename="src/PushDialog.ui" line="64"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/PushDialog.ui" line="71"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
- <message>
- <source>Username</source>
- <translation type="vanished">ユーザー名</translation>
- </message>
- <message>
- <source>Password</source>
- <translation type="vanished">パスワード</translation>
- </message>
</context>
<context>
<name>ReflogWindow</name>
<message>
<location filename="src/ReflogWindow.ui" line="14"/>
<source>Reflog</source>
<translation></translation>
</message>
<message>
<location filename="src/ReflogWindow.ui" line="57"/>
<source>Close</source>
<translation>閉じる</translation>
</message>
<message>
<location filename="src/ReflogWindow.cpp" line="35"/>
<source>Commit</source>
<translation>コミット</translation>
</message>
<message>
<location filename="src/ReflogWindow.cpp" line="36"/>
<source>Head</source>
<translation>ヘッド</translation>
</message>
<message>
<location filename="src/ReflogWindow.cpp" line="37"/>
<source>Command</source>
<translation>コマンド</translation>
</message>
<message>
<location filename="src/ReflogWindow.cpp" line="38"/>
<source>Comment</source>
<translation>コメント</translation>
</message>
<message>
<location filename="src/ReflogWindow.cpp" line="98"/>
<source>Checkout</source>
<translation>チェックアウト</translation>
</message>
<message>
<location filename="src/ReflogWindow.cpp" line="99"/>
<source>Explorer</source>
<translation>エクスプローラ</translation>
</message>
</context>
<context>
<name>RemoteRepositoriesTableWidget</name>
<message>
<location filename="src/RemoteRepositoriesTableWidget.cpp" line="27"/>
<source>Copy URL</source>
<translation>URLをコピー</translation>
</message>
</context>
<context>
<name>RepositoryPropertyDialog</name>
<message>
<location filename="src/RepositoryPropertyDialog.ui" line="14"/>
<source>Repository Property</source>
<oldsource>Repository Properties</oldsource>
<translation>リポジトリのプロパティ</translation>
</message>
<message>
<location filename="src/RepositoryPropertyDialog.ui" line="65"/>
<source>TextLabel</source>
<translation></translation>
</message>
<message>
<location filename="src/RepositoryPropertyDialog.ui" line="92"/>
<source>Local dir :</source>
- <translation>ローカルフォルダ</translation>
+ <translation>ローカルフォルダ :</translation>
</message>
<message>
<location filename="src/RepositoryPropertyDialog.ui" line="111"/>
<source>Remote URLs</source>
<translation>リモートURL</translation>
</message>
<message>
<location filename="src/RepositoryPropertyDialog.ui" line="121"/>
<source>Remote</source>
<translation>リモート</translation>
</message>
<message>
<location filename="src/RepositoryPropertyDialog.ui" line="127"/>
<source>Add</source>
<translation>追加</translation>
</message>
<message>
<location filename="src/RepositoryPropertyDialog.ui" line="134"/>
<source>Edit</source>
<translation>編集</translation>
</message>
<message>
<location filename="src/RepositoryPropertyDialog.ui" line="154"/>
<source>Remove</source>
<translation>削除</translation>
</message>
<message>
<location filename="src/RepositoryPropertyDialog.ui" line="166"/>
<source>&amp;Remote menu</source>
<translation>リモートメニュー(&amp;R)</translation>
</message>
<message>
<location filename="src/RepositoryPropertyDialog.ui" line="186"/>
<source>Close</source>
<translation>閉じる</translation>
</message>
<message>
<location filename="src/RepositoryPropertyDialog.cpp" line="128"/>
<source>Confirm Remove</source>
<translation>削除の確認</translation>
</message>
<message>
<location filename="src/RepositoryPropertyDialog.cpp" line="128"/>
<source>Are you sure you want to remove the remote &apos;%1&apos; from the repository &apos;%2&apos; ?</source>
<translation>リポジトリ「%2」からリモート「%1」を削除してよろしいですか?</translation>
</message>
</context>
<context>
<name>SearchFromGitHubDialog</name>
<message>
<location filename="src/SearchFromGitHubDialog.ui" line="14"/>
<source>Search From GitHub</source>
<translation>GitHubから検索</translation>
</message>
<message>
<location filename="src/SearchFromGitHubDialog.ui" line="25"/>
<source>Search</source>
<translation>検索</translation>
</message>
<message>
<location filename="src/SearchFromGitHubDialog.ui" line="75"/>
<source>ssh</source>
<translation></translation>
</message>
<message>
<location filename="src/SearchFromGitHubDialog.ui" line="85"/>
<source>http</source>
<translation></translation>
</message>
<message>
<location filename="src/SearchFromGitHubDialog.ui" line="112"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/SearchFromGitHubDialog.ui" line="119"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
<message>
<location filename="src/SearchFromGitHubDialog.cpp" line="58"/>
<source>Name</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/SearchFromGitHubDialog.cpp" line="59"/>
<source>Owner</source>
<translation>オーナー</translation>
</message>
<message>
<location filename="src/SearchFromGitHubDialog.cpp" line="60"/>
<source>Score</source>
<translation>スコア</translation>
</message>
<message>
<location filename="src/SearchFromGitHubDialog.cpp" line="61"/>
<source>Description</source>
<translation>概要</translation>
</message>
</context>
<context>
<name>SelectCommandDialog</name>
<message>
<location filename="src/SelectCommandDialog.ui" line="14"/>
<source>Select git command</source>
<translation>git コマンドの選択</translation>
</message>
<message>
<location filename="src/SelectCommandDialog.ui" line="20"/>
<source>TextLabel</source>
<translation></translation>
</message>
<message>
<location filename="src/SelectCommandDialog.ui" line="32"/>
<source>&amp;Browse...</source>
<translation>参照(&amp;B)...</translation>
</message>
<message>
<location filename="src/SelectCommandDialog.ui" line="52"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/SelectCommandDialog.ui" line="59"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
<message>
<location filename="src/SelectCommandDialog.cpp" line="29"/>
<source>Please select the &apos;%1&apos; command you want to use.</source>
<translation>使用したい &apos;%1&apos; コマンドを選択してください。</translation>
</message>
<message>
<location filename="src/SelectCommandDialog.cpp" line="58"/>
<location filename="src/SelectCommandDialog.cpp" line="65"/>
<source>%1 command (%2);;</source>
<translation>%1 コマンド (%2);;</translation>
</message>
<message>
<location filename="src/SelectCommandDialog.cpp" line="60"/>
<source>Executable files (*.exe)</source>
<translation>実行可能ファイル (*.exe)</translation>
</message>
- <message>
- <source>%1 command (%2);;Executable files (*.exe)</source>
- <translation type="vanished">%1 コマンド (%2);;実行可能ファイル (*.exe)</translation>
- </message>
- <message>
- <source>%1 command (%2);;All files (*)</source>
- <translation type="vanished">%1 コマンド (%2);;すべてのファイル (*)</translation>
- </message>
<message>
<location filename="src/SelectCommandDialog.cpp" line="71"/>
<source>%1 command</source>
<translation>%1 コマンド</translation>
</message>
</context>
<context>
<name>SelectGpgKeyDialog</name>
<message>
<location filename="src/SelectGpgKeyDialog.ui" line="14"/>
<source>Select GPG Key</source>
<translation>GPGキーの選択</translation>
</message>
<message>
<location filename="src/SelectGpgKeyDialog.ui" line="57"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/SelectGpgKeyDialog.ui" line="64"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
<message>
<location filename="src/SelectGpgKeyDialog.cpp" line="31"/>
<source>ID</source>
<translation></translation>
</message>
<message>
<location filename="src/SelectGpgKeyDialog.cpp" line="32"/>
<source>Name</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/SelectGpgKeyDialog.cpp" line="33"/>
<source>Mail</source>
<translation>メール</translation>
</message>
</context>
+<context>
+ <name>SelectItemDialog</name>
+ <message>
+ <location filename="src/SelectItemDialog.ui" line="14"/>
+ <source>Dialog</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="src/SelectItemDialog.ui" line="25"/>
+ <source>OK</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="src/SelectItemDialog.ui" line="32"/>
+ <source>Cancel</source>
+ <translation>キャンセル</translation>
+ </message>
+</context>
<context>
<name>SetGlobalUserDialog</name>
<message>
<location filename="src/SetGlobalUserDialog.ui" line="14"/>
<source>Global User Setting</source>
<translation>グローバルユーザー設定</translation>
</message>
<message>
<location filename="src/SetGlobalUserDialog.ui" line="28"/>
<source>Name</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/SetGlobalUserDialog.ui" line="38"/>
<source>Mail</source>
<translation>メール</translation>
</message>
<message>
<location filename="src/SetGlobalUserDialog.ui" line="65"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/SetGlobalUserDialog.ui" line="75"/>
<source>Skip</source>
<translation>スキップ</translation>
</message>
</context>
<context>
<name>SetGpgSigningDialog</name>
<message>
<location filename="src/SetGpgSigningDialog.ui" line="14"/>
<source>Set GPG Signing</source>
<translation>GPG署名の指定</translation>
</message>
<message>
<location filename="src/SetGpgSigningDialog.ui" line="26"/>
<source>Global</source>
<translation>グローバル</translation>
</message>
<message>
<location filename="src/SetGpgSigningDialog.ui" line="39"/>
<location filename="src/SetGpgSigningDialog.cpp" line="29"/>
<source>Repository</source>
<translation>リポジトリ</translation>
</message>
<message>
<location filename="src/SetGpgSigningDialog.ui" line="55"/>
<source>ID</source>
<translation></translation>
</message>
<message>
<location filename="src/SetGpgSigningDialog.ui" line="65"/>
<source>Name</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/SetGpgSigningDialog.ui" line="75"/>
<source>Mail</source>
<translation>メール</translation>
</message>
<message>
<location filename="src/SetGpgSigningDialog.ui" line="87"/>
<source>Select</source>
<translation>選択</translation>
</message>
<message>
<location filename="src/SetGpgSigningDialog.ui" line="107"/>
<source>Clear</source>
<translation>消去</translation>
</message>
<message>
<location filename="src/SetGpgSigningDialog.ui" line="121"/>
<source>Configure...</source>
<translation>設定...</translation>
</message>
<message>
<location filename="src/SetGpgSigningDialog.ui" line="141"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/SetGpgSigningDialog.ui" line="148"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
</context>
<context>
<name>SetRemoteUrlDialog</name>
<message>
<location filename="src/SetRemoteUrlDialog.ui" line="14"/>
<source>Set Remote URL</source>
<translation>リモートURLの設定</translation>
</message>
<message>
<location filename="src/SetRemoteUrlDialog.ui" line="20"/>
<source>Current URLs</source>
<translation>現在のURL</translation>
</message>
<message>
<location filename="src/SetRemoteUrlDialog.ui" line="30"/>
<source>New URL</source>
<translation>新しいURL</translation>
</message>
<message>
<location filename="src/SetRemoteUrlDialog.ui" line="36"/>
<source>Name</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/SetRemoteUrlDialog.ui" line="91"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/SetRemoteUrlDialog.ui" line="98"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
- <message>
- <source>Remote</source>
- <translation type="vanished">リモート</translation>
- </message>
<message>
<location filename="src/SetRemoteUrlDialog.ui" line="43"/>
<source>URL</source>
<translation></translation>
</message>
<message>
<location filename="src/SetRemoteUrlDialog.ui" line="63"/>
<source>&amp;Test</source>
<translation>テスト(&amp;T)</translation>
</message>
- <message>
- <source>&amp;Apply</source>
- <translation type="vanished">適用(&amp;A)</translation>
- </message>
- <message>
- <source>&amp;Close</source>
- <translation type="vanished">閉じる(&amp;C)</translation>
- </message>
- <message>
- <source>Purpose</source>
- <oldsource>Porpose</oldsource>
- <translation type="vanished">用途</translation>
- </message>
- <message>
- <source>Origin</source>
- <translation type="vanished">オリジン</translation>
- </message>
</context>
<context>
<name>SetUserDialog</name>
<message>
<location filename="src/SetUserDialog.ui" line="14"/>
<source>Set User</source>
<translation>ユーザーの設定</translation>
</message>
<message>
<location filename="src/SetUserDialog.ui" line="20"/>
<source>Global</source>
<translation>グローバル</translation>
</message>
<message>
<location filename="src/SetUserDialog.ui" line="27"/>
<location filename="src/SetUserDialog.cpp" line="31"/>
<source>Repository</source>
<translation>リポジトリ</translation>
</message>
<message>
<location filename="src/SetUserDialog.ui" line="42"/>
<source>Name</source>
<translation>名前</translation>
</message>
<message>
<location filename="src/SetUserDialog.ui" line="52"/>
<source>Mail</source>
<translation>メール</translation>
</message>
<message>
<location filename="src/SetUserDialog.ui" line="66"/>
<source>Get icon from Gravatar</source>
<translation>Gravatarからアイコンを取得</translation>
</message>
<message>
<location filename="src/SetUserDialog.ui" line="128"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/SetUserDialog.ui" line="138"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
</context>
<context>
<name>SettingBehaviorForm</name>
<message>
<location filename="src/SettingBehaviorForm.ui" line="14"/>
<source>Behavior</source>
<translation>動作</translation>
</message>
<message>
<location filename="src/SettingBehaviorForm.ui" line="20"/>
+ <location filename="src/SettingBehaviorForm.cpp" line="43"/>
+ <source>Default working folder</source>
+ <translation>既定の作業フォルダ</translation>
+ </message>
+ <message>
+ <location filename="src/SettingBehaviorForm.ui" line="29"/>
+ <source>Browse...</source>
+ <translation>参照...</translation>
+ </message>
+ <message>
+ <location filename="src/SettingBehaviorForm.ui" line="39"/>
<source>Automatically fetch when opening the repository</source>
<translation>リポジトリを開くとき自動的にフェッチする</translation>
</message>
<message>
- <location filename="src/SettingBehaviorForm.ui" line="27"/>
+ <location filename="src/SettingBehaviorForm.ui" line="46"/>
<source>Get committer&apos;s icon from gravatar.com</source>
<translation>gravatar.comからアイコンを取得する</translation>
</message>
<message>
- <location filename="src/SettingBehaviorForm.ui" line="36"/>
+ <location filename="src/SettingBehaviorForm.ui" line="55"/>
<source>Maximum number of commit item acquisitions</source>
<translation>取得するコミット情報の最大個数</translation>
</message>
<message>
- <location filename="src/SettingBehaviorForm.ui" line="69"/>
- <source>GPG Signing Policy</source>
+ <location filename="src/SettingBehaviorForm.ui" line="88"/>
+ <source>GPG signing policy</source>
+ <oldsource>GPG Signing Policy</oldsource>
<translation>GPG署名ポリシー</translation>
</message>
<message>
- <location filename="src/SettingBehaviorForm.ui" line="76"/>
+ <location filename="src/SettingBehaviorForm.ui" line="95"/>
<source>Configure...</source>
<translation>設定...</translation>
</message>
</context>
<context>
<name>SettingExampleForm</name>
<message>
<location filename="src/SettingExampleForm.ui" line="14"/>
<source>Example</source>
<translation></translation>
</message>
<message>
<location filename="src/SettingExampleForm.ui" line="20"/>
<source>Underconstruction</source>
<translation></translation>
</message>
</context>
<context>
<name>SettingGeneralForm</name>
<message>
<location filename="src/SettingGeneralForm.ui" line="14"/>
<source>General</source>
<translation>一般</translation>
</message>
<message>
<location filename="src/SettingGeneralForm.ui" line="20"/>
+ <source>Language</source>
+ <translation>言語</translation>
+ </message>
+ <message>
+ <location filename="src/SettingGeneralForm.ui" line="31"/>
+ <source>Change Language...</source>
+ <translation>言語の変更...</translation>
+ </message>
+ <message>
+ <location filename="src/SettingGeneralForm.ui" line="54"/>
+ <source>Change Theme...</source>
+ <translation>テーマの変更...</translation>
+ </message>
+ <message>
+ <location filename="src/SettingGeneralForm.ui" line="66"/>
<source>Remember and restore window position</source>
- <translation>ウィンドウの位置を記憶と復元する</translation>
+ <translation>ウィンドウの位置を記憶し復元する</translation>
</message>
<message>
- <location filename="src/SettingGeneralForm.ui" line="27"/>
+ <location filename="src/SettingGeneralForm.ui" line="73"/>
<source>Enable high DPI scaling</source>
<translation>高精細画面のスケーリングを行う</translation>
</message>
<message>
- <location filename="src/SettingGeneralForm.ui" line="34"/>
- <location filename="src/SettingGeneralForm.cpp" line="45"/>
- <source>Default working folder</source>
- <translation>既定の作業フォルダ</translation>
+ <location filename="src/SettingGeneralForm.ui" line="43"/>
+ <source>Theme</source>
+ <translation>テーマ</translation>
</message>
<message>
- <location filename="src/SettingGeneralForm.ui" line="43"/>
- <source>Browse...</source>
- <translation>参照...</translation>
+ <location filename="src/SettingGeneralForm.cpp" line="16"/>
+ <source>English</source>
+ <translation></translation>
</message>
<message>
- <location filename="src/SettingGeneralForm.ui" line="53"/>
- <source>Theme</source>
- <translation>テーマ</translation>
+ <location filename="src/SettingGeneralForm.cpp" line="17"/>
+ <source>Japanese</source>
+ <translation>日本語</translation>
</message>
<message>
- <location filename="src/SettingGeneralForm.ui" line="59"/>
+ <location filename="src/SettingGeneralForm.cpp" line="19"/>
<source>Standard</source>
<translation>標準</translation>
</message>
<message>
- <location filename="src/SettingGeneralForm.ui" line="66"/>
+ <location filename="src/SettingGeneralForm.cpp" line="20"/>
<source>Dark</source>
<translation>ダーク</translation>
</message>
<message>
- <location filename="src/SettingGeneralForm.ui" line="73"/>
+ <location filename="src/SettingGeneralForm.cpp" line="78"/>
+ <source>Select Language</source>
+ <translation>言語の選択</translation>
+ </message>
+ <message>
+ <location filename="src/SettingGeneralForm.cpp" line="97"/>
+ <source>Select Theme</source>
+ <translation>テーマの選択</translation>
+ </message>
+ <message>
+ <location filename="src/SettingGeneralForm.ui" line="93"/>
<source>(Changes are applied at next run)</source>
<translation>(設定は次の実行時に有効になります)</translation>
</message>
</context>
<context>
<name>SettingNetworkForm</name>
<message>
<location filename="src/SettingNetworkForm.ui" line="14"/>
<source>Network</source>
<translation>ネットワーク</translation>
</message>
<message>
<location filename="src/SettingNetworkForm.ui" line="20"/>
- <source>Proxy Server</source>
+ <source>Proxy server</source>
+ <oldsource>Proxy Server</oldsource>
<translation>プロキシサーバー</translation>
</message>
<message>
<location filename="src/SettingNetworkForm.ui" line="26"/>
- <source>No Proxy</source>
+ <source>No proxy</source>
+ <oldsource>No Proxy</oldsource>
<translation>プロキシなし</translation>
</message>
<message>
<location filename="src/SettingNetworkForm.ui" line="33"/>
- <source>Auto Detect</source>
+ <source>Auto detect</source>
+ <oldsource>Auto Detect</oldsource>
<translation>自動検出</translation>
</message>
<message>
<location filename="src/SettingNetworkForm.ui" line="40"/>
<source>Manual</source>
<translation>手動</translation>
</message>
</context>
<context>
<name>SettingProgramsForm</name>
<message>
<location filename="src/SettingProgramsForm.ui" line="14"/>
<source>Programs</source>
<translation>プログラム</translation>
</message>
<message>
<location filename="src/SettingProgramsForm.ui" line="20"/>
<source>Git command</source>
<translation>Git コマンド</translation>
</message>
<message>
<location filename="src/SettingProgramsForm.ui" line="29"/>
<location filename="src/SettingProgramsForm.ui" line="48"/>
<location filename="src/SettingProgramsForm.ui" line="67"/>
<source>Browse...</source>
<translation>参照...</translation>
</message>
<message>
<location filename="src/SettingProgramsForm.ui" line="39"/>
<source>File command</source>
<translation>File コマンド</translation>
</message>
<message>
<location filename="src/SettingProgramsForm.ui" line="58"/>
<source>GPG command (option)</source>
<translation>GPGコマンド(オプション)</translation>
</message>
</context>
<context>
<name>SettingsDialog</name>
<message>
<location filename="src/SettingsDialog.ui" line="14"/>
<source>Settings</source>
<translation>設定</translation>
</message>
- <message>
- <source>Git command</source>
- <translation type="vanished">Git コマンド</translation>
- </message>
- <message>
- <source>Browse...</source>
- <translation type="vanished">参照...</translation>
- </message>
- <message>
- <source>File command</source>
- <translation type="vanished">File コマンド</translation>
- </message>
- <message>
- <source>Default working folder</source>
- <translation type="vanished">既定の作業フォルダ</translation>
- </message>
<message>
<location filename="src/SettingsDialog.ui" line="141"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/SettingsDialog.ui" line="148"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
</context>
<context>
<name>TextEditDialog</name>
<message>
<location filename="src/TextEditDialog.ui" line="14"/>
<source>Dialog</source>
<translation></translation>
</message>
<message>
<location filename="src/TextEditDialog.ui" line="48"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="src/TextEditDialog.ui" line="58"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
</context>
<context>
<name>WelcomeWizardDialog</name>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="14"/>
<source>Welcome to the Guitar Wizard</source>
<translation>Guitarウィザードへようこそ</translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="45"/>
<source>Helper Tools</source>
<translation>ヘルパープログラム</translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="61"/>
<location filename="src/WelcomeWizardDialog.ui" line="332"/>
<source>git</source>
<translation></translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="71"/>
<location filename="src/WelcomeWizardDialog.ui" line="88"/>
<location filename="src/WelcomeWizardDialog.ui" line="242"/>
<source>Browse</source>
<translation>参照</translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="78"/>
<location filename="src/WelcomeWizardDialog.ui" line="346"/>
<source>file</source>
<translation></translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="120"/>
<source>Global User Information</source>
<translation>グローバルユーザー情報</translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="136"/>
<source>git config --global user.name</source>
<translation></translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="146"/>
<source>git config --global user.email</source>
<translation></translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="162"/>
<source>Get icon from Gravatar</source>
<translation>Gravatarからアイコンを取得</translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="216"/>
<location filename="src/WelcomeWizardDialog.cpp" line="156"/>
<source>Default Working Folder</source>
<translation>規定の作業フォルダ</translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="232"/>
<location filename="src/WelcomeWizardDialog.ui" line="318"/>
<source>folder</source>
<translation>フォルダ</translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="274"/>
<source>Ready to play the Guitar !</source>
<translation>Guitarの準備ができました!</translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="290"/>
<source>user</source>
<translation>ユーザー</translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="304"/>
<source>email</source>
<translation>メール</translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="420"/>
<location filename="src/WelcomeWizardDialog.cpp" line="148"/>
<source>&lt;&lt; Prev</source>
<translation>&lt;&lt; 戻る</translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.ui" line="427"/>
<location filename="src/WelcomeWizardDialog.cpp" line="149"/>
<source>Next &gt;&gt;</source>
<translation>次へ &gt;&gt;</translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.cpp" line="127"/>
<source>Cancel</source>
<translation>キャンセル</translation>
</message>
<message>
<location filename="src/WelcomeWizardDialog.cpp" line="146"/>
<source>Finish</source>
<translation>完了</translation>
</message>
</context>
</TS>
diff --git a/src/ApplicationGlobal.h b/src/ApplicationGlobal.h
index af10c00..ed1ef67 100644
--- a/src/ApplicationGlobal.h
+++ b/src/ApplicationGlobal.h
@@ -1,23 +1,25 @@
#ifndef APPLICATIONGLOBAL_H
#define APPLICATIONGLOBAL_H
#include <QColor>
#include <QString>
#include "Theme.h"
struct ApplicationGlobal {
bool start_with_shift_key = false;
QString organization_name;
QString application_name;
+ QString language_id;
+ QString theme_id;
QString generic_config_dir;
QString app_config_dir;
QString config_file_path;
QString file_command;
QString gpg_command;
QColor panel_bg_color;
ThemePtr theme;
};
extern ApplicationGlobal *global;
#endif // APPLICATIONGLOBAL_H
diff --git a/src/SelectItemDialog.cpp b/src/SelectItemDialog.cpp
new file mode 100644
index 0000000..5619bea
--- /dev/null
+++ b/src/SelectItemDialog.cpp
@@ -0,0 +1,53 @@
+#include "SelectItemDialog.h"
+#include "ui_SelectItemDialog.h"
+
+SelectItemDialog::SelectItemDialog(QWidget *parent) :
+ QDialog(parent),
+ ui(new Ui::SelectItemDialog)
+{
+ ui->setupUi(this);
+ Qt::WindowFlags flags = windowFlags();
+ flags &= ~Qt::WindowContextHelpButtonHint;
+ setWindowFlags(flags);
+}
+
+SelectItemDialog::~SelectItemDialog()
+{
+ delete ui;
+}
+
+void SelectItemDialog::addItem(const QString &id, const QString &text)
+{
+ QListWidgetItem *item = new QListWidgetItem();
+ item->setText(text);
+ item->setData(Qt::UserRole, id);
+ ui->listWidget->addItem(item);
+}
+
+void SelectItemDialog::select(QString const &id)
+{
+ int n = ui->listWidget->count();
+ for (int i = 0; i < n; i++) {
+ QListWidgetItem *p = ui->listWidget->item(i);
+ if (p->data(Qt::UserRole).toString() == id) {
+ ui->listWidget->setCurrentRow(i);
+ return;
+ }
+ }
+}
+
+SelectItemDialog::Item SelectItemDialog::item() const
+{
+ Item ret;
+ QListWidgetItem *p = ui->listWidget->currentItem();
+ if (p) {
+ ret.id = p->data(Qt::UserRole).toString();
+ ret.text = p->text();
+ }
+ return ret;
+}
+
+void SelectItemDialog::on_listWidget_itemDoubleClicked(QListWidgetItem *item)
+{
+ done(Accepted);
+}
diff --git a/src/SelectItemDialog.h b/src/SelectItemDialog.h
new file mode 100644
index 0000000..7d74add
--- /dev/null
+++ b/src/SelectItemDialog.h
@@ -0,0 +1,43 @@
+#ifndef SELECTITEMDIALOG_H
+#define SELECTITEMDIALOG_H
+
+#include <QDialog>
+#include <vector>
+
+class QListWidgetItem;
+
+namespace Ui {
+class SelectItemDialog;
+}
+
+class SelectItemDialog : public QDialog {
+ Q_OBJECT
+public:
+ struct Item {
+ QString id;
+ QString text;
+ Item()
+ {
+ }
+ Item(QString const &id, QString const &text)
+ : id(id)
+ , text(text)
+ {
+ }
+ };
+public:
+ explicit SelectItemDialog(QWidget *parent = 0);
+ ~SelectItemDialog();
+
+ void addItem(QString const &item, QString const &text);
+
+ Item item() const;
+ void select(const QString &id);
+private slots:
+ void on_listWidget_itemDoubleClicked(QListWidgetItem *item);
+
+private:
+ Ui::SelectItemDialog *ui;
+};
+
+#endif // SELECTITEMDIALOG_H
diff --git a/src/SelectItemDialog.ui b/src/SelectItemDialog.ui
new file mode 100644
index 0000000..8f67a12
--- /dev/null
+++ b/src/SelectItemDialog.ui
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>SelectItemDialog</class>
+ <widget class="QDialog" name="SelectItemDialog">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>206</width>
+ <height>159</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>Dialog</string>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout">
+ <item>
+ <widget class="QListWidget" name="listWidget"/>
+ </item>
+ <item>
+ <layout class="QHBoxLayout" name="horizontalLayout">
+ <item>
+ <widget class="QPushButton" name="pushButton">
+ <property name="text">
+ <string>OK</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="pushButton_2">
+ <property name="text">
+ <string>Cancel</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>pushButton</sender>
+ <signal>clicked()</signal>
+ <receiver>SelectItemDialog</receiver>
+ <slot>accept()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>25</x>
+ <y>139</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>6</x>
+ <y>137</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>pushButton_2</sender>
+ <signal>clicked()</signal>
+ <receiver>SelectItemDialog</receiver>
+ <slot>reject()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>180</x>
+ <y>131</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>201</x>
+ <y>136</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
diff --git a/src/SettingBehaviorForm.cpp b/src/SettingBehaviorForm.cpp
index ab4a567..6667dac 100644
--- a/src/SettingBehaviorForm.cpp
+++ b/src/SettingBehaviorForm.cpp
@@ -1,34 +1,49 @@
#include "ConfigSigningDialog.h"
#include "SettingBehaviorForm.h"
#include "ui_SettingBehaviorForm.h"
+#include "common/misc.h"
+#include <QFileDialog>
SettingBehaviorForm::SettingBehaviorForm(QWidget *parent) :
AbstractSettingForm(parent),
ui(new Ui::SettingBehaviorForm)
{
ui->setupUi(this);
}
SettingBehaviorForm::~SettingBehaviorForm()
{
delete ui;
}
void SettingBehaviorForm::exchange(bool save)
{
if (save) {
settings()->automatically_fetch_when_opening_the_repository = ui->checkBox_auto_fetch->isChecked();
settings()->get_committer_icon = ui->checkBox_get_committer_icon->isChecked();
settings()->maximum_number_of_commit_item_acquisitions = ui->spinBox_max_commit_item_acquisitions->value();
+ settings()->default_working_dir = ui->lineEdit_default_working_dir->text();
} else {
ui->checkBox_auto_fetch->setChecked(settings()->automatically_fetch_when_opening_the_repository);
ui->checkBox_get_committer_icon->setChecked(settings()->get_committer_icon);
ui->spinBox_max_commit_item_acquisitions->setValue(settings()->maximum_number_of_commit_item_acquisitions);
+ ui->lineEdit_default_working_dir->setText(settings()->default_working_dir);
}
}
void SettingBehaviorForm::on_pushButton_signing_policy_clicked()
{
ConfigSigningDialog dlg(this, mainwindow(), false);
dlg.exec();
}
+
+void SettingBehaviorForm::on_pushButton_browse_default_working_dir_clicked()
+{
+ QString dir = ui->lineEdit_default_working_dir->text();
+ dir = QFileDialog::getExistingDirectory(this, tr("Default working folder"), dir);
+ dir = misc::normalizePathSeparator(dir);
+ if (QFileInfo(dir).isDir()) {
+ settings()->default_working_dir = dir;
+ ui->lineEdit_default_working_dir->setText(dir);
+ }
+}
diff --git a/src/SettingBehaviorForm.h b/src/SettingBehaviorForm.h
index b0a2df0..72674cd 100644
--- a/src/SettingBehaviorForm.h
+++ b/src/SettingBehaviorForm.h
@@ -1,30 +1,31 @@
#ifndef SETTINGBEHAVIORFORM_H
#define SETTINGBEHAVIORFORM_H
#include "AbstractSettingForm.h"
#include <QWidget>
namespace Ui {
class SettingBehaviorForm;
}
class SettingBehaviorForm : public AbstractSettingForm
{
Q_OBJECT
public:
explicit SettingBehaviorForm(QWidget *parent = 0);
~SettingBehaviorForm();
private:
Ui::SettingBehaviorForm *ui;
// AbstractSettingForm interface
public:
void exchange(bool save);
private slots:
void on_pushButton_signing_policy_clicked();
+ void on_pushButton_browse_default_working_dir_clicked();
};
#endif // SETTINGBEHAVIORFORM_H
diff --git a/src/SettingBehaviorForm.ui b/src/SettingBehaviorForm.ui
index d9db601..235d585 100644
--- a/src/SettingBehaviorForm.ui
+++ b/src/SettingBehaviorForm.ui
@@ -1,99 +1,126 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>SettingBehaviorForm</class>
<widget class="QWidget" name="SettingBehaviorForm">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>400</width>
<height>300</height>
</rect>
</property>
<property name="windowTitle">
<string>Behavior</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
+ <item>
+ <widget class="QGroupBox" name="groupBox_2">
+ <property name="title">
+ <string>Default working folder</string>
+ </property>
+ <layout class="QHBoxLayout" name="horizontalLayout_3">
+ <item>
+ <widget class="QLineEdit" name="lineEdit_default_working_dir"/>
+ </item>
+ <item>
+ <widget class="QPushButton" name="pushButton_browse_default_working_dir">
+ <property name="text">
+ <string>Browse...</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
<item>
<widget class="QCheckBox" name="checkBox_auto_fetch">
<property name="text">
<string>Automatically fetch when opening the repository</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="checkBox_get_committer_icon">
<property name="text">
<string>Get committer's icon from gravatar.com</string>
</property>
</widget>
</item>
<item>
<layout class="QFormLayout" name="formLayout">
<item row="0" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Maximum number of commit item acquisitions</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QSpinBox" name="spinBox_max_commit_item_acquisitions">
<property name="minimum">
<number>1000</number>
</property>
<property name="maximum">
<number>100000</number>
</property>
<property name="singleStep">
<number>1000</number>
</property>
<property name="value">
<number>10000</number>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QLabel" name="label">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
- <string>GPG Signing Policy</string>
+ <string>GPG signing policy</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_signing_policy">
<property name="text">
<string>Configure...</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>275</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
+ <tabstops>
+ <tabstop>lineEdit_default_working_dir</tabstop>
+ <tabstop>pushButton_browse_default_working_dir</tabstop>
+ <tabstop>checkBox_auto_fetch</tabstop>
+ <tabstop>checkBox_get_committer_icon</tabstop>
+ <tabstop>spinBox_max_commit_item_acquisitions</tabstop>
+ <tabstop>pushButton_signing_policy</tabstop>
+ </tabstops>
<resources/>
<connections/>
</ui>
diff --git a/src/SettingGeneralForm.cpp b/src/SettingGeneralForm.cpp
index 3c5928d..981804c 100644
--- a/src/SettingGeneralForm.cpp
+++ b/src/SettingGeneralForm.cpp
@@ -1,51 +1,111 @@
+#include "MySettings.h"
+#include "SelectItemDialog.h"
+#include "ApplicationGlobal.h"
#include "SettingGeneralForm.h"
#include "ui_SettingGeneralForm.h"
#include "common/misc.h"
#include <QFileDialog>
SettingGeneralForm::SettingGeneralForm(QWidget *parent) :
AbstractSettingForm(parent),
ui(new Ui::SettingGeneralForm)
{
ui->setupUi(this);
+
+ langs.push_back(SelectItemDialog::Item("en", tr("English")));
+ langs.push_back(SelectItemDialog::Item("ja", tr("Japanese")));
+
+ themes.push_back(SelectItemDialog::Item("standard", tr("Standard")));
+ themes.push_back(SelectItemDialog::Item("dark", tr("Dark")));
+
+ updateLanguage();
+ updateTheme();
}
SettingGeneralForm::~SettingGeneralForm()
{
delete ui;
}
void SettingGeneralForm::exchange(bool save)
{
if (save) {
settings()->remember_and_restore_window_position = ui->checkBox_save_window_pos->isChecked();
settings()->enable_high_dpi_scaling = ui->checkBox_enable_high_dpi_scaling->isChecked();
- settings()->default_working_dir = ui->lineEdit_default_working_dir->text();
- if (ui->radioButton_theme_dark->isChecked()) {
- settings()->theme = "dark";
- } else {
- settings()->theme = "standard";
- }
} else {
ui->checkBox_save_window_pos->setChecked(settings()->remember_and_restore_window_position);
ui->checkBox_enable_high_dpi_scaling->setChecked(settings()->enable_high_dpi_scaling);
- ui->lineEdit_default_working_dir->setText(settings()->default_working_dir);
- if (settings()->theme.compare("dark", Qt::CaseInsensitive) == 0) {
- ui->radioButton_theme_dark->click();
- } else {
- ui->radioButton_theme_standard->click();
- }
}
}
void SettingGeneralForm::on_pushButton_browse_default_working_dir_clicked()
{
- QString dir = ui->lineEdit_default_working_dir->text();
- dir = QFileDialog::getExistingDirectory(this, tr("Default working folder"), dir);
- dir = misc::normalizePathSeparator(dir);
- if (QFileInfo(dir).isDir()) {
- settings()->default_working_dir = dir;
- ui->lineEdit_default_working_dir->setText(dir);
+}
+
+void SettingGeneralForm::updateLanguage()
+{
+ QString id = global->language_id;
+ if (id.isEmpty()) {
+ id = "en";
+ }
+ for (SelectItemDialog::Item const &item : langs) {
+ if (item.id == id) {
+ ui->lineEdit_language->setText(item.text);
+ return;
+ }
+ }
+}
+
+void SettingGeneralForm::updateTheme()
+{
+ QString id = global->theme_id;
+ if (id.isEmpty()) {
+ id = "standard";
+ }
+ for (SelectItemDialog::Item const &item : themes) {
+ if (item.id == id) {
+ ui->lineEdit_theme->setText(item.text);
+ return;
+ }
+ }
+}
+
+void SettingGeneralForm::on_pushButton_change_language_clicked()
+{
+
+ SelectItemDialog dlg(this);
+ dlg.setWindowTitle(tr("Select Language"));
+ for (SelectItemDialog::Item const &item : langs) {
+ dlg.addItem(item.id, item.text);
+ }
+ dlg.select(global->language_id.isEmpty() ? "en" : global->language_id);
+ if (dlg.exec() == QDialog::Accepted) {
+ SelectItemDialog::Item item = dlg.item();
+ global->language_id = item.id;
+ MySettings s;
+ s.beginGroup("UI");
+ s.setValue("Language", global->language_id);
+ s.endGroup();
+ updateLanguage();
+ }
+}
+
+void SettingGeneralForm::on_pushButton_change_theme_clicked()
+{
+ SelectItemDialog dlg(this);
+ dlg.setWindowTitle(tr("Select Theme"));
+ for (SelectItemDialog::Item const &item : themes) {
+ dlg.addItem(item.id, item.text);
+ }
+ dlg.select(global->theme_id.isEmpty() ? "standard" : global->theme_id);
+ if (dlg.exec() == QDialog::Accepted) {
+ SelectItemDialog::Item item = dlg.item();
+ global->theme_id = item.id;
+ MySettings s;
+ s.beginGroup("UI");
+ s.setValue("Theme", global->theme_id);
+ s.endGroup();
+ updateTheme();
}
}
diff --git a/src/SettingGeneralForm.h b/src/SettingGeneralForm.h
index bf3c11f..bfe4f2a 100644
--- a/src/SettingGeneralForm.h
+++ b/src/SettingGeneralForm.h
@@ -1,30 +1,36 @@
#ifndef SETTINGGENERALFORM_H
#define SETTINGGENERALFORM_H
#include "AbstractSettingForm.h"
+#include "SelectItemDialog.h"
#include <QWidget>
namespace Ui {
class SettingGeneralForm;
}
class SettingGeneralForm : public AbstractSettingForm
{
Q_OBJECT
-
+private:
+ QList<SelectItemDialog::Item> langs;
+ QList<SelectItemDialog::Item> themes;
public:
explicit SettingGeneralForm(QWidget *parent = 0);
~SettingGeneralForm();
private:
Ui::SettingGeneralForm *ui;
- // AbstractSettingForm interface
+ void updateLanguage();
+ void updateTheme();
public:
void exchange(bool save);
private slots:
void on_pushButton_browse_default_working_dir_clicked();
+ void on_pushButton_change_language_clicked();
+ void on_pushButton_change_theme_clicked();
};
#endif // SETTINGGENERALFORM_H
diff --git a/src/SettingGeneralForm.ui b/src/SettingGeneralForm.ui
index 37c2a1e..9fc2a09 100644
--- a/src/SettingGeneralForm.ui
+++ b/src/SettingGeneralForm.ui
@@ -1,97 +1,116 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>SettingGeneralForm</class>
<widget class="QWidget" name="SettingGeneralForm">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>400</width>
- <height>300</height>
+ <height>325</height>
</rect>
</property>
<property name="windowTitle">
<string>General</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
- <widget class="QCheckBox" name="checkBox_save_window_pos">
- <property name="text">
- <string>Remember and restore window position</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QCheckBox" name="checkBox_enable_high_dpi_scaling">
- <property name="text">
- <string>Enable high DPI scaling</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QGroupBox" name="groupBox_2">
+ <widget class="QGroupBox" name="groupBox_3">
<property name="title">
- <string>Default working folder</string>
+ <string>Language</string>
</property>
- <layout class="QHBoxLayout" name="horizontalLayout_3">
- <item>
- <widget class="QLineEdit" name="lineEdit_default_working_dir"/>
- </item>
+ <layout class="QVBoxLayout" name="verticalLayout_2">
<item>
- <widget class="QPushButton" name="pushButton_browse_default_working_dir">
- <property name="text">
- <string>Browse...</string>
- </property>
- </widget>
+ <layout class="QHBoxLayout" name="horizontalLayout">
+ <item>
+ <widget class="ReadOnlyLineEdit" name="lineEdit_language"/>
+ </item>
+ <item>
+ <widget class="QPushButton" name="pushButton_change_language">
+ <property name="text">
+ <string>Change Language...</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox">
<property name="title">
<string>Theme</string>
</property>
- <layout class="QVBoxLayout" name="verticalLayout_2">
+ <layout class="QVBoxLayout" name="verticalLayout_3">
<item>
- <widget class="QRadioButton" name="radioButton_theme_standard">
- <property name="text">
- <string>Standard</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QRadioButton" name="radioButton_theme_dark">
- <property name="text">
- <string>Dark</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="label">
- <property name="text">
- <string>(Changes are applied at next run)</string>
- </property>
- </widget>
+ <layout class="QHBoxLayout" name="horizontalLayout_2">
+ <item>
+ <widget class="ReadOnlyLineEdit" name="lineEdit_theme"/>
+ </item>
+ <item>
+ <widget class="QPushButton" name="pushButton_change_theme">
+ <property name="text">
+ <string>Change Theme...</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
</item>
</layout>
</widget>
</item>
+ <item>
+ <widget class="QCheckBox" name="checkBox_save_window_pos">
+ <property name="text">
+ <string>Remember and restore window position</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="checkBox_enable_high_dpi_scaling">
+ <property name="text">
+ <string>Enable high DPI scaling</string>
+ </property>
+ </widget>
+ </item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>275</height>
</size>
</property>
</spacer>
</item>
+ <item>
+ <widget class="QLabel" name="label">
+ <property name="text">
+ <string>(Changes are applied at next run)</string>
+ </property>
+ </widget>
+ </item>
</layout>
</widget>
+ <customwidgets>
+ <customwidget>
+ <class>ReadOnlyLineEdit</class>
+ <extends>QLineEdit</extends>
+ <header>ReadOnlyLineEdit.h</header>
+ </customwidget>
+ </customwidgets>
+ <tabstops>
+ <tabstop>lineEdit_language</tabstop>
+ <tabstop>pushButton_change_language</tabstop>
+ <tabstop>lineEdit_theme</tabstop>
+ <tabstop>pushButton_change_theme</tabstop>
+ <tabstop>checkBox_save_window_pos</tabstop>
+ <tabstop>checkBox_enable_high_dpi_scaling</tabstop>
+ </tabstops>
<resources/>
<connections/>
</ui>
diff --git a/src/SettingNetworkForm.ui b/src/SettingNetworkForm.ui
index 51ed91f..a718a5f 100644
--- a/src/SettingNetworkForm.ui
+++ b/src/SettingNetworkForm.ui
@@ -1,67 +1,67 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>SettingNetworkForm</class>
<widget class="QWidget" name="SettingNetworkForm">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>400</width>
<height>300</height>
</rect>
</property>
<property name="windowTitle">
<string>Network</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<widget class="QGroupBox" name="groupBox">
<property name="title">
- <string>Proxy Server</string>
+ <string>Proxy server</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QRadioButton" name="radioButton_no_proxy">
<property name="text">
- <string>No Proxy</string>
+ <string>No proxy</string>
</property>
</widget>
</item>
<item>
<widget class="QRadioButton" name="radioButton_auto_detect">
<property name="text">
- <string>Auto Detect</string>
+ <string>Auto detect</string>
</property>
</widget>
</item>
<item>
<widget class="QRadioButton" name="radioButton_manual">
<property name="text">
<string>Manual</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_proxy_server"/>
</item>
</layout>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>187</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>
diff --git a/src/SettingsDialog.cpp b/src/SettingsDialog.cpp
index 4707ef2..ad8b791 100644
--- a/src/SettingsDialog.cpp
+++ b/src/SettingsDialog.cpp
@@ -1,168 +1,166 @@
#include "SettingsDialog.h"
#include "ui_SettingsDialog.h"
#include "MySettings.h"
#include <QFileDialog>
#include "common/misc.h"
static int page_number = 0;
SettingsDialog::SettingsDialog(MainWindow *parent) :
QDialog(parent),
ui(new Ui::SettingsDialog)
{
ui->setupUi(this);
Qt::WindowFlags flags = windowFlags();
flags &= ~Qt::WindowContextHelpButtonHint;
setWindowFlags(flags);
mainwindow_ = parent;
loadSettings();
QTreeWidgetItem *item;
auto AddPage = [&](QWidget *page){
page->layout()->setMargin(0);
QString name = page->windowTitle();
item = new QTreeWidgetItem();
item->setText(0, name);
item->setData(0, Qt::UserRole, QVariant::fromValue((uintptr_t)(QWidget *)page));
ui->treeWidget->addTopLevelItem(item);
};
AddPage(ui->page_general);
AddPage(ui->page_programs);
AddPage(ui->page_behavior);
AddPage(ui->page_network);
AddPage(ui->page_example);
ui->treeWidget->setCurrentItem(ui->treeWidget->topLevelItem(page_number));
}
SettingsDialog::~SettingsDialog()
{
delete ui;
}
void SettingsDialog::loadSettings(ApplicationSettings *as)
{
MySettings s;
ApplicationSettings def = ApplicationSettings::defaultSettings();
auto STRING_VALUE_ = [&](QString const &name, QString *v, QString const &def){
*v = s.value(name, def).toString();
};
auto BOOL_VALUE_ = [&](QString const &name, bool *v, bool const &def){
*v = s.value(name, def).toBool();
};
auto INT_VALUE_ = [&](QString const &name, int *v, int const &def){
*v = s.value(name, def).toInt();
};
#define STRING_VALUE(NAME, SYMBOL) STRING_VALUE_(NAME, &as->SYMBOL, def.SYMBOL)
#define BOOL_VALUE(NAME, SYMBOL) BOOL_VALUE_(NAME, &as->SYMBOL, def.SYMBOL)
#define INT_VALUE(NAME, SYMBOL) INT_VALUE_(NAME, &as->SYMBOL, def.SYMBOL)
s.beginGroup("Global");
BOOL_VALUE("SaveWindowPosition", remember_and_restore_window_position);
STRING_VALUE("DefaultWorkingDirectory", default_working_dir);
STRING_VALUE("GitCommand", git_command);
STRING_VALUE("FileCommand", file_command);
STRING_VALUE("GpgCommand", gpg_command);
s.endGroup();
s.beginGroup("UI");
- STRING_VALUE("Theme", theme);
BOOL_VALUE("EnableHighDpiScaling", enable_high_dpi_scaling);
s.endGroup();
s.beginGroup("Network");
STRING_VALUE("ProxyType", proxy_type);
STRING_VALUE("ProxyServer", proxy_server);
as->proxy_server = misc::makeProxyServerURL(as->proxy_server);
BOOL_VALUE("GetCommitterIcon", get_committer_icon);
s.endGroup();
s.beginGroup("Behavior");
BOOL_VALUE("AutomaticFetch", automatically_fetch_when_opening_the_repository);
INT_VALUE("MaxCommitItemAcquisitions", maximum_number_of_commit_item_acquisitions);
s.endGroup();
}
void SettingsDialog::saveSettings(ApplicationSettings const *as)
{
MySettings s;
s.beginGroup("Global");
s.setValue("SaveWindowPosition", as->remember_and_restore_window_position);
s.setValue("DefaultWorkingDirectory", as->default_working_dir);
s.setValue("GitCommand", as->git_command);
s.setValue("FileCommand", as->file_command);
s.setValue("GpgCommand", as->gpg_command);
s.endGroup();
s.beginGroup("UI");
- s.setValue("Theme", as->theme);
s.setValue("EnableHighDpiScaling", as->enable_high_dpi_scaling);
s.endGroup();
s.beginGroup("Network");
s.setValue("ProxyType", as->proxy_type);
s.setValue("ProxyServer", misc::makeProxyServerURL(as->proxy_server));
s.setValue("GetCommitterIcon", as->get_committer_icon);
s.endGroup();
s.beginGroup("Behavior");
s.setValue("AutomaticFetch", as->automatically_fetch_when_opening_the_repository);
s.setValue("MaxCommitItemAcquisitions", as->maximum_number_of_commit_item_acquisitions);
s.endGroup();
}
void SettingsDialog::saveSettings()
{
saveSettings(&set);
}
void SettingsDialog::exchange(bool save)
{
QList<AbstractSettingForm *> forms = ui->stackedWidget->findChildren<AbstractSettingForm *>();
for (AbstractSettingForm *form : forms) {
form->exchange(save);
}
}
void SettingsDialog::loadSettings()
{
loadSettings(&set);
exchange(false);
}
void SettingsDialog::done(int r)
{
page_number = ui->treeWidget->currentIndex().row();
QDialog::done(r);
}
void SettingsDialog::accept()
{
exchange(true);
saveSettings();
done(QDialog::Accepted);
}
void SettingsDialog::on_treeWidget_currentItemChanged(QTreeWidgetItem *current, QTreeWidgetItem *previous)
{
(void)previous;
if (current) {
uintptr_t p = current->data(0, Qt::UserRole).value<uintptr_t>();
QWidget *w = reinterpret_cast<QWidget *>(p);
Q_ASSERT(w);
ui->stackedWidget->setCurrentWidget(w);
}
}
diff --git a/src/main.cpp b/src/main.cpp
index 7a643f4..93a02d2 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -1,122 +1,128 @@
#include "MainWindow.h"
#include <QApplication>
#include "ApplicationGlobal.h"
#include "MySettings.h"
#include "main.h"
#include <string>
#include <QMessageBox>
#include <QDir>
#include <QDebug>
#include <QProxyStyle>
#include <QTranslator>
#include "webclient.h"
#include "win32/win32.h"
#include "common/misc.h"
#include "../darktheme/src/DarkStyle.h"
#include <QStandardPaths>
#include "common/joinpath.h"
ApplicationGlobal *global = 0;
ApplicationSettings ApplicationSettings::defaultSettings()
{
ApplicationSettings s;
s.proxy_server = "http://squid:3128/";
return s;
}
static bool isHighDpiScalingEnabled(int argc, char *argv[])
{
MySettings s;
s.beginGroup("UI");
QVariant v = s.value("EnableHighDpiScaling");
return v.isNull() || v.toBool();
}
int main(int argc, char *argv[])
{
putenv((char *)"UNICODEMAP_JP=cp932");
ApplicationGlobal g;
global = &g;
global->organization_name = ORGANIZATION_NAME;
global->application_name = APPLICATION_NAME;
global->generic_config_dir = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
global->app_config_dir = global->generic_config_dir / global->organization_name / global->application_name;
global->config_file_path = joinpath(global->app_config_dir, global->application_name + ".ini");
if (!QFileInfo(global->app_config_dir).isDir()) {
QDir().mkpath(global->app_config_dir);
}
if (isHighDpiScalingEnabled(argc, argv)){
#if (QT_VERSION < QT_VERSION_CHECK(5, 6, 0))
qDebug() << "High DPI scaling is not supported";
#else
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
#endif
}
QApplication a(argc, argv);
a.setOrganizationName(global->organization_name);
a.setApplicationName(global->application_name);
{
MySettings s;
s.beginGroup("UI");
- QString theme = s.value("Theme").toString();
- if (theme.compare("dark", Qt::CaseInsensitive) == 0) {
+ global->language_id = s.value("Language").toString();
+ global->theme_id = s.value("Theme").toString();
+ if (global->theme_id.compare("dark", Qt::CaseInsensitive) == 0) {
global->theme = createDarkTheme();
} else {
global->theme = createStandardTheme();
}
+ s.endGroup();
}
QApplication::setStyle(global->theme->newStyle());
if (QApplication::queryKeyboardModifiers() & Qt::ShiftModifier) {
global->start_with_shift_key = true;
}
WebClient::initialize();
bool f_open_here = false;
for (int i = 1; i < argc; i++) {
std::string arg = argv[i];
if (arg == "--open-here") {
f_open_here = true;
}
}
if (global->app_config_dir.isEmpty()) {
QMessageBox::warning(0, qApp->applicationName(), "Preparation of data storage folder failed.");
return 1;
}
QTranslator translator;
{
+ if (global->language_id.isEmpty() || global->language_id == "en") {
+ // thru
+ } else {
#if defined(Q_OS_MACX)
- QString path = "../Resources/Guitar_ja";
+ QString path = "../Resources/Guitar_" + lang_id;
#else
- QString path = "Guitar_ja";
+ QString path = "Guitar_" + global->language_id;
#endif
- translator.load(path, a.applicationDirPath());
- a.installTranslator(&translator);
+ translator.load(path, a.applicationDirPath());
+ a.installTranslator(&translator);
+ }
}
MainWindow w;
global->panel_bg_color = w.palette().color(QPalette::Background);
w.setWindowIcon(QIcon(":/image/guitar.png"));
w.show();
w.shown();
if (f_open_here) {
QString dir = QDir::current().absolutePath();
w.autoOpenRepository(dir);
}
return a.exec();
}
diff --git a/src/main.h b/src/main.h
index 8a0d868..2374f77 100644
--- a/src/main.h
+++ b/src/main.h
@@ -1,25 +1,25 @@
#ifndef MAIN_H
#define MAIN_H
#include <QString>
#define ORGANIZATION_NAME "soramimi.jp"
#define APPLICATION_NAME "Guitar"
struct ApplicationSettings {
QString git_command;
QString file_command;
QString gpg_command;
QString default_working_dir;
QString proxy_type;
QString proxy_server;
- QString theme;
+// QString theme;
bool get_committer_icon = false;
bool remember_and_restore_window_position = false;
bool enable_high_dpi_scaling = true;
bool automatically_fetch_when_opening_the_repository = true;
int maximum_number_of_commit_item_acquisitions = 10000;
static ApplicationSettings defaultSettings();
};
#endif // MAIN_H

File Metadata

Mime Type
text/x-diff
Expires
Mon, Jun 22, 8:23 PM (6 d, 11 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
72941
Default Alt Text
(135 KB)

Event Timeline