Commit | Line | Data |
27da23d5 |
1 | /* Copyright (c) 2004-2005 Nokia. All rights reserved. */ |
2 | |
3 | /* The PerlApp application is licensed under the same terms as Perl itself. */ |
4 | |
5 | #ifndef __PerlApp_h__ |
6 | #define __PerlApp_h__ |
7 | |
8 | #include <aknapp.h> |
9 | #include <aknappui.h> |
10 | #include <akndoc.h> |
11 | #include <coecntrl.h> |
12 | #include <f32file.h> |
13 | |
14 | class CPerlAppDocument : public CAknDocument |
15 | { |
16 | public: |
17 | CPerlAppDocument(CEikApplication& aApp):CAknDocument(aApp) {;} |
18 | CFileStore* OpenFileL(TBool aDoOpen, const TDesC& aFilename, RFs& aFs); |
19 | private: // from CEikDocument |
20 | CEikAppUi* CreateAppUiL(); |
21 | }; |
22 | |
23 | class CPerlAppApplication : public CAknApplication |
24 | { |
25 | private: |
26 | CApaDocument* CreateDocumentL(); |
27 | TUid AppDllUid() const; |
28 | }; |
29 | |
30 | const TUint KPerlAppOneLinerSize = 80; |
31 | |
32 | class CPerlAppView; |
33 | |
34 | class CPerlAppUi : public CAknAppUi |
35 | { |
36 | public: |
37 | void ConstructL(); |
38 | ~CPerlAppUi(); |
39 | void HandleCommandL(TInt aCommand); |
40 | void OpenFileL(const TDesC& aFileName); |
41 | TBool ProcessCommandParametersL(TApaCommand aCommand, TFileName& aDocumentName, const TDesC8& aTail); |
42 | void InstallOrRunL(const TFileName& aFileName); |
43 | void SetFs(const RFs& aFs); |
44 | private: |
45 | CPerlAppView* iAppView; |
46 | RFs* iFs; |
47 | TBuf<KPerlAppOneLinerSize> iOneLiner; |
48 | }; |
49 | |
50 | class CPerlAppView : public CCoeControl |
51 | { |
52 | public: |
53 | static CPerlAppView* NewL(const TRect& aRect); |
54 | static CPerlAppView* NewLC(const TRect& aRect); |
55 | void Draw(const TRect& aRect) const; |
56 | private: |
57 | void ConstructL(const TRect& aRect); |
58 | }; |
59 | |
60 | #endif // __PerlApp_h__ |