--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/browser/ui/src/ARView.cpp Fri Jun 25 12:50:05 2010 +0200
@@ -0,0 +1,108 @@
+/*
+ * Name : ARView.cpp
+ * Description :
+ * Project : This file is part of OpenMAR, an Open Mobile Augmented Reality browser
+ * Website : http://OpenMAR.org
+ *
+ * Copyright (c) 2010 David Caabeiro
+ *
+ * All rights reserved. This program and the accompanying materials are made available
+ * under the terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ */
+
+#include "ARView.h"
+
+#include <AknViewAppui.h>
+
+#include <OpenMAR_0x2002E1AB.rsg>
+
+#include "Application.hrh"
+
+#include "ARContainer.h"
+
+#include <AknUtils.h>
+
+#include "Logger.h"
+
+CARView* CARView::NewL()
+{
+ CARView* self = new(ELeave) CARView();
+ CleanupStack::PushL(self);
+ self->ConstructL();
+ CleanupStack::Pop(self);
+
+ return self;
+}
+
+CARView::~CARView()
+{
+ DoDeactivate();
+}
+
+CARView::CARView()
+{}
+
+void CARView::ConstructL()
+{
+ BaseConstructL(R_AR_VIEW);
+}
+
+TUid CARView::Id() const
+{
+ return TUid::Uid(EARView);
+}
+
+void CARView::DoActivateL(const TVwsViewId& aPrevViewId, TUid aCustomMessageId, const TDesC8& aCustomMessage)
+{
+ LOGTXT("CARView::DoActivateL()");
+
+ if (!iRenderer)
+ {
+ iPrevViewId = aPrevViewId;
+
+ // Make status pane invisible
+ CEikStatusPane* statusPane = StatusPane();
+ if (statusPane)
+ statusPane->MakeVisible(EFalse);
+
+ iRenderer = CARContainer::NewL(*this, AppUi()->ApplicationRect());
+
+ AppUi()->AddToStackL(*this, iRenderer);
+ }
+}
+
+void CARView::DoDeactivate()
+{
+ if (iRenderer)
+ {
+ AppUi()->RemoveFromViewStack(*this, iRenderer);
+
+ delete iRenderer;
+ iRenderer = 0;
+ }
+}
+
+void CARView::DynInitToolbarL(TInt aResourceId, CAknToolbar* aToolbar)
+{
+}
+
+void CARView::OfferToolbarEventL(TInt aCommand)
+{
+// HandleCommandL(aCommand);
+}
+
+void CARView::HandleCommandL(TInt aCommand)
+{
+ switch (aCommand)
+ {
+ case EAknSoftkeyBack:
+ AppUi()->ActivateLocalViewL(iPrevViewId.iViewUid);
+ break;
+
+ default:
+ AppUi()->HandleCommandL(aCommand);
+ break;
+ }
+}