home *** CD-ROM | disk | FTP | other *** search
- /* ========================
- * PedViewScrollerSimple.cc
- * ========================
- */
-
- #include "PedestalDebugging.h"
-
- #include "PedViewScrollerSimple.hh"
- #include "PedPaneSubView.hh"
- #include "PedViewScroll.hh"
- #include "PedScrollbar.hh"
-
-
- PedViewScrollerSimple::PedViewScrollerSimple(PedPaneSubView &inSuperPane)
- : PedViewScroller(inSuperPane), mPane(NULL)
- {
- mPane = new PedPaneSubView(*this);
- //mPane->Resize(mFrame.right - 15, mFrame.bottom - 15);
- mScrollView = new PedViewScroll(*mPane);
- mPane->SetSubView(mScrollView);
- }
-
- PedViewScrollerSimple::~PedViewScrollerSimple()
- {
- if (mPane) mPane->release();
- if (mScrollView) mScrollView->release();
- }
-
- void
- PedViewScrollerSimple::Dispose()
- {
- PedViewScroller::Dispose();
- if (mScrollView) {
- mScrollView->Dispose();
- mScrollView->release();
- mScrollView = NULL;
- }
- if (mPane) {
- mPane->Dispose();
- mPane->release();
- mPane = NULL;
- }
- }
-
-
- PedViewScroll *
- PedViewScrollerSimple::ScrollView()
- {
- return mScrollView;
- }
-
- PedPane *
- PedViewScrollerSimple::Pane()
- {
- return mScrollView ? mScrollView->Pane() : NULL;
- }
-
- PedPane *
- PedViewScrollerSimple::MyPane()
- {
- return mPane;
- }
-
- void
- PedViewScrollerSimple::SetPane(PedPane *inPane)
- {
- if (mScrollView) {
- mScrollView->SetPane(inPane);
- }
- Calibrate();
- }
-
-
- void
- PedViewScrollerSimple::Scroll(short inH, short inV, bool inUpdate)
- {
- PedViewScroll *scrollview = ScrollView();
- if (scrollview) {
- scrollview->Scroll(inH, inV, inUpdate);
- }
- Calibrate();
- }
-
-
- void
- PedViewScrollerSimple::GetAperture(Rect &outAperture)
- {
- PedViewScroll *scrollview = ScrollView();
- if (scrollview) {
- scrollview->GetFrame(outAperture);
- } else {
- ::SetRect(&outAperture, 0, 0, 0, 0);
- }
- }
-
- void
- PedViewScrollerSimple::GetScrollPos(Point &outPos)
- {
- PedViewScroll *scrollview = ScrollView();
- if (scrollview) {
- scrollview->GetScrollPos(outPos);
- } else {
- ::SetPt(&outPos, 0, 0);
- }
- }
-