[Player-cvs] app/gtk deleteclippopup.cpp, 1.1.2.1, 1.1.2.2 deleteclippopup.h, 1.1.2.1, 1.1.2.2 medialib.cpp, 1.1.2.18, 1.1.2.19 medialib.h, 1.1.2.7, 1.1.2.8 medialibplaylist.cpp, 1.1.2.10, 1.1.2.11 photoslideshow.cpp, 1.1.2.11, 1.1.2.12

[Player-cvs] app/gtk deleteclippopup.cpp, 1.1.2.1, 1.1.2.2 deleteclippopup.h, 1.1.2.1, 1.1.2.2 medialib.cpp, 1.1.2.18, 1.1.2.19 medialib.h, 1.1.2.7, 1.1.2.8 medialibplaylist.cpp, 1.1.2.10, 1.1.2.11 photoslideshow.cpp, 1.1.2.11, 1.1.2.12

jain_1982s at helixcommunity.org jain_1982s at helixcommunity.org
Thu Oct 9 22:56:03 PDT 2008


Update of /cvsroot/player/app/gtk
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv18006

Modified Files:
      Tag: hxclient_3_1_0_atlas
	deleteclippopup.cpp deleteclippopup.h medialib.cpp medialib.h 
	medialibplaylist.cpp photoslideshow.cpp 
Log Message:
Fix for bug 8768

Index: deleteclippopup.h
===================================================================
RCS file: /cvsroot/player/app/gtk/Attic/deleteclippopup.h,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -d -r1.1.2.1 -r1.1.2.2
--- deleteclippopup.h	1 Oct 2008 11:52:29 -0000	1.1.2.1
+++ deleteclippopup.h	10 Oct 2008 05:55:51 -0000	1.1.2.2
@@ -59,9 +59,9 @@
     GtkWidget* delete_dialog;
     GtkWidget* delete_ok_button;
     GtkWidget* delete_cancel_button;
-    HXMediaLibrary* pMediaLibrary;
+    HXMainWindow* pMainWindow;
 };
 
-HXDeleteClipPopUp* hx_create_delete_clip_popup(HXMediaLibrary* pMediaLibrary);
+HXDeleteClipPopUp* hx_create_delete_clip_popup(HXMainWindow* pMainWindow);
 
 #endif //_DELETECLIP_POPUP_H_

Index: deleteclippopup.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/Attic/deleteclippopup.cpp,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -d -r1.1.2.1 -r1.1.2.2
--- deleteclippopup.cpp	1 Oct 2008 11:52:29 -0000	1.1.2.1
+++ deleteclippopup.cpp	10 Oct 2008 05:55:51 -0000	1.1.2.2
@@ -40,9 +40,10 @@
  * 
  * ***** END LICENSE BLOCK ***** */
 
-#include "mainapp.h"
+#include "mainapp-private.h"
 #include "deleteclippopup.h"
 #include "hxutil.h"
+#include "medialibplaylist.h"
 
 void DeleteDialog(GtkWidget* widget, gpointer data)
 {
@@ -55,35 +56,46 @@
     HXDeleteClipPopUp* pDeleteClipPopUp = (HXDeleteClipPopUp*)user_data;
     gpointer data;
     GtkTreeModel *model = NULL;
-    switch(pDeleteClipPopUp->pMediaLibrary->selected_type)
+    if (pDeleteClipPopUp->pMainWindow->hxmedia_lib->bDeleteSelectedPlaylist == TRUE)
+    {
+        pDeleteClipPopUp->pMainWindow->hxmedia_lib->bDeleteSelectedPlaylist = FALSE;
+        model = gtk_tree_view_get_model (GTK_TREE_VIEW(pDeleteClipPopUp->pMainWindow->hxmedia_lib->media_playlist->myplaylistitems));
+        gtk_tree_model_get (model, &pDeleteClipPopUp->pMainWindow->hxmedia_lib->media_playlist->selected_iter, COLUMN_INDEX, &data, -1);
+        pDeleteClipPopUp->pMainWindow->hxmedia_lib->media_library->RemovePlaylistItem(pDeleteClipPopUp->pMainWindow->hxmedia_lib->media_playlist->CurrentPlaylist, data);
+        ReloadCurrentPlaylist(pDeleteClipPopUp->pMainWindow);
+        gtk_widget_destroy(pDeleteClipPopUp->delete_dialog);
+        g_free(pDeleteClipPopUp);
+        return;
+    }
+    switch(pDeleteClipPopUp->pMainWindow->hxmedia_lib->selected_type)
     {
         case MEDIATYPE_AUDIO:
-            model = gtk_tree_view_get_model (GTK_TREE_VIEW(pDeleteClipPopUp->pMediaLibrary->musictreeview));
-            gtk_tree_model_get (model, &pDeleteClipPopUp->pMediaLibrary->selected_iter, COLUMN_INDEX, &data, -1);
-            pDeleteClipPopUp->pMediaLibrary->media_library->RemoveItemfromMediaLib( MEDIATYPE_AUDIO, data);
+            model = gtk_tree_view_get_model (GTK_TREE_VIEW(pDeleteClipPopUp->pMainWindow->hxmedia_lib->musictreeview));
+            gtk_tree_model_get (model, &pDeleteClipPopUp->pMainWindow->hxmedia_lib->selected_iter, COLUMN_INDEX, &data, -1);
+            pDeleteClipPopUp->pMainWindow->hxmedia_lib->media_library->RemoveItemfromMediaLib( MEDIATYPE_AUDIO, data);
             break;
         case MEDIATYPE_VIDEO:			
-            model = gtk_icon_view_get_model (GTK_ICON_VIEW(pDeleteClipPopUp->pMediaLibrary->videoiconview));
-            gtk_tree_model_get (model, &pDeleteClipPopUp->pMediaLibrary->selected_iter, COLUMN_INDEX, &data, -1);
-            pDeleteClipPopUp->pMediaLibrary->media_library->RemoveItemfromMediaLib( MEDIATYPE_VIDEO, data);
+            model = gtk_icon_view_get_model (GTK_ICON_VIEW(pDeleteClipPopUp->pMainWindow->hxmedia_lib->videoiconview));
+            gtk_tree_model_get (model, &pDeleteClipPopUp->pMainWindow->hxmedia_lib->selected_iter, COLUMN_INDEX, &data, -1);
+            pDeleteClipPopUp->pMainWindow->hxmedia_lib->media_library->RemoveItemfromMediaLib( MEDIATYPE_VIDEO, data);
             break;
         case MEDIATYPE_PHOTO:	
-            model = gtk_icon_view_get_model (GTK_ICON_VIEW(pDeleteClipPopUp->pMediaLibrary->pSlideShow->icon_view));
-            gtk_tree_model_get (model, &pDeleteClipPopUp->pMediaLibrary->pSlideShow->m_iter, COLUMN_INDEX, &data, -1);
-            pDeleteClipPopUp->pMediaLibrary->media_library->RemoveItemfromMediaLib( MEDIATYPE_PHOTO, data);
+            model = gtk_icon_view_get_model (GTK_ICON_VIEW(pDeleteClipPopUp->pMainWindow->hxmedia_lib->pSlideShow->icon_view));
+            gtk_tree_model_get (model, &pDeleteClipPopUp->pMainWindow->hxmedia_lib->pSlideShow->m_iter, COLUMN_INDEX, &data, -1);
+            pDeleteClipPopUp->pMainWindow->hxmedia_lib->media_library->RemoveItemfromMediaLib( MEDIATYPE_PHOTO, data);
             break;
     }
     gtk_widget_destroy(pDeleteClipPopUp->delete_dialog);
     g_free(pDeleteClipPopUp);
 }
 
-HXDeleteClipPopUp* hx_create_delete_clip_popup(HXMediaLibrary* pMediaLibrary)
+HXDeleteClipPopUp* hx_create_delete_clip_popup(HXMainWindow* pMainWindow)
 {
     gchar* filename;
     const char *gladefile = g_strdup_printf("%s%sdeleteclippopup.glade", hx_util_get_executable_dir(), G_DIR_SEPARATOR_S);
     GladeemuXML* xml;
     HXDeleteClipPopUp* pDeleteClipPopUp = NULL;
-    g_return_val_if_fail(pMediaLibrary != NULL, NULL);
+    g_return_val_if_fail(pMainWindow != NULL, NULL);
 
     pDeleteClipPopUp = g_new0(HXDeleteClipPopUp, 1);
 
@@ -106,7 +118,7 @@
 
     gtk_window_set_modal(GTK_WINDOW(pDeleteClipPopUp->delete_dialog), TRUE);
 
-    pDeleteClipPopUp->pMediaLibrary = pMediaLibrary;
+    pDeleteClipPopUp->pMainWindow = pMainWindow;
 
     g_signal_connect (G_OBJECT(pDeleteClipPopUp->delete_ok_button), 
 					"clicked", 

Index: photoslideshow.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/Attic/photoslideshow.cpp,v
retrieving revision 1.1.2.11
retrieving revision 1.1.2.12
diff -u -d -r1.1.2.11 -r1.1.2.12
--- photoslideshow.cpp	3 Oct 2008 10:11:25 -0000	1.1.2.11
+++ photoslideshow.cpp	10 Oct 2008 05:55:52 -0000	1.1.2.12
@@ -445,7 +445,7 @@
         return;
     }
     pWindow->hxmedia_lib->selected_type = MEDIATYPE_PHOTO;
-    pWindow->hxmedia_lib->pDeleteClipPopUp = hx_create_delete_clip_popup(pWindow->hxmedia_lib);
+    pWindow->hxmedia_lib->pDeleteClipPopUp = hx_create_delete_clip_popup(pWindow);
 }
 
 
@@ -597,7 +597,7 @@
                  if(gtk_tree_model_get_iter(model, &window->hxmedia_lib->pSlideShow->m_iter, path))
                  {
 	             window->hxmedia_lib->selected_type = MEDIATYPE_PHOTO;
-	             window->hxmedia_lib->pDeleteClipPopUp = hx_create_delete_clip_popup(window->hxmedia_lib);
+	             window->hxmedia_lib->pDeleteClipPopUp = hx_create_delete_clip_popup(window);
                  }
              }
             break;

Index: medialib.h
===================================================================
RCS file: /cvsroot/player/app/gtk/Attic/medialib.h,v
retrieving revision 1.1.2.7
retrieving revision 1.1.2.8
diff -u -d -r1.1.2.7 -r1.1.2.8
--- medialib.h	1 Oct 2008 11:51:40 -0000	1.1.2.7
+++ medialib.h	10 Oct 2008 05:55:52 -0000	1.1.2.8
@@ -90,6 +90,7 @@
     HXMed_Playlist* media_playlist;
     HXMediaManager*	 media_manager;
     gboolean    bFileSelected;
+    gboolean bDeleteSelectedPlaylist;
 };
 
 HX_RESULT Initialize_Medialibrary(HXMainWindow* window);

Index: medialibplaylist.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/Attic/medialibplaylist.cpp,v
retrieving revision 1.1.2.10
retrieving revision 1.1.2.11
diff -u -d -r1.1.2.10 -r1.1.2.11
--- medialibplaylist.cpp	3 Oct 2008 10:11:25 -0000	1.1.2.10
+++ medialibplaylist.cpp	10 Oct 2008 05:55:52 -0000	1.1.2.11
@@ -53,6 +53,7 @@
 #include "addtoplaylist.h"
 #include "mediamanager.h"
 #include <gdk/gdkkeysyms.h>
+#include "deleteclippopup.h"
 
 void ReloadCurrentPlaylist(HXMainWindow* window)
 {
@@ -194,19 +195,9 @@
 
 void PLItem_Remove(GtkWidget *widget, gpointer user_data)
 {
-    gpointer data;
     HXMainWindow* window = (HXMainWindow*)user_data;
-    GtkTreeModel *model = gtk_tree_view_get_model (GTK_TREE_VIEW(window->hxmedia_lib->media_playlist->myplaylistitems));
-    GtkTreeSelection* selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(window->hxmedia_lib->media_playlist->myplaylistitems));
-    gint  elem_count = gtk_tree_model_iter_n_children(model, NULL);
-    if ((elem_count == 0) || (gtk_tree_selection_count_selected_rows(selection) < 1))
-    {
-        return;
-    }
-    GtkTreePath* path = gtk_tree_model_get_path (model,  &window->hxmedia_lib->media_playlist->selected_iter);	
-    gtk_tree_model_get (model, &window->hxmedia_lib->media_playlist->selected_iter, COLUMN_INDEX, &data, -1);
-    window->hxmedia_lib->media_library->RemovePlaylistItem(window->hxmedia_lib->media_playlist->CurrentPlaylist, data);
-    ReloadCurrentPlaylist(window);
+    window->hxmedia_lib->bDeleteSelectedPlaylist = TRUE;
+    window->hxmedia_lib->pDeleteClipPopUp = hx_create_delete_clip_popup(window);	
 }
 
 gboolean
@@ -378,9 +369,8 @@
             selection = gtk_tree_view_get_selection(pTree);
             if(selection && gtk_tree_selection_get_selected(selection, &model, &window->hxmedia_lib->media_playlist->selected_iter))
             {
-                gtk_tree_model_get (model, &window->hxmedia_lib->media_playlist->selected_iter, COLUMN_INDEX, &data, -1);
-                window->hxmedia_lib->media_library->RemovePlaylistItem(window->hxmedia_lib->media_playlist->CurrentPlaylist, data);
-                ReloadCurrentPlaylist(window);                     	
+                window->hxmedia_lib->bDeleteSelectedPlaylist = TRUE;
+                window->hxmedia_lib->pDeleteClipPopUp = hx_create_delete_clip_popup(window);	
             }
             break;
        case GDK_Down:

Index: medialib.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/Attic/medialib.cpp,v
retrieving revision 1.1.2.18
retrieving revision 1.1.2.19
diff -u -d -r1.1.2.18 -r1.1.2.19
--- medialib.cpp	7 Oct 2008 06:57:49 -0000	1.1.2.18
+++ medialib.cpp	10 Oct 2008 05:55:51 -0000	1.1.2.19
@@ -177,14 +177,14 @@
 {
     HXMainWindow* window = (HXMainWindow*)user_data;
     window->hxmedia_lib->selected_type = MEDIATYPE_AUDIO;
-    window->hxmedia_lib->pDeleteClipPopUp = hx_create_delete_clip_popup(window->hxmedia_lib);
+    window->hxmedia_lib->pDeleteClipPopUp = hx_create_delete_clip_popup(window);
 }
 
 void DeleteSelectedVideo(GtkWidget *widget, gpointer user_data)
 {
     HXMainWindow* window = (HXMainWindow*)user_data;
     window->hxmedia_lib->selected_type = MEDIATYPE_VIDEO;
-    window->hxmedia_lib->pDeleteClipPopUp = hx_create_delete_clip_popup(window->hxmedia_lib);
+    window->hxmedia_lib->pDeleteClipPopUp = hx_create_delete_clip_popup(window);
 }
 
 void 
@@ -442,7 +442,7 @@
             if(selection && gtk_tree_selection_get_selected(selection, &model, &window->hxmedia_lib->selected_iter))
             {
                 window->hxmedia_lib->selected_type = MEDIATYPE_AUDIO;
-                window->hxmedia_lib->pDeleteClipPopUp = hx_create_delete_clip_popup(window->hxmedia_lib);
+                window->hxmedia_lib->pDeleteClipPopUp = hx_create_delete_clip_popup(window);
             }
             break;
        case GDK_Down:
@@ -512,7 +512,7 @@
                  if(gtk_tree_model_get_iter(model, &window->hxmedia_lib->selected_iter, path))
                  {
                      window->hxmedia_lib->selected_type = MEDIATYPE_VIDEO;
-                     window->hxmedia_lib->pDeleteClipPopUp = hx_create_delete_clip_popup(window->hxmedia_lib);
+                     window->hxmedia_lib->pDeleteClipPopUp = hx_create_delete_clip_popup(window);
                  }
              }
             break;




More information about the Player-cvs mailing list
 

Site Map   |   Terms of Use   |   Privacy Policy   |   Contact Us

Copyright © 1995-2007 RealNetworks, Inc. All rights reserved. RealNetworks and Helix are trademarks of RealNetworks.
All other trademarks or registered trademarks are the property of their respective holders.