mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2026-01-02 21:52:32 -06:00
Allow users to specify Python executable path
Closes #19195. PR #19644.
This commit is contained in:
@@ -404,6 +404,8 @@ void AppController::preferencesAction()
|
||||
data[u"enable_embedded_tracker"_s] = session->isTrackerEnabled();
|
||||
data[u"embedded_tracker_port"_s] = pref->getTrackerPort();
|
||||
data[u"embedded_tracker_port_forwarding"_s] = pref->isTrackerPortForwardingEnabled();
|
||||
// Python executable path
|
||||
data[u"python_executable_path"_s] = pref->getPythonExecutablePath().toString();
|
||||
// Choking algorithm
|
||||
data[u"upload_slots_behavior"_s] = static_cast<int>(session->chokingAlgorithm());
|
||||
// Seed choking algorithm
|
||||
@@ -990,6 +992,9 @@ void AppController::setPreferencesAction()
|
||||
pref->setTrackerPortForwardingEnabled(it.value().toBool());
|
||||
if (hasKey(u"enable_embedded_tracker"_s))
|
||||
session->setTrackerEnabled(it.value().toBool());
|
||||
// Python executable path
|
||||
if (hasKey(u"python_executable_path"_s))
|
||||
pref->setPythonExecutablePath(Path(it.value().toString()));
|
||||
// Choking algorithm
|
||||
if (hasKey(u"upload_slots_behavior"_s))
|
||||
session->setChokingAlgorithm(static_cast<BitTorrent::ChokingAlgorithm>(it.value().toInt()));
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
#include "base/utils/version.h"
|
||||
#include "api/isessionmanager.h"
|
||||
|
||||
inline const Utils::Version<3, 2> API_VERSION {2, 9, 4};
|
||||
inline const Utils::Version<3, 2> API_VERSION {2, 9, 5};
|
||||
|
||||
class APIController;
|
||||
class AuthController;
|
||||
|
||||
@@ -1050,6 +1050,14 @@ Use ';' to split multiple entries. Can use wildcard '*'.)QBT_TR[CONTEXT=OptionsD
|
||||
<input type="checkbox" id="embeddedTrackerPortForwarding" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="pythonExecutablePath">QBT_TR(Python executable path (may require restart):)QBT_TR[CONTEXT=OptionsDialog]</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" id="pythonExecutablePath" placeholder="QBT_TR((Auto detect if empty))QBT_TR[CONTEXT=OptionsDialog]" style="width: 15em;" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</fieldset>
|
||||
<fieldset class="settings">
|
||||
@@ -2238,6 +2246,7 @@ Use ';' to split multiple entries. Can use wildcard '*'.)QBT_TR[CONTEXT=OptionsD
|
||||
$('enableEmbeddedTracker').setProperty('checked', pref.enable_embedded_tracker);
|
||||
$('embeddedTrackerPort').setProperty('value', pref.embedded_tracker_port);
|
||||
$('embeddedTrackerPortForwarding').setProperty('checked', pref.embedded_tracker_port_forwarding);
|
||||
$('pythonExecutablePath').setProperty('value', pref.python_executable_path);
|
||||
$('uploadSlotsBehavior').setProperty('value', pref.upload_slots_behavior);
|
||||
$('uploadChokingAlgorithm').setProperty('value', pref.upload_choking_algorithm);
|
||||
$('announceAllTrackers').setProperty('checked', pref.announce_to_all_trackers);
|
||||
@@ -2671,6 +2680,7 @@ Use ';' to split multiple entries. Can use wildcard '*'.)QBT_TR[CONTEXT=OptionsD
|
||||
settings.set('enable_embedded_tracker', $('enableEmbeddedTracker').getProperty('checked'));
|
||||
settings.set('embedded_tracker_port', $('embeddedTrackerPort').getProperty('value'));
|
||||
settings.set('embedded_tracker_port_forwarding', $('embeddedTrackerPortForwarding').getProperty('checked'));
|
||||
settings.set('python_executable_path', $('pythonExecutablePath').getProperty('value'));
|
||||
settings.set('upload_slots_behavior', $('uploadSlotsBehavior').getProperty('value'));
|
||||
settings.set('upload_choking_algorithm', $('uploadChokingAlgorithm').getProperty('value'));
|
||||
settings.set('announce_to_all_trackers', $('announceAllTrackers').getProperty('checked'));
|
||||
|
||||
Reference in New Issue
Block a user