]> git.sesse.net Git - vlc/commitdiff
Compile fix - refs #258
authorClément Stenac <zorglub@videolan.org>
Wed, 6 Jul 2005 17:33:04 +0000 (17:33 +0000)
committerClément Stenac <zorglub@videolan.org>
Wed, 6 Jul 2005 17:33:04 +0000 (17:33 +0000)
modules/gui/wxwindows/interface.cpp
modules/gui/wxwindows/wizard.cpp
modules/gui/wxwindows/wxwindows.cpp
modules/gui/wxwindows/wxwindows.h

index d7dfd5ee9e33361a384d23b50d83b94684d2aeec..e2b6651c75945193e436aab449c82be7ace8af55 100644 (file)
@@ -55,6 +55,8 @@
 #include "../../../share/vlc16x16.xpm"
 #endif
 
+static int  Interact     ( intf_thread_t *, user_interaction_t *, vlc_bool_t );
+
 /*****************************************************************************
  * Local class declarations.
  *****************************************************************************/
@@ -228,6 +230,9 @@ Interface::Interface( intf_thread_t *_p_intf, long style ):
     b_extra = VLC_FALSE;
 //    b_undock = VLC_FALSE;
 
+    /* Allow user interaction */
+    p_intf->p_sys->p_main_interface = this;
+    p_intf->pf_interact = ::Interact;
 
     extra_window = NULL;
 
@@ -1329,6 +1334,22 @@ void Interface::OnDiscNext( wxCommandEvent& WXUNUSED(event) )
 }
 
 #if wxUSE_DRAG_AND_DROP
+
+/*****************************************************************************
+ * Interaction
+ *****************************************************************************/
+int Interface::Interact( user_interaction_t *p_interact, vlc_bool_t b_block )
+{
+    if( p_interact->i_type == INTERACT_FATAL )
+    {
+        fprintf( stderr, "Showing message -%s-\n", p_interact->psz_description);
+        wxFrame *p_message = new wxFrame( this, -1,
+                                            wxU( p_interact->psz_description ));
+        p_message->Show();
+    }
+    return VLC_SUCCESS;
+}
+
 /*****************************************************************************
  * Definition of DragAndDrop class.
  *****************************************************************************/
@@ -1557,3 +1578,15 @@ void Systray::UpdateTooltip( const wxChar* tooltip )
     SetIcon( wxIcon( vlc16x16_xpm ), tooltip );
 }
 #endif
+
+
+/**
+ * Interaction entry point
+ */
+int Interact( intf_thread_t *p_intf, user_interaction_t *p_interact,
+              vlc_bool_t b_block )
+{
+    fprintf( stderr,"Asking for interaction\n" );
+    return p_intf->p_sys->p_main_interface->Interact( p_interact, b_block );
+}
+
index 55e08a6c7d174acdfeee5281545437a9554c97dd..addf0d411b523fb9deb1542d6eacb3b4cbff641a 100644 (file)
@@ -1030,8 +1030,8 @@ wizStreamingMethodPage::wizStreamingMethodPage( wxWizard *parent,
                                  TEXTWIDTH, false ) ),
                wxDefaultPosition, wxDefaultSize );
 
-    address_txtctrl = new wxTextCtrl( this, -1, wxU(""), wxDefaultPosition,
-                                      wxSize(200,25));
+    address_txtctrl = new wxTextCtrl( this, -1, wxT("") , wxDefaultPosition,
+                                      wxSize(200,25)) ;
     address_sizer->Add( address_text, 0, wxALL, 5 );
     address_sizer->Add( address_txtctrl, 0, wxALL, 5 );
     address_sizer->Layout();
@@ -1085,7 +1085,7 @@ void wizStreamingMethodPage::OnWizardPageChanging(wxWizardEvent& event)
         }
     }
     p_parent->SetStream( methods_array[i_method].psz_access ,
-                         (char *)address_txtctrl->GetValue().mb_str() );
+                         address_txtctrl->GetValue().mb_str() );
 
     /* Set the action for the muxer page */
     ((wizEncapPage*)GetNext())->SetAction( p_parent->GetAction() );
index 48bdc08f522072fdaafc787dc1bb468623adba53..1b0f6b21dd7c4d090de77cc6765bcb9b640aefe8 100644 (file)
@@ -63,6 +63,7 @@ static void Init         ( intf_thread_t * );
 
 static void ShowDialog   ( intf_thread_t *, int, int, intf_dialog_args_t * );
 
+
 #if (wxCHECK_VERSION(2,5,0))
 void *wxClassInfo_sm_classTable_BUGGY = 0;
 #endif
@@ -363,6 +364,7 @@ bool Instance::OnInit()
 
     p_intf->p_sys->pf_show_dialog = ShowDialog;
 
+
     /* OK, initialization is over */
     vlc_thread_ready( p_intf );
 
index fcb5460fe9eeb22e0641044818cd4659e3532520..59cc5dfe313f0c19ad6118b4a5e33ff3cc581042 100644 (file)
@@ -44,6 +44,7 @@
 #include <wx/wizard.h>
 #include <wx/taskbar.h>
 #include "vlc_keys.h"
+#include "vlc_interaction.h"
 
 #if (!wxCHECK_VERSION(2,5,0))
 typedef long wxTreeItemIdValue;
@@ -98,6 +99,8 @@ class AutoBuiltPanel;
 class VideoWindow;
 class WindowSettings;
 
+namespace wxvlc { class Interface;};
+
 /*****************************************************************************
  * intf_sys_t: description and status of wxwindows interface
  *****************************************************************************/
@@ -140,6 +143,9 @@ struct intf_sys_t
     int                 i_first_hotkey_event;
     int                 i_hotkeys;
 
+    /* Main interface */
+    wxvlc::Interface   *p_main_interface;
+
     /* Embedded vout */
     VideoWindow         *p_video_window;
     wxBoxSizer          *p_video_sizer;
@@ -371,6 +377,9 @@ public:
     wxTimer m_controls_timer;
     wxTimer m_slider_timer;
 
+    /* Interaction */
+    int Interact( user_interaction_t *, vlc_bool_t );
+
 private:
     void SetupHotkeys();
     void CreateOurMenuBar();