[Bug 116154] New: Show progress bar while saving large files

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

[Bug 116154] New: Show progress bar while saving large files

Dik Takken
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=116154         
           Summary: Show progress bar while saving large files
           Product: digikam
           Version: 0.8.0-beta2
          Platform: Gentoo Packages
        OS/Version: Linux
            Status: NEW
          Severity: wishlist
          Priority: NOR
         Component: Image Editor
        AssignedTo: digikam-devel kde org
        ReportedBy: d.h.j.takken phys uu nl


Version:           0.8.0-beta2 (using KDE KDE 3.4.1)
Installed from:    Gentoo Packages
OS:                Linux

Saving a 6 Megapixel scan to PNG format can take a while, and DigiKam (as well as Showfoto) shows no progress while saving. A progress bar would be nice.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 116154] Show progress bar while saving large files

Gilles Caulier
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=116154         




------- Additional Comments From caulier.gilles free fr  2006-01-24 12:55 -------
SVN commit 501938 by cgilles:

Digikam 0.9.0 from trunk :

- New abstraction layer for image editor tools : image print, image resize, and slide show tools are migrated to a new dedicaced subfolder.
- New IO file acess progress bar to displaying image file loading and saving operations. Only Loading image progress rules is complete. Saving image progress still to do.

CCMAIL: digikam-devel kde org
CCBUG: 116154

 M  +1 -0      showfoto/Makefile.am  
 M  +11 -5     showfoto/showfoto.cpp  
 M  +2 -1      showfoto/showfoto.h  
 M  +1 -1      utilities/imageeditor/Makefile.am  
 M  +7 -3      utilities/imageeditor/editor/Makefile.am  
 D             utilities/imageeditor/editor/imageprint.cpp  
 D             utilities/imageeditor/editor/imageprint.h  
 D             utilities/imageeditor/editor/imageresizedlg.cpp  
 D             utilities/imageeditor/editor/imageresizedlg.h  
 M  +6 -2      utilities/imageeditor/editor/imagewindow.cpp  
 M  +3 -1      utilities/imageeditor/editor/imagewindow.h  
 A             utilities/imageeditor/editor/iofileprogressbar.cpp   [License: GPL]
 A             utilities/imageeditor/editor/iofileprogressbar.h   [License: GPL]
 D             utilities/imageeditor/editor/slideshow.cpp  
 D             utilities/imageeditor/editor/slideshow.h  
 A             utilities/imageeditor/tools (directory)  
 A             utilities/imageeditor/tools/Makefile.am  
 A             utilities/imageeditor/tools/imageprint.cpp   utilities/imageeditor/editor/imageprint.cpp#501877
 A             utilities/imageeditor/tools/imageprint.h   utilities/imageeditor/editor/imageprint.h#501877
 A             utilities/imageeditor/tools/imageresizedlg.cpp   utilities/imageeditor/editor/imageresizedlg.cpp#501877
 A             utilities/imageeditor/tools/imageresizedlg.h   utilities/imageeditor/editor/imageresizedlg.h#501877
 A             utilities/imageeditor/tools/slideshow.cpp   utilities/imageeditor/editor/slideshow.cpp#501877
 A             utilities/imageeditor/tools/slideshow.h   utilities/imageeditor/editor/slideshow.h#501877


--- trunk/extragear/graphics/digikam/showfoto/Makefile.am #501937:501938
 @ -15,6 +15,7  @
    -I$(top_srcdir)/digikam/digikam \
    -I$(top_srcdir)/digikam/utilities/imageeditor/canvas \
    -I$(top_srcdir)/digikam/utilities/imageeditor/editor \
+   -I$(top_srcdir)/digikam/utilities/imageeditor/tools \
    -I$(top_srcdir)/digikam/utilities/splashscreen \
    $(LIBKEXIF_CFLAGS) $(all_includes)
 
--- trunk/extragear/graphics/digikam/showfoto/showfoto.cpp #501937:501938
 @ -93,6 +93,7  @
 #include "setupeditor.h"
 #include "setupimgplugins.h"
 #include "slideshow.h"
+#include "iofileprogressbar.h"
 #include "iccsettingscontainer.h"
 #include "iofilesettingscontainer.h"
 #include "savingcontextcontainer.h"
 @ -166,7 +167,8  @
 
     m_splitter->setOpaqueResize(false);
     setCentralWidget(widget);        
-    m_nameLabel = new QLabel(statusBar());
+
+    m_nameLabel = new Digikam::IOFileProgressBar(statusBar());
     m_nameLabel->setAlignment(Qt::AlignCenter);
     statusBar()->addWidget(m_nameLabel,1);
     m_zoomLabel = new QLabel(statusBar());
 @ -265,8 +267,8  @
     connect(m_canvas, SIGNAL(signalSavingFinished(const QString &, bool)),
             this, SLOT(slotSavingFinished(const QString &, bool)));
 
-    connect(m_canvas, SIGNAL(signalSavingProgress(const QString& filePath, float progress)),
-            this, SLOT(slotSavingProgress(const QString& filePath, float progress)));
+    connect(m_canvas, SIGNAL(signalSavingProgress(const QString&, float)),
+            this, SLOT(slotSavingProgress(const QString&, float)));
 
     connect(m_slideShow, SIGNAL(finished()),
             m_slideShowAction, SLOT(activate()) );
 @ -1053,12 +1055,16  @
 
 void ShowFoto::slotLoadingStarted(const QString &filename)
 {
-    //TODO
+    //TODO: Disable actions as appropriate
+
+    m_nameLabel->progressBarVisible(true);
+    QApplication::setOverrideCursor(Qt::WaitCursor);
 }
 
 void ShowFoto::slotLoadingFinished(const QString &filename, bool success, bool isReadOnly)
 {
     //TODO: handle success == false
+    m_nameLabel->progressBarVisible(false);
     m_isReadOnly = isReadOnly;
     slotUpdateItemInfo();
     QApplication::restoreOverrideCursor();
 @ -1066,7 +1072,7  @
 
 void ShowFoto::slotLoadingProgress(const QString& filePath, float progress)
 {
-    //TODO
+    m_nameLabel->setProgressValue((int)(progress*100.0));
 }
 
 void ShowFoto::toggleNavigation(int index)
--- trunk/extragear/graphics/digikam/showfoto/showfoto.h #501937:501938
 @ -58,6 +58,7  @
 class SavingContextContainer;
 class SplashScreen;
 class SlideShow;
+class IOFileProgressBar;
 }
 
 namespace ShowFoto
 @ -89,7 +90,6  @
 
     int                              m_itemsNb;
 
-    QLabel                          *m_nameLabel;
     QLabel                          *m_zoomLabel;
     QLabel                          *m_resLabel;
         
 @ -142,6 +142,7  @
         
     KSelectAction                   *m_viewHistogramAction;
 
+    Digikam::IOFileProgressBar       *m_nameLabel;
     Digikam::ImagePluginLoader       *m_imagePluginLoader;
     Digikam::ThumbBarView            *m_bar;
     Digikam::ThumbBarItem            *m_currentItem;
--- trunk/extragear/graphics/digikam/utilities/imageeditor/Makefile.am #501937:501938
 @ -1 +1  @
-SUBDIRS = icons canvas editor
+SUBDIRS = icons canvas tools editor
--- trunk/extragear/graphics/digikam/utilities/imageeditor/editor/Makefile.am #501937:501938
 @ -3,16 +3,19  @
 noinst_LTLIBRARIES = libdimgeditor.la libshowfoto.la
 
 libdimgeditor_la_SOURCES = editorwindow.cpp imageiface.cpp imagewidget.cpp \
-               imagewindow.cpp imageresizedlg.cpp imageprint.cpp
+   imagewindow.cpp iofileprogressbar.cpp  
 
 libdimgeditor_la_LDFLAGS = $(all_libraries) $(KDE_RPATH) $(LIB_KDEPRINT) \
            $(LIBKEXIF_LIBS)
 
-libshowfoto_la_SOURCES = editorwindow.cpp imageiface.cpp imagewidget.cpp \
-                     imageresizedlg.cpp slideshow.cpp imageprint.cpp
+libdimgeditor_la_LIBADD = $(top_srcdir)/digikam/utilities/imageeditor/tools/libdimgeditortools.la
 
+libshowfoto_la_SOURCES = editorwindow.cpp imageiface.cpp imagewidget.cpp iofileprogressbar.cpp
+
 libshowfoto_la_LDFLAGS = $(all_libraries) $(KDE_RPATH) $(LIB_KDEPRINT)
 
+libshowfoto_la_LIBADD = $(top_srcdir)/digikam/utilities/imageeditor/tools/libdimgeditortools.la
+
 INCLUDES= -I$(top_srcdir)/digikam/digikam \
   -I$(top_srcdir)/digikam/libs/widgets \
   -I$(top_srcdir)/digikam/libs/dimg \
 @ -21,6 +24,7  @
   -I$(top_srcdir)/digikam/libs/threadimageio \
   -I$(top_srcdir)/digikam/utilities/splashscreen \
   -I$(top_srcdir)/digikam/utilities/imageeditor/canvas \
+  -I$(top_srcdir)/digikam/utilities/imageeditor/tools \
   $(LIBKEXIF_CFLAGS) $(all_includes)
 
 digikaminclude_HEADERS = imageiface.h imagewidget.h
--- trunk/extragear/graphics/digikam/utilities/imageeditor/editor/imagewindow.cpp #501937:501938
 @ -81,6 +81,7  @
 #include "imageinfo.h"
 #include "imagepropertiessidebardb.h"
 #include "tagspopupmenu.h"
+#include "iofileprogressbar.h"
 #include "iccsettingscontainer.h"
 #include "iofilesettingscontainer.h"
 #include "savingcontextcontainer.h"
 @ -135,7 +136,7  @
     m_splitter->setOpaqueResize(false);
     setCentralWidget(widget);
     
-    m_nameLabel = new QLabel(statusBar());
+    m_nameLabel = new IOFileProgressBar(statusBar());
     m_nameLabel->setAlignment(Qt::AlignCenter);
     statusBar()->addWidget(m_nameLabel,1);
     m_zoomLabel = new QLabel(statusBar());
 @ -644,6 +645,8  @
 void ImageWindow::slotLoadingStarted(const QString &filename)
 {
     //TODO: Disable actions as appropriate
+
+    m_nameLabel->progressBarVisible(true);
     QApplication::setOverrideCursor(Qt::WaitCursor);
 }
 
 @ -652,6 +655,7  @
     //TODO: enable actions as appropriate
     //TODO: handle success == false
 
+    m_nameLabel->progressBarVisible(false);
     QApplication::restoreOverrideCursor();
     m_isReadOnly = isReadOnly;
 
 @ -711,7 +715,7  @
 
 void ImageWindow::slotLoadingProgress(const QString& filePath, float progress)
 {
-    //TODO: progress display in status bar
+    m_nameLabel->setProgressValue((int)(progress*100.0));
 }
 
 void ImageWindow::slotLoadNext()
--- trunk/extragear/graphics/digikam/utilities/imageeditor/editor/imagewindow.h #501937:501938
 @ -55,6 +55,7  @
 class ICCSettingsContainer;
 class IOFileSettingsContainer;
 class SavingContextContainer;
+class IOFileProgressBar;
 
 class ImageWindow : public EditorWindow
 {
 @ -99,7 +100,6  @
 
     QSplitter              *m_splitter;
                               
-    QLabel*                 m_nameLabel;
     QLabel*                 m_zoomLabel;
     QLabel*                 m_resLabel;
     
 @ -156,6 +156,8  @
     ImagePropertiesSideBarDB *m_rightSidebar;
 
     SavingContextContainer   *m_savingContext;
+
+    IOFileProgressBar        *m_nameLabel;
     
     static ImageWindow       *m_instance;
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 116154] Show progress bar while saving large files

Gilles Caulier
In reply to this post by Dik Takken
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=116154         
caulier.gilles free fr changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED



------- Additional Comments From caulier.gilles free fr  2006-02-15 21:44 -------
Image editor and showFoto progress bar during loading/saving image file operations is fully implemented in digiKam 0.9.0 alpha from svn trunk. I can close this file

Gilles Caulier
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel