[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    playground/network/kcall
From:       George Kiagiadakis <gkiagiad () csd ! uoc ! gr>
Date:       2009-07-30 11:30:32
Message-ID: 1248953432.228910.4251.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1004509 by gkiagia:

Add button to make video calls directly to contacts that are not in the contact list.
Also restore the .FUTURE.InitialAudio parameter to the existing button to make audio calls.
This doesn't work with sofiasip though, but it's better than making useless calls without initial streams.

 M  +17 -3     mainwindow.cpp  
 M  +3 -1      mainwindow.h  
 M  +13 -6     mainwindow.ui  


--- trunk/playground/network/kcall/mainwindow.cpp #1004508:1004509
@@ -41,7 +41,8 @@
     new ContactListController(ui->contactsTreeView, KCallApplication::instance()->contactsModel());
 
     ui->accountComboBox->setModel(KCallApplication::instance()->contactsModel());
-    connect(ui->dialButton, SIGNAL(clicked()), SLOT(onDialButtonClicked()));
+    connect(ui->dialAudioButton, SIGNAL(clicked()), SLOT(onDialAudioButtonClicked()));
+    connect(ui->dialVideoButton, SIGNAL(clicked()), SLOT(onDialVideoButtonClicked()));
 
     setupActions();
     setupGUI(QSize(340, 460));
@@ -66,8 +67,18 @@
     dialog->show();
 }
 
-void MainWindow::onDialButtonClicked()
+void MainWindow::onDialAudioButtonClicked()
 {
+    makeDirectCall(false);
+}
+
+void MainWindow::onDialVideoButtonClicked()
+{
+    makeDirectCall(true);
+}
+
+void MainWindow::makeDirectCall(bool useVideo)
+{
     int row = ui->accountComboBox->currentIndex();
     QString id = ui->contactHandleLineEdit->text();
     if ( row < 0  || id.isEmpty() ) {
@@ -85,7 +96,10 @@
                    TELEPATHY_INTERFACE_CHANNEL_TYPE_STREAMED_MEDIA);
     request.insert(TELEPATHY_INTERFACE_CHANNEL ".TargetHandleType", Tp::HandleTypeContact);
     request.insert(TELEPATHY_INTERFACE_CHANNEL ".TargetID", id);
-   // request.insert(TELEPATHY_INTERFACE_CHANNEL_TYPE_STREAMED_MEDIA ".FUTURE.InitialAudio", true);
+    request.insert(TELEPATHY_INTERFACE_CHANNEL_TYPE_STREAMED_MEDIA ".FUTURE.InitialAudio", true);
+    if ( useVideo ) {
+        request.insert(TELEPATHY_INTERFACE_CHANNEL_TYPE_STREAMED_MEDIA ".FUTURE.InitialVideo", true);
+    }
     account->ensureChannel(request, QDateTime::currentDateTime(),
                            "org.freedesktop.Telepathy.Client.kcall_handler");
 }
--- trunk/playground/network/kcall/mainwindow.h #1004508:1004509
@@ -29,7 +29,9 @@
 
 private slots:
     void showSettingsDialog();
-    void onDialButtonClicked();
+    void onDialAudioButtonClicked();
+    void onDialVideoButtonClicked();
+    void makeDirectCall(bool useVideo);
 
 private:
     void setupActions();
--- trunk/playground/network/kcall/mainwindow.ui #1004508:1004509
@@ -6,7 +6,7 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>285</width>
+    <width>300</width>
     <height>388</height>
    </rect>
   </property>
@@ -35,7 +35,7 @@
        <string>Dial directly</string>
       </attribute>
       <layout class="QGridLayout" name="gridLayout">
-       <item row="0" column="1">
+       <item row="0" column="0" colspan="2">
         <spacer name="verticalSpacer">
          <property name="orientation">
           <enum>Qt::Vertical</enum>
@@ -51,7 +51,7 @@
          </property>
         </spacer>
        </item>
-       <item row="1" column="0" colspan="3">
+       <item row="1" column="0" colspan="2">
         <layout class="QFormLayout" name="formLayout">
          <item row="0" column="0">
           <widget class="QLabel" name="accountLabel">
@@ -82,14 +82,21 @@
          </item>
         </layout>
        </item>
+       <item row="2" column="0">
+        <widget class="KPushButton" name="dialAudioButton">
+         <property name="text">
+          <string>Dial (Audio only)</string>
+         </property>
+        </widget>
+       </item>
        <item row="2" column="1">
-        <widget class="KPushButton" name="dialButton">
+        <widget class="KPushButton" name="dialVideoButton">
          <property name="text">
-          <string>Dial</string>
+          <string>Dial (Audio/Video)</string>
          </property>
         </widget>
        </item>
-       <item row="3" column="1">
+       <item row="3" column="0" colspan="2">
         <spacer name="verticalSpacer_2">
          <property name="orientation">
           <enum>Qt::Vertical</enum>
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic