[storage] Fix dependency
[abstract.git] / view / aaSessionHistory.h
blob185c0c611fde31bb47d74e83d768becbfc4f01b4
1 /*
2 * Copyright (C) 2007 Sergey Yanovich <ynvich@gmail.com>
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License as
6 * published by the Free Software Foundation; either version 2 of the
7 * License, or (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * General Public License for more details.
14 * You should have received a copy of the GNU General Public
15 * License along with this program; if not, write to the
16 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17 * Boston, MA 02111-1307, USA.
20 #ifndef AASESSIONHISTORY_H
21 #define AASESSIONHISTORY_H 1
23 #define AA_SESSIONHISTORY_CID \
24 {0xceee0f16, 0x7194, 0x4831, {0xac, 0x37, 0x3c, 0xd2, 0x5f, 0xb1, 0x09, 0x6b}}
25 #define AA_SESSIONHISTORY_CONTRACT_ID "@aasii.org/view/session-history;1"
27 #include "aaISHistory.h"
28 #include "aaISession.h"
30 class aaISession;
31 class nsISHistory;
32 class nsISHistoryInternal;
33 class nsIWebNavigation;
34 class aaISession;
35 class aaIPageView;
37 class aaSessionHistory : public nsISHistory,
38 public nsISHistoryInternal,
39 public nsIWebNavigation,
40 public aaISHistory,
41 public aaISession
43 public:
44 aaSessionHistory();
45 virtual ~aaSessionHistory();
46 NS_DECL_ISUPPORTS
47 NS_FORWARD_NSISHISTORY(mSH->)
48 NS_DECL_NSISHISTORYINTERNAL
49 NS_FORWARD_NSIWEBNAVIGATION(mWN->)
50 #if 0
51 NS_DECL_NSISHISTORY
52 NS_FORWARD_NSISHISTORYINTERNAL(mSHI->)
53 NS_DECL_NSIWEBNAVIGATION
54 #endif
55 NS_FORWARD_AAISAVEQUERY(mSession->)
56 NS_FORWARD_AAISESSION(mSession->)
57 NS_DECL_AAISHISTORY
59 nsresult Init() {return mSession ? NS_OK : NS_ERROR_FAILURE;}
60 private:
61 friend class aaViewTest;
63 nsCOMPtr<aaISession> mSession;
64 nsCOMPtr<nsISHistory> mSH;
65 nsCOMPtr<nsISHistoryInternal> mSHI;
66 nsCOMPtr<nsIWebNavigation> mWN;
68 PRBool mChoosing;
69 nsCOMPtr<nsISupports> mQueryBuffer;
71 aaIPageView* getDestination(PRInt32 offset, nsresult &rv);
74 #endif /* AASESSIONHISTORY_H */
76 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
77 /* vim:set ts=2 sw=2 sts=2 et cindent tw=79 ft=cpp: */