photosgallery/viewframework/views/metadatadialog/src/glxmetadatadialog.cpp
changeset 2 7d9067c6fcb1
parent 0 4e91876724a2
child 9 6b87b143d312
equal deleted inserted replaced
1:9ba538e329bd 2:7d9067c6fcb1
    44 #include <glxscreenfurniture.h>
    44 #include <glxscreenfurniture.h>
    45 #include <glxuiutilities.rsg>
    45 #include <glxuiutilities.rsg>
    46 #include <glxpanic.h>                    // For Panics
    46 #include <glxpanic.h>                    // For Panics
    47 #include "glxmetadatacommandhandler.h"
    47 #include "glxmetadatacommandhandler.h"
    48 
    48 
    49 #define GetAppUi() (dynamic_cast<CAknAppUi*>(iEikonEnv->EikAppUi()))
       
    50 
       
    51 
       
    52 // ============================ MEMBER FUNCTIONS ===============================
    49 // ============================ MEMBER FUNCTIONS ===============================
    53 
    50 
    54 // -----------------------------------------------------------------------------
    51 // -----------------------------------------------------------------------------
    55 // NewL
    52 // NewL
    56 // -----------------------------------------------------------------------------
    53 // -----------------------------------------------------------------------------
   105 		SetTitleL( *text );
   102 		SetTitleL( *text );
   106 		if( text)
   103 		if( text)
   107 		    {
   104 		    {
   108 		    delete text;
   105 		    delete text;
   109 		    }
   106 		    }
   110 		GetAppUi()->StatusPane()->MakeVisible(ETrue);			  
   107 		iAvkonAppUi->StatusPane()->MakeVisible(ETrue);			  
   111 		}
   108 		}
   112 		
   109 		
   113 	iUiUtility = CGlxUiUtility::UtilityL();	
   110 	iUiUtility = CGlxUiUtility::UtilityL();	
   114 	iAddToTag =  CGlxCommandHandlerAddToContainer::NewL(this, EGlxCmdAddTag, EFalse);
   111 	iAddToTag =  CGlxCommandHandlerAddToContainer::NewL(this, EGlxCmdAddTag, EFalse);
   115 	iAddToAlbum =  CGlxCommandHandlerAddToContainer::NewL(this, EGlxCmdAddToAlbum, EFalse);
   112 	iAddToAlbum =  CGlxCommandHandlerAddToContainer::NewL(this, EGlxCmdAddToAlbum, EFalse);
   126 // ~CGlxMetadataDialog
   123 // ~CGlxMetadataDialog
   127 // -----------------------------------------------------------------------------
   124 // -----------------------------------------------------------------------------
   128 //
   125 //
   129 CGlxMetadataDialog::~CGlxMetadataDialog()
   126 CGlxMetadataDialog::~CGlxMetadataDialog()
   130 	{
   127 	{
   131 		
   128     TRACER("CGlxMetadataDialog::~CGlxMetadataDialog");
   132 	TRACER("CGlxMetadataDialog::~CGlxMetadataDialog");
   129 
   133 		
   130     //To Disable the status pane if the dialog is launched from fullscreenview	
   134 	//To Disable the status pane if the dialog is launched from fullscreenview	
   131     if (!iStatusPaneAvailable && iAvkonAppUi)
   135 	if(!iStatusPaneAvailable)
   132         {
   136 	    {
   133         iAvkonAppUi->StatusPane()->MakeVisible(EFalse);
   137 	    GetAppUi()->StatusPane()->MakeVisible(EFalse);
   134         }
   138 	    }	    
   135 
   139 	
   136     TRAP_IGNORE(SetPreviousTitleL());
   140 	TRAP_IGNORE(SetPreviousTitleL());
   137 
   141 		
   138     delete iPreviousTitle;
   142 	delete iPreviousTitle;
   139     delete iMetadataCmdHandler;
   143 	delete iMetadataCmdHandler;	
       
   144 
   140 
   145     // Restore the Toolbar as it was in the Calling application
   141     // Restore the Toolbar as it was in the Calling application
   146     SetDetailsDlgToolbarVisibility(ETrue);
   142     SetDetailsDlgToolbarVisibility(ETrue);
   147 	
   143 
   148 	// If details launched from FullScreen View, while moving back,
   144     // If details launched from FullScreen View, while moving back,
   149 	// all the UI components should be hidden. Hence processing this command here.
   145     // all the UI components should be hidden. Hence processing this command here.
   150 	TRAP_IGNORE(GetAppUi()->ProcessCommandL(EGlxCmdResetView));
   146     if (iAvkonAppUi)
   151 	
   147         {
   152   if(iAddToTag)
   148         TRAP_IGNORE(iAvkonAppUi->ProcessCommandL(EGlxCmdResetView));
   153 	   {
   149         }
   154       delete iAddToTag;
   150 
   155       }
   151     if (iAddToTag)
   156       
   152         {
   157   if(iAddToAlbum)
   153         delete iAddToTag;
   158       {
   154         }
   159       delete iAddToAlbum;
   155 
   160       }
   156     if (iAddToAlbum)
   161        
   157         {
   162 	if( iUiUtility )
   158         delete iAddToAlbum;
   163 		{
   159         }
   164 		iUiUtility->Close();
   160 
   165 		}
   161     if (iUiUtility)
   166 		
   162         {
   167 	if (iResourceOffset)
   163         iUiUtility->Close();
   168 		{
   164         }
   169 		CCoeEnv::Static()->DeleteResourceFile(iResourceOffset);
   165 
   170         }   
   166     if (iResourceOffset)
       
   167         {
       
   168         CCoeEnv::Static()->DeleteResourceFile(iResourceOffset);
       
   169         }
   171     }
   170     }
   172 
   171 
   173 // ---------------------------------------------------------------------------
   172 // ---------------------------------------------------------------------------
   174 // SetDetailsDlgToolbarVisibility()
   173 // SetDetailsDlgToolbarVisibility()
   175 // ---------------------------------------------------------------------------
   174 // ---------------------------------------------------------------------------
   176 void CGlxMetadataDialog::SetDetailsDlgToolbarVisibility(TBool aVisible)
   175 void CGlxMetadataDialog::SetDetailsDlgToolbarVisibility(TBool aVisible)
   177     {
   176     {
   178     TRACER("CGlxMetadataDialog::SetDetailsDlgToolbarVisibility");
   177     TRACER("CGlxMetadataDialog::SetDetailsDlgToolbarVisibility");
   179     CAknAppUi* appUi = GetAppUi();
       
   180     __ASSERT_DEBUG(appUi, Panic(EGlxPanicNullPointer));
       
   181 
       
   182   
   178   
   183     HandleToolbarResetting(aVisible);
   179     HandleToolbarResetting(aVisible);
   184     CAknToolbar* currentPopupToolbar = appUi->CurrentPopupToolbar();
   180     CAknToolbar* currentPopupToolbar = iAvkonAppUi->CurrentPopupToolbar();
   185     if(currentPopupToolbar)
   181     if(currentPopupToolbar)
   186         {
   182         {
   187         currentPopupToolbar->SetToolbarVisibility(aVisible);
   183         currentPopupToolbar->SetToolbarVisibility(aVisible);
   188         currentPopupToolbar->MakeVisible( aVisible ); 
   184         currentPopupToolbar->MakeVisible( aVisible ); 
   189         }
   185         }
   282     controlInfo.iControl        = NULL;
   278     controlInfo.iControl        = NULL;
   283     controlInfo.iTrailerTextId  = 0;
   279     controlInfo.iTrailerTextId  = 0;
   284     controlInfo.iFlags          = 0;
   280     controlInfo.iFlags          = 0;
   285     if (aControlType == EMetaDataDialogListBox)
   281     if (aControlType == EMetaDataDialogListBox)
   286         {
   282         {
   287         iContainer = CGlxMetadataContainer::NewL(GetAppUi()->ClientRect(),
   283         iContainer = CGlxMetadataContainer::NewL(iAvkonAppUi->ClientRect(),
   288 		                                         *this, iUri, *this);        
   284 		                                         *this, iUri, *this);        
   289         controlInfo.iControl = iContainer; // giving ownership   
   285         controlInfo.iControl = iContainer; // giving ownership   
   290         }
   286         }
   291     return controlInfo; // returns ownership of ItemList
   287     return controlInfo; // returns ownership of ItemList
   292     }
   288     }
   563 // -----------------------------------------------------------------------------
   559 // -----------------------------------------------------------------------------
   564 //
   560 //
   565 void CGlxMetadataDialog::HandleToolbarResetting(TBool aVisible)
   561 void CGlxMetadataDialog::HandleToolbarResetting(TBool aVisible)
   566     {
   562     {
   567     TRACER("CGlxMetadataDialog::HandleToolbarResetting");
   563     TRACER("CGlxMetadataDialog::HandleToolbarResetting");
   568     CAknAppUi* appUi = GetAppUi();
   564 
   569     __ASSERT_DEBUG(appUi, Panic(EGlxPanicNullPointer));
   565     CAknToolbar* popupToolbar = iAvkonAppUi->PopupToolbar();
   570 
       
   571     CAknToolbar* popupToolbar = appUi->PopupToolbar();
       
   572     if(popupToolbar)
   566     if(popupToolbar)
   573         {
   567         {
   574         popupToolbar->SetToolbarVisibility( !aVisible ); 
   568         popupToolbar->SetToolbarVisibility( !aVisible ); 
   575         popupToolbar->MakeVisible( !aVisible );
   569         popupToolbar->MakeVisible( !aVisible );
   576         if(!aVisible)
   570         if(!aVisible)
   577         	{
   571         	{
   578         	popupToolbar->DrawNow();    
   572         	popupToolbar->DrawNow();    
   579         	}
   573         	}
   580         }   
   574         }   
   581     CAknToolbar* toolbar = appUi->CurrentFixedToolbar();
   575     CAknToolbar* toolbar = iAvkonAppUi->CurrentFixedToolbar();
   582     if(toolbar)
   576     if(toolbar)
   583         {
   577         {
   584         toolbar->HideItemsAndDrawOnlyBackground(!aVisible);
   578         toolbar->HideItemsAndDrawOnlyBackground(!aVisible);
   585         toolbar->SetToolbarVisibility(aVisible);
   579         toolbar->SetToolbarVisibility(aVisible);
   586         toolbar->MakeVisible( aVisible );
   580         toolbar->MakeVisible( aVisible );