summaryrefslogtreecommitdiff
path: root/symbian/PerlApp.h
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2005-04-18 16:18:30 +0300
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>2005-04-21 15:38:30 +0000
commit27da23d53ccce622bc51822f59df8def79b4df95 (patch)
tree1202440e0fbf7a2fc1bb54993d11cda7b245f1b4 /symbian/PerlApp.h
parentec0624293b57ae07d6b2c32bae099d4f163e7e07 (diff)
downloadperl-27da23d53ccce622bc51822f59df8def79b4df95.tar.gz
Symbian port of Perl
Message-ID: <B356D8F434D20B40A8CEDAEC305A1F2453D653@esebe105.NOE.Nokia.com> p4raw-id: //depot/perl@24271
Diffstat (limited to 'symbian/PerlApp.h')
-rw-r--r--symbian/PerlApp.h60
1 files changed, 60 insertions, 0 deletions
diff --git a/symbian/PerlApp.h b/symbian/PerlApp.h
new file mode 100644
index 0000000000..37a02f2502
--- /dev/null
+++ b/symbian/PerlApp.h
@@ -0,0 +1,60 @@
+/* Copyright (c) 2004-2005 Nokia. All rights reserved. */
+
+/* The PerlApp application is licensed under the same terms as Perl itself. */
+
+#ifndef __PerlApp_h__
+#define __PerlApp_h__
+
+#include <aknapp.h>
+#include <aknappui.h>
+#include <akndoc.h>
+#include <coecntrl.h>
+#include <f32file.h>
+
+class CPerlAppDocument : public CAknDocument
+{
+ public:
+ CPerlAppDocument(CEikApplication& aApp):CAknDocument(aApp) {;}
+ CFileStore* OpenFileL(TBool aDoOpen, const TDesC& aFilename, RFs& aFs);
+ private: // from CEikDocument
+ CEikAppUi* CreateAppUiL();
+};
+
+class CPerlAppApplication : public CAknApplication
+{
+ private:
+ CApaDocument* CreateDocumentL();
+ TUid AppDllUid() const;
+};
+
+const TUint KPerlAppOneLinerSize = 80;
+
+class CPerlAppView;
+
+class CPerlAppUi : public CAknAppUi
+{
+ public:
+ void ConstructL();
+ ~CPerlAppUi();
+ void HandleCommandL(TInt aCommand);
+ void OpenFileL(const TDesC& aFileName);
+ TBool ProcessCommandParametersL(TApaCommand aCommand, TFileName& aDocumentName, const TDesC8& aTail);
+ void InstallOrRunL(const TFileName& aFileName);
+ void SetFs(const RFs& aFs);
+ private:
+ CPerlAppView* iAppView;
+ RFs* iFs;
+ TBuf<KPerlAppOneLinerSize> iOneLiner;
+};
+
+class CPerlAppView : public CCoeControl
+{
+ public:
+ static CPerlAppView* NewL(const TRect& aRect);
+ static CPerlAppView* NewLC(const TRect& aRect);
+ void Draw(const TRect& aRect) const;
+ private:
+ void ConstructL(const TRect& aRect);
+};
+
+#endif // __PerlApp_h__