--- a/usbuis/usbuinotif/src/usbuinotifotgwarning.cpp Tue Aug 31 16:13:57 2010 +0300
+++ b/usbuis/usbuinotif/src/usbuinotifotgwarning.cpp Wed Sep 01 12:20:49 2010 +0100
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2007, 2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
@@ -17,15 +17,17 @@
// INCLUDE FILES
-#include <hb/hbwidgets/hbdevicemessageboxsymbian.h>
-#include <hb/hbcore/hbtextresolversymbian.h>
-#include "usbuinotifotgwarning.h" // Own class definition
-#include "usbuinotifdebug.h" // Debugging macros
+#include <eikenv.h> // Eikon environment
+#include <aknnotedialog.h>
+#include <bautils.h> // BAFL utils (for language file)
+#include <StringLoader.h> // Localisation stringloader
+#include <AknMediatorFacade.h> // for cover display support
+#include <usbuinotif.rsg> // Own resources
+#include <secondarydisplay/usbuinotifsecondarydisplay.h> // Dialog index for cover UI
+#include "usbuinotifotgwarning.h" // Own class definition
+#include "usbuinotifdebug.h" // Debugging macros
-// CONSTANTS
-/** granularity for allocating warning strings */
-const TInt KUsbOtgWarningGranularity = 1;
// ================= MEMBER FUNCTIONS =========================================
@@ -52,7 +54,7 @@
// ----------------------------------------------------------------------------
//
CUsbUiNotifOtgWarning::CUsbUiNotifOtgWarning() :
- iStringIds(NULL), iNote( NULL)
+ iStringIds( KUsbUiNotifOtgGeneralNoteGranularity), iNote( NULL)
{
FLOG(_L("[USBUINOTIF]\t CUsbUiNotifOtgWarning::constructor()"));
}
@@ -67,7 +69,6 @@
//Make sure that the request is completed. Note that inside the destructor,
//this virtual function call is to local CUsbUiNotifOtgWarning::Cancel,
//not to any possibly derived class implementation.
- delete iStringIds;
Cancel();
FLOG(_L("[USBUINOTIF]\t CUsbUiNotifOtgWarning::destructor completed()"));
}
@@ -75,9 +76,7 @@
void CUsbUiNotifOtgWarning::ConstructL()
{
CUSBUINotifierBase::ConstructL();
- iStringIds = new (ELeave) CDesCArrayFlat(KUsbOtgWarningGranularity);
- _LIT(KPartiallySupported, "txt_usb_info_partially_supported_usb_device_connec");
- iStringIds->AppendL( KPartiallySupported);
+ iStringIds.AppendL( R_USB_OTG_WARNING_PARTIAL_SUPPORT);
}
// ----------------------------------------------------------------------------
@@ -106,11 +105,10 @@
if (iNote)
{
FLOG(_L("[USBUINOTIF]\t CUsbUiNotifOtgWarning::Cancel - delete iNote"));
- iNote->Close();
delete iNote;
iNote = NULL;
}
- CUSBUINotifierBase::Cancel();
+ CompleteMessage( KErrNone );
FLOG(_L("[USBUINOTIF]\t CUsbUiNotifOtgWarning::Cancel() completed"));
}
@@ -121,73 +119,67 @@
// This notifier is synchronous so this function is not used.
// ----------------------------------------------------------------------------
//
-void CUsbUiNotifOtgWarning::StartDialogL(const TDesC8& aBuffer,
+void CUsbUiNotifOtgWarning::GetParamsL(const TDesC8& aBuffer,
TInt aReplySlot, const RMessagePtr2& aMessage)
{
- FLOG(_L("[USBUINOTIF]\t CUsbUiNotifOtgWarning::StartDialogL"));
- if (iReplySlot != 0 || iNeedToCompleteMessage)
+ FLOG(_L("[USBUINOTIF]\t CUsbUiNotifOtgWarning::GetParamsL"));
+ if (iNote || iReplySlot != 0 || iNeedToCompleteMessage)
{
User::Leave( KErrInUse );
}
-
- InitializeTextResolver();
-
- iMessage = aMessage;
- iNeedToCompleteMessage = ETrue;
- iReplySlot = aReplySlot;
// Get parameters
//
TPckgC<TInt> pckg( iNoteId );
pckg.Set( aBuffer );
iNoteId = pckg();
- FTRACE(FPrint(_L("[USBUINOTIF]\t CUsbUiNotifOtgWarning::GetParamsL iNoteId: %d"), iNoteId ));
- if ( iNoteId < 0 || iNoteId >= iStringIds->MdcaCount())
+
+ FTRACE(FPrint(_L("[USBUINOTIF]\t CUsbUiNotifOtgWarning::GetParamsL iNoteId: %d"), iNoteId ));
+ if ( iNoteId < 0 || iNoteId >= iStringIds.Count() )
{
User::Leave( KErrArgument);
- }
- if (iNote)
- {
- delete iNote;
- iNote = NULL;
- }
-
- iNote = CHbDeviceMessageBoxSymbian::NewL(
- CHbDeviceMessageBoxSymbian::EWarning, this);
- HBufC* stringHolder = HbTextResolverSymbian::LoadLC(iStringIds->MdcaPoint(iNoteId) );
- iNote->SetTextL(*stringHolder);
- iNote->ShowL();
- CleanupStack::PopAndDestroy( stringHolder );
-
- FLOG(_L("[USBUINOTIF]\t CUsbUiNotifOtgWarning::StartDialogL completed"));
+ }
+
+ iMessage = aMessage;
+ iNeedToCompleteMessage = ETrue;
+ iReplySlot = aReplySlot;
+
+ SetActive();
+ iStatus = KRequestPending;
+ TRequestStatus* stat = &iStatus;
+ User::RequestComplete( stat, KErrNone );
+ FLOG(_L("[USBUINOTIF]\t CUsbUiNotifOtgWarning::GetParamsL() completed"));
}
// ----------------------------------------------------------------------------
-// Call back function to observe device message box closing.
+// CUsbUiNotifOtgWarning::RunL
+// Mandatory for Active Objects. This notifier is synchronous
+// so this function is not used.
// ----------------------------------------------------------------------------
//
-void CUsbUiNotifOtgWarning::MessageBoxClosed(
- const CHbDeviceMessageBoxSymbian* /*aMessageBox*/,
- CHbDeviceMessageBoxSymbian::TButtonId aButton)
+void CUsbUiNotifOtgWarning::RunL()
{
- FLOG(_L("[USBUINOTIF]\t CUsbUiNotifMSMMError::MessageBoxClosed"));
- int returnValue = KErrNone;
-
- //iQuery will be deleted in Cancel. If Cancel is not called, it will be
- //deleted next time the query is shown.
+ FLOG(_L("[USBUINOTIF]\t CUsbUiNotifOtgWarning::RunL"));
- if (aButton == CHbDeviceMessageBoxSymbian::EAcceptButton)
+ // Create confirmation note
+ //
+ HBufC* str = StringLoader::LoadL( iStringIds[iNoteId] );
+ CleanupStack::PushL( str );
+ iNote = new (ELeave) CAknWarningNote( ETrue );
+
+ iNote->SetTimeout( CAknNoteDialog::ENoTimeout );
+
+ if (iCoverDisplaySupported)
{
- returnValue = KErrNone;
- }
- else
- {
- returnValue = KErrCancel;
+ iNote->PublishDialogL( iNoteId, KUsbUiNotifOtgWarning );
}
- CompleteMessage( returnValue );
-
- FLOG(_L("[USBUINOTIF]\t CUsbUiNotifMSMMError::MessageBoxClosed completed"));
+ TInt t = iNote->ExecuteLD( *str );
+ iNote = NULL;
+ CleanupStack::PopAndDestroy( str );
+
+ CompleteMessage( KErrNone );
+ FLOG(_L("[USBUINOTIF]\t CUsbUiNotifOtgWarning::RunL() completed"));
}
// End of File