Commit c27ec4c5 authored by Dan Pascu's avatar Dan Pascu

Reorganized preferences

parent 0570b69f
......@@ -1146,7 +1146,7 @@ class VideoWidget(VideoSurface, ui_class):
def _SH_ScreenshotsFolderActionTriggered(self, pos):
settings = BlinkSettings()
QDesktopServices.openUrl(QUrl.fromLocalFile(settings.video.screenshots_directory.normalized))
QDesktopServices.openUrl(QUrl.fromLocalFile(settings.screenshots_directory.normalized))
def _SH_DetachAnimationFinished(self):
if self.detach_animation.direction() == QPropertyAnimation.Backward:
......@@ -2155,7 +2155,7 @@ class VideoScreenshot(object):
@classmethod
def filename_generator(cls):
settings = BlinkSettings()
name = os.path.join(settings.video.screenshots_directory.normalized, 'VideoCall-{:%Y%m%d-%H.%M.%S}'.format(datetime.now()))
name = os.path.join(settings.screenshots_directory.normalized, 'VideoCall-{:%Y%m%d-%H.%M.%S}'.format(datetime.now()))
yield '%s.png' % name
for x in count(1):
yield "%s-%d.png" % (name, x)
......
......@@ -10,7 +10,7 @@ import sys
from sipsimple.configuration import Setting, SettingsGroup, SettingsObject, SettingsObjectExtension
from sipsimple.configuration.datatypes import AudioCodecList, NonNegativeInteger, PositiveInteger, Path, SampleRate, VideoCodecList
from sipsimple.configuration.settings import AudioSettings, ChatSettings, EchoCancellerSettings, FileTransferSettings, LogsSettings, RTPSettings, TLSSettings
from sipsimple.configuration.settings import AudioSettings, ChatSettings, EchoCancellerSettings, LogsSettings, RTPSettings, TLSSettings
from blink import __version__
from blink.configuration.datatypes import ApplicationDataPath, AuthorizationToken, GraphTimeScale, HTTPURL, IconDescriptor, SoundFile, PresenceState, PresenceStateList
......@@ -41,10 +41,6 @@ class ChatSettingsExtension(ChatSettings):
history_directory = Setting(type=ApplicationDataPath, default=ApplicationDataPath('history'))
class FileTransferSettingsExtension(FileTransferSettings):
directory = Setting(type=Path, default=Path('~/Downloads'))
class GoogleContactsSettings(SettingsGroup):
authorization_token = Setting(type=AuthorizationToken, default=None, nillable=True)
username = Setting(type=unicode, default=None, nillable=True)
......@@ -82,7 +78,6 @@ class SIPSimpleSettingsExtension(SettingsObjectExtension):
answering_machine = AnsweringMachineSettings
audio = AudioSettingsExtension
chat = ChatSettingsExtension
file_transfer = FileTransferSettingsExtension
google_contacts = GoogleContactsSettings
logs = LogsSettingsExtension
rtp = RTPSettingsExtension
......@@ -110,16 +105,11 @@ class ChatWindowSettings(SettingsGroup):
class BlinkScreenSharingSettings(SettingsGroup):
screenshots_directory = Setting(type=Path, default=Path('~/Downloads'))
scale = Setting(type=bool, default=True)
open_fullscreen = Setting(type=bool, default=False)
open_viewonly = Setting(type=bool, default=False)
class BlinkVideoSettings(SettingsGroup):
screenshots_directory = Setting(type=Path, default=Path('~/Downloads'))
class BlinkPresenceSettings(SettingsGroup):
current_state = Setting(type=PresenceState, default=PresenceState('Available'))
state_history = Setting(type=PresenceStateList, default=PresenceStateList())
......@@ -133,5 +123,7 @@ class BlinkSettings(SettingsObject):
chat_window = ChatWindowSettings
presence = BlinkPresenceSettings
screen_sharing = BlinkScreenSharingSettings
video = BlinkVideoSettings
screenshots_directory = Setting(type=Path, default=Path('~/Downloads'))
transfers_directory = Setting(type=Path, default=Path('~/Downloads'))
......@@ -14,8 +14,7 @@ from application.python import Null
from application.system import makedirs
from zope.interface import implements
from sipsimple.configuration.settings import SIPSimpleSettings
from blink.configuration.settings import BlinkSettings
from blink.resources import Resources
from blink.sessions import FileTransferDelegate, FileTransferModel
from blink.widgets.util import ContextMenuActions
......@@ -43,7 +42,7 @@ class FileTransferWindow(base_class, ui_class):
self.actions.cancel_transfer = QAction("Cancel", self, triggered=self._AH_CancelTransfer)
self.actions.retry_transfer = QAction("Retry", self, triggered=self._AH_RetryTransfer)
self.actions.remove_entry = QAction("Remove From List", self, triggered=self._AH_RemoveEntry)
self.actions.open_downloads_folder = QAction("Open Downloads Folder", self, triggered=self._AH_OpenDownloadsFolder)
self.actions.open_downloads_folder = QAction("Open Transfers Folder", self, triggered=self._AH_OpenTransfersFolder)
self.actions.clear_list = QAction("Clear List", self, triggered=self._AH_ClearList)
self.model.itemAdded.connect(self.update_status)
......@@ -55,9 +54,8 @@ class FileTransferWindow(base_class, ui_class):
notification_center.add_observer(self, name='FileTransferDidEnd')
def show(self, activate=True):
settings = SIPSimpleSettings()
directory = settings.file_transfer.directory.normalized
makedirs(directory)
settings = BlinkSettings()
makedirs(settings.transfers_directory.normalized)
self.setAttribute(Qt.WA_ShowWithoutActivating, not activate)
super(FileTransferWindow, self).show()
self.raise_()
......@@ -130,10 +128,9 @@ class FileTransferWindow(base_class, ui_class):
item = self.listview.selectedIndexes()[0].data(Qt.UserRole)
self.model.removeItem(item)
def _AH_OpenDownloadsFolder(self):
settings = SIPSimpleSettings()
directory = settings.file_transfer.directory.normalized
QDesktopServices.openUrl(QUrl.fromLocalFile(directory))
def _AH_OpenTransfersFolder(self):
settings = BlinkSettings()
QDesktopServices.openUrl(QUrl.fromLocalFile(settings.transfers_directory.normalized))
def _AH_ClearList(self):
self.model.clear_ended()
......
......@@ -416,14 +416,14 @@ class MainWindow(base_class, ui_class):
QDesktopServices.openUrl(QUrl.fromLocalFile(directory))
def _AH_ReceivedFilesWindowActionTriggered(self, checked):
settings = SIPSimpleSettings()
directory = settings.file_transfer.directory.normalized
settings = BlinkSettings()
directory = settings.transfers_directory.normalized
makedirs(directory)
QDesktopServices.openUrl(QUrl.fromLocalFile(directory))
def _AH_ScreenshotsWindowActionTriggered(self, checked):
settings = BlinkSettings()
directory = settings.screen_sharing.screenshots_directory.normalized
directory = settings.screenshots_directory.normalized
makedirs(directory)
QDesktopServices.openUrl(QUrl.fromLocalFile(directory))
......
......@@ -303,14 +303,10 @@ class PreferencesWindow(base_class, ui_class):
self.traffic_units_button.clicked.connect(self._SH_TrafficUnitsButtonClicked)
# Screen sharing
self.screenshots_directory_browse_button.clicked.connect(self._SH_ScreenshotsDirectoryBrowseButtonClicked)
self.screen_sharing_scale_button.clicked.connect(self._SH_ScreenSharingScaleButtonClicked)
self.screen_sharing_fullscreen_button.clicked.connect(self._SH_ScreenSharingFullscreenButtonClicked)
self.screen_sharing_viewonly_button.clicked.connect(self._SH_ScreenSharingViewonlyButtonClicked)
# File transfer
self.download_directory_browse_button.clicked.connect(self._SH_DownloadDirectoryBrowseButtonClicked)
# File logging
self.trace_sip_button.clicked.connect(self._SH_TraceSIPButtonClicked)
self.trace_msrp_button.clicked.connect(self._SH_TraceMSRPButtonClicked)
......@@ -328,7 +324,11 @@ class PreferencesWindow(base_class, ui_class):
self.media_ports_start.valueChanged[int].connect(self._SH_MediaPortsStartValueChanged)
self.media_ports.valueChanged[int].connect(self._SH_MediaPortsValueChanged)
# TLS
# Files and directories
self.screenshots_directory_browse_button.clicked.connect(self._SH_ScreenshotsDirectoryBrowseButtonClicked)
self.transfers_directory_browse_button.clicked.connect(self._SH_TransfersDirectoryBrowseButtonClicked)
# TLS settings
self.tls_ca_file_editor.locationCleared.connect(self._SH_TLSCAFileEditorLocationCleared)
self.tls_ca_file_browse_button.clicked.connect(self._SH_TLSCAFileBrowseButtonClicked)
......@@ -713,14 +713,10 @@ class PreferencesWindow(base_class, ui_class):
self.traffic_units_button.setChecked(blink_settings.chat_window.session_info.bytes_per_second)
# Screen sharing settings
self.screenshots_directory_editor.setText(blink_settings.screen_sharing.screenshots_directory or u'')
self.screen_sharing_scale_button.setChecked(blink_settings.screen_sharing.scale)
self.screen_sharing_fullscreen_button.setChecked(blink_settings.screen_sharing.open_fullscreen)
self.screen_sharing_viewonly_button.setChecked(blink_settings.screen_sharing.open_viewonly)
# File transfer settings
self.download_directory_editor.setText(settings.file_transfer.directory or u'')
# File logging settings
self.trace_sip_button.setChecked(settings.logs.trace_sip)
self.trace_msrp_button.setChecked(settings.logs.trace_msrp)
......@@ -750,6 +746,8 @@ class PreferencesWindow(base_class, ui_class):
with blocked_qt_signals(self.media_ports):
self.media_ports.setValue(settings.rtp.port_range.end - settings.rtp.port_range.start)
self.screenshots_directory_editor.setText(blink_settings.screenshots_directory or u'')
self.transfers_directory_editor.setText(blink_settings.transfers_directory or u'')
self.tls_ca_file_editor.setText(settings.tls.ca_list or u'')
def load_account_settings(self, account):
......@@ -1499,13 +1497,12 @@ class PreferencesWindow(base_class, ui_class):
def _SH_ScreenshotsDirectoryBrowseButtonClicked(self, checked):
# TODO: open the file selection dialog in non-modal mode. Same for the one for TLS CA list and the IconSelector from contacts. -Dan
settings = BlinkSettings()
directory = settings.screen_sharing.screenshots_directory.normalized
directory = QFileDialog.getExistingDirectory(self, u'Select Screenshots Directory', directory) or None
directory = QFileDialog.getExistingDirectory(self, u'Select Screenshots Directory', settings.screenshots_directory.normalized) or None
if directory is not None:
directory = os.path.normpath(directory)
if directory != settings.screen_sharing.screenshots_directory:
if directory != settings.screenshots_directory:
self.screenshots_directory_editor.setText(directory)
settings.screen_sharing.screenshots_directory = directory
settings.screenshots_directory = directory
settings.save()
def _SH_ScreenSharingScaleButtonClicked(self, checked):
......@@ -1524,16 +1521,15 @@ class PreferencesWindow(base_class, ui_class):
settings.save()
# File transfer signal handlers
def _SH_DownloadDirectoryBrowseButtonClicked(self, checked):
def _SH_TransfersDirectoryBrowseButtonClicked(self, checked):
# TODO: open the file selection dialog in non-modal mode. Same for the one for TLS CA list and the IconSelector from contacts. -Dan
settings = SIPSimpleSettings()
directory = settings.file_transfer.directory.normalized
directory = QFileDialog.getExistingDirectory(self, u'Select Download Directory', directory) or None
settings = BlinkSettings()
directory = QFileDialog.getExistingDirectory(self, u'Select Transfers Directory', settings.transfers_directory.normalized) or None
if directory is not None:
directory = os.path.normpath(directory)
if directory != settings.file_transfer.directory:
self.download_directory_editor.setText(directory)
settings.file_transfer.directory = directory
if directory != settings.transfers_directory:
self.transfers_directory_editor.setText(directory)
settings.transfers_directory = directory
settings.save()
# File logging signal handlers
......
......@@ -653,7 +653,7 @@ class ScreensharingWindow(base_class, ui_class):
def _SH_ScreenshotsFolderActionTriggered(self, pos):
settings = BlinkSettings()
QDesktopServices.openUrl(QUrl.fromLocalFile(settings.screen_sharing.screenshots_directory.normalized))
QDesktopServices.openUrl(QUrl.fromLocalFile(settings.screenshots_directory.normalized))
def _SH_VNCClientTextCut(self, text):
self.clipboard.blockSignals(True)
......@@ -675,7 +675,7 @@ class Screenshot(object):
@classmethod
def filename_generator(cls):
settings = BlinkSettings()
name = os.path.join(settings.screen_sharing.screenshots_directory.normalized, 'ScreenSharing-{:%Y%m%d-%H.%M.%S}'.format(datetime.now()))
name = os.path.join(settings.screenshots_directory.normalized, 'ScreenSharing-{:%Y%m%d-%H.%M.%S}'.format(datetime.now()))
yield '%s.png' % name
for x in count(1):
yield "%s-%d.png" % (name, x)
......
......@@ -3458,8 +3458,8 @@ class FileTransfer(object):
self._file_selector = stream.file_selector
self._local_hash = hashlib.sha1()
settings = SIPSimpleSettings()
directory = settings.file_transfer.directory.normalized
settings = BlinkSettings()
directory = settings.transfers_directory.normalized
makedirs(directory)
filename = os.path.basename(self._file_selector.name)
for name in UniqueFilenameGenerator.generate(os.path.join(directory, filename)):
......
......@@ -31,7 +31,7 @@
<item row="0" column="0">
<widget class="QStackedWidget" name="pages">
<property name="currentIndex">
<number>2</number>
<number>6</number>
</property>
<widget class="QWidget" name="accounts_page">
<layout class="QGridLayout" name="accounts_layout">
......@@ -2441,98 +2441,15 @@
<string>Screen Sharing Settings</string>
</property>
<layout class="QGridLayout" name="screen_sharing_box_layout">
<property name="horizontalSpacing">
<number>3</number>
</property>
<item row="4" column="0" colspan="3">
<spacer name="screen_sharing_spacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item row="2" column="1" colspan="2">
<item row="1" column="0">
<widget class="QCheckBox" name="screen_sharing_fullscreen_button">
<property name="text">
<string>Open the viewer window in fullscreen mode</string>
</property>
</widget>
</item>
<item row="3" column="1" colspan="2">
<widget class="QCheckBox" name="screen_sharing_viewonly_button">
<property name="text">
<string>Open the viewer window in view only mode</string>
</property>
</widget>
</item>
<item row="1" column="1" colspan="2">
<widget class="QCheckBox" name="screen_sharing_scale_button">
<property name="text">
<string>Scale the remote screen to fit the viewer window</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLineEdit" name="screenshots_directory_editor">
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="screenshots_directory_label">
<property name="text">
<string>Screenshots Directory:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="0" column="2">
<widget class="QPushButton" name="screenshots_directory_browse_button">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="file_transfers_page">
<layout class="QVBoxLayout" name="file_transfer_layout">
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QGroupBox" name="file_transfer_group_box">
<property name="title">
<string>File Transfer Settings</string>
</property>
<layout class="QGridLayout" name="file_transfer_box_layout">
<property name="horizontalSpacing">
<number>3</number>
</property>
<item row="0" column="0">
<widget class="QLabel" name="download_directory_label">
<property name="text">
<string>Download Directory:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="1" column="0" colspan="3">
<spacer name="file_transfer_spacer">
<item row="3" column="0">
<spacer name="screen_sharing_spacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
......@@ -2544,17 +2461,17 @@
</property>
</spacer>
</item>
<item row="0" column="2">
<widget class="QPushButton" name="download_directory_browse_button">
<item row="0" column="0">
<widget class="QCheckBox" name="screen_sharing_scale_button">
<property name="text">
<string>Browse</string>
<string>Scale the remote screen to fit the viewer window</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLineEdit" name="download_directory_editor">
<property name="readOnly">
<bool>true</bool>
<item row="2" column="0">
<widget class="QCheckBox" name="screen_sharing_viewonly_button">
<property name="text">
<string>Open the viewer window in view only mode</string>
</property>
</widget>
</item>
......@@ -2722,35 +2639,58 @@
<number>0</number>
</property>
<item>
<widget class="QGroupBox" name="sip_group_box">
<property name="title">
<string>SIP and RTP settings</string>
</property>
<layout class="QGridLayout" name="sip_group_box_layout">
<item row="0" column="0">
<widget class="QLabel" name="transports_label">
<property name="minimumSize">
<size>
<width>130</width>
<height>0</height>
</size>
<widget class="QGroupBox" name="advanced_group_box">
<layout class="QGridLayout" name="advanced_group_box_layout">
<property name="margin">
<number>10</number>
</property>
<item row="9" column="6">
<widget class="QPushButton" name="transfers_directory_browse_button">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
<item row="13" column="0" colspan="7">
<widget class="Line" name="line_14">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item row="9" column="0">
<widget class="QLabel" name="transfers_directory_label">
<property name="text">
<string>Transports:</string>
<string>Save received files to:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QCheckBox" name="enable_udp_button">
<item row="2" column="5" rowspan="2">
<widget class="QLabel" name="port_note_label">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Enable UDP</string>
<string>Note: set SIP ports to 0 for automatic allocation</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
<property name="margin">
<number>5</number>
</property>
</widget>
</item>
<item row="0" column="2">
<item row="2" column="2">
<spacer name="transport_spacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
......@@ -2766,105 +2706,171 @@
</property>
</spacer>
</item>
<item row="0" column="3">
<widget class="QLabel" name="udp_port_label">
<item row="3" column="3">
<widget class="QLabel" name="tcp_port_label">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>UDP port:</string>
<string>TCP port:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="0" column="4">
<widget class="SIPPortEditor" name="udp_port">
<property name="specialValueText">
<string>Auto</string>
</property>
<property name="maximum">
<number>65535</number>
</property>
</widget>
</item>
<item row="0" column="5" rowspan="2">
<widget class="QLabel" name="port_note_label">
<item row="4" column="3">
<widget class="QLabel" name="tls_port_label">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Note: set SIP ports to 0 for automatic allocation</string>
<string>TLS port:</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</widget>
</item>
<item row="2" column="1">
<widget class="QCheckBox" name="enable_udp_button">
<property name="text">
<string>Enable UDP</string>
</property>
<property name="margin">
<number>5</number>
</widget>
</item>
<item row="5" column="4">
<widget class="QSpinBox" name="media_ports_start">
<property name="minimum">
<number>10000</number>
</property>
<property name="maximum">
<number>65000</number>
</property>
<property name="singleStep">
<number>1000</number>
</property>
<property name="value">
<number>50000</number>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QCheckBox" name="enable_tcp_button">
<item row="2" column="3">
<widget class="QLabel" name="udp_port_label">
<property name="text">
<string>Enable TCP</string>
<string>UDP port:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="1" column="3">
<widget class="QLabel" name="tcp_port_label">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<item row="5" column="2" colspan="2">
<widget class="QLabel" name="starting_at_label">
<property name="text">
<string>TCP port:</string>
<string>starting at:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="1" column="4">
<widget class="SIPPortEditor" name="tcp_port">
<property name="specialValueText">
<string>Auto</string>
<item row="14" column="1" colspan="5">
<widget class="LocationBar" name="tls_ca_file_editor">
<property name="toolTip">
<string>The cerfiticate authority used to validate TLS connections</string>
</property>
<property name="maximum">
<number>65535</number>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
<item row="2" column="1">
<item row="15" column="0" colspan="7">
<spacer name="advanced_spacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>30</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="0" colspan="7">
<widget class="QLabel" name="sip_and_rtp_label">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>SIP and RTP</string>
</property>
</widget>
</item>
<item row="11" column="0" colspan="7">
<spacer name="files_spacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>815</width>
<height>25</height>
</size>
</property>
</spacer>
</item>
<item row="4" column="1">
<widget class="QCheckBox" name="enable_tls_button">
<property name="text">
<string>Enable TLS</string>
</property>
</widget>
</item>
<item row="2" column="3">
<widget class="QLabel" name="tls_port_label">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
<item row="14" column="6">
<widget class="QPushButton" name="tls_ca_file_browse_button">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
<item row="10" column="0">
<widget class="QLabel" name="screenshots_directory_label">
<property name="text">
<string>TLS port:</string>
<string>Save screenshots to:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="2" column="4">
<item row="9" column="1" colspan="5">
<widget class="QLineEdit" name="transfers_directory_editor">
<property name="toolTip">
<string>Where to save received files</string>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
<item row="4" column="4">
<widget class="SIPPortEditor" name="tls_port">
<property name="specialValueText">
<string>Auto</string>
......@@ -2874,66 +2880,55 @@
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="media_ports_label">
<property name="toolTip">
<string>How many media ports to use and starting from what address</string>
</property>
<property name="text">
<string>RTP Ports:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
<item row="1" column="0" colspan="7">
<widget class="Line" name="line_12">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QSpinBox" name="media_ports">
<property name="correctionMode">
<enum>QAbstractSpinBox::CorrectToNearestValue</enum>
</property>
<property name="minimum">
<number>10</number>
<item row="3" column="4">
<widget class="SIPPortEditor" name="tcp_port">
<property name="specialValueText">
<string>Auto</string>
</property>
<property name="maximum">
<number>10000</number>
</property>
<property name="singleStep">
<number>10</number>
<number>65535</number>
</property>
<property name="value">
<number>500</number>
</widget>
</item>
<item row="3" column="1">
<widget class="QCheckBox" name="enable_tcp_button">
<property name="text">
<string>Enable TCP</string>
</property>
</widget>
</item>
<item row="3" column="2" colspan="2">
<widget class="QLabel" name="starting_at_label">
<item row="14" column="0">
<widget class="QLabel" name="tls_ca_file_label">
<property name="text">
<string>starting at:</string>
<string>Certificate Authority:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="3" column="4">
<widget class="QSpinBox" name="media_ports_start">
<property name="minimum">
<number>10000</number>
</property>
<property name="maximum">
<number>65000</number>
<item row="5" column="0">
<widget class="QLabel" name="media_ports_label">
<property name="toolTip">
<string>How many media ports to use and starting from what address</string>
</property>
<property name="singleStep">
<number>1000</number>
<property name="text">
<string>RTP Ports:</string>
</property>
<property name="value">
<number>50000</number>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="4" column="0" colspan="6">
<spacer name="sip_spacer_2">
<item row="6" column="0" colspan="7">
<spacer name="sip_spacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
......@@ -2942,57 +2937,100 @@
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>20</height>
<width>815</width>
<height>25</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="tls_group_box">
<property name="title">
<string>TLS Settings</string>
</property>
<layout class="QGridLayout" name="tls_group_box_layout">
<item row="0" column="1">
<widget class="LocationBar" name="tls_ca_file_editor">
<property name="readOnly">
<bool>true</bool>
<item row="12" column="0" colspan="7">
<widget class="QLabel" name="tls_settings_label">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>TLS settings</string>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="tls_ca_file_label">
<item row="8" column="0" colspan="7">
<widget class="Line" name="line_13">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item row="7" column="0" colspan="7">
<widget class="QLabel" name="files_and_directories_label">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Certificate Authority File:</string>
<string>Files and directories</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="transports_label">
<property name="text">
<string>Transports:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="0" column="2">
<widget class="QPushButton" name="tls_ca_file_browse_button">
<item row="5" column="1">
<widget class="QSpinBox" name="media_ports">
<property name="correctionMode">
<enum>QAbstractSpinBox::CorrectToNearestValue</enum>
</property>
<property name="minimum">
<number>10</number>
</property>
<property name="maximum">
<number>10000</number>
</property>
<property name="singleStep">
<number>10</number>
</property>
<property name="value">
<number>500</number>
</property>
</widget>
</item>
<item row="2" column="4">
<widget class="SIPPortEditor" name="udp_port">
<property name="specialValueText">
<string>Auto</string>
</property>
<property name="maximum">
<number>65535</number>
</property>
</widget>
</item>
<item row="10" column="6">
<widget class="QPushButton" name="screenshots_directory_browse_button">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
<item row="1" column="0" colspan="3">
<spacer name="tls_vertical_spacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
<item row="10" column="1" colspan="5">
<widget class="QLineEdit" name="screenshots_directory_editor">
<property name="toolTip">
<string>Where to save screenshots taken from video or screen sharing sessions</string>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
<property name="readOnly">
<bool>true</bool>
</property>
</spacer>
</widget>
</item>
</layout>
</widget>
......@@ -3037,7 +3075,6 @@
<addaction name="video_action"/>
<addaction name="chat_action"/>
<addaction name="screen_sharing_action"/>
<addaction name="file_transfer_action"/>
<addaction name="logging_action"/>
<addaction name="advanced_action"/>
</widget>
......@@ -3101,18 +3138,6 @@
<string>Screen Sharing</string>
</property>
</action>
<action name="file_transfer_action">
<property name="checkable">
<bool>true</bool>
</property>
<property name="icon">
<iconset>
<normaloff>icons/file-transfer.png</normaloff>icons/file-transfer.png</iconset>
</property>
<property name="text">
<string>File Transfer</string>
</property>
</action>
<action name="logging_action">
<property name="checkable">
<bool>true</bool>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment