Files
Mozilla/mozilla/layout/xul/base/src/nsSpringFrame.cpp
evaughan%netscape.com cd4a9a369b 1) Scrolling menus
2) many bug fixes
3) box debuging flags


git-svn-id: svn://10.0.0.236/trunk@69737 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-15 04:12:31 +00:00

79 lines
2.1 KiB
C++

/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public
* License Version 1.1 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.mozilla.org/NPL/
*
* Software distributed under the License is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the License for the specific language governing
* rights and limitations under the License.
*
* The Original Code is Mozilla Communicator client code.
*
* The Initial Developer of the Original Code is Netscape Communications
* Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All
* Rights Reserved.
*
* Contributor(s):
*/
//
// Eric Vaughan
// Netscape Communications
//
// See documentation in associated header file
//
#include "nsSpringFrame.h"
#include "nsIStyleContext.h"
nsresult
NS_NewSpringFrame ( nsIPresShell* aPresShell, nsIFrame** aNewFrame )
{
NS_PRECONDITION(aNewFrame, "null OUT ptr");
if (nsnull == aNewFrame) {
return NS_ERROR_NULL_POINTER;
}
nsSpringFrame* it = new (aPresShell) nsSpringFrame (aPresShell);
if (nsnull == it)
return NS_ERROR_OUT_OF_MEMORY;
*aNewFrame = it;
return NS_OK;
} // NS_NewSpringFrame
NS_IMETHODIMP nsSpringFrame::GetFrameForPoint(nsIPresContext* aPresContext,
const nsPoint& aPoint,
nsFramePaintLayer aWhichLayer,
nsIFrame** aFrame)
{
if ((aWhichLayer != NS_FRAME_PAINT_LAYER_FOREGROUND))
return NS_ERROR_FAILURE;
if (!mRect.Contains(aPoint))
return NS_ERROR_FAILURE;
/*
// see if it is in our border, padding, or inset
nsRect r(mRect);
nsMargin m;
GetInset(m);
r.Deflate(m);
GetBorderAndPadding(m);
r.Deflate(m);
if (!r.Contains(aPoint)) {
*/
*aFrame = this;
/*
return NS_OK;
}
*/
return NS_OK;
}