зеркало из https://github.com/mozilla/pjs.git
Add SetVisibility method to Scroll Views
Bug 92333 r=kmcclusk sr=attinasi a=asa
This commit is contained in:
Родитель
68ab258aed
Коммит
6bdd9485c2
|
@ -176,6 +176,11 @@ public:
|
|||
NS_IMETHOD GetScrollbarVisibility(PRBool *aVerticalVisible,
|
||||
PRBool *aHorizontalVisible) const = 0;
|
||||
|
||||
/**
|
||||
* Set the visible (disables the scrollbars when the are hidden)
|
||||
*/
|
||||
NS_IMETHOD SetScrollbarVisibility(PRBool aVerticalVisible,
|
||||
PRBool aHorizontalVisible) = 0;
|
||||
/**
|
||||
* Set the properties describing how scrolling can be performed
|
||||
* in this scrollable.
|
||||
|
|
|
@ -345,6 +345,14 @@ NS_IMETHODIMP nsScrollPortView::GetScrollbarVisibility(PRBool *aVerticalVisible,
|
|||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsScrollPortView::SetScrollbarVisibility(PRBool aVerticalVisible,
|
||||
PRBool aHorizontalVisible)
|
||||
{
|
||||
NS_WARNING("Attempt to set scrollbars visibility this is not xp!");
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
||||
|
||||
void nsScrollPortView::AdjustChildWidgets(nsScrollPortView *aScrolling, nsView *aView, nscoord aDx, nscoord aDy, float scale)
|
||||
{
|
||||
|
|
|
@ -75,6 +75,8 @@ public:
|
|||
NS_IMETHOD GetControlInsets(nsMargin &aInsets) const;
|
||||
NS_IMETHOD GetScrollbarVisibility(PRBool *aVerticalVisible,
|
||||
PRBool *aHorizontalVisible) const;
|
||||
NS_IMETHOD SetScrollbarVisibility(PRBool aVerticalVisible,
|
||||
PRBool aHorizontalVisible);
|
||||
NS_IMETHOD SetScrollProperties(PRUint32 aProperties);
|
||||
NS_IMETHOD GetScrollProperties(PRUint32 *aProperties);
|
||||
NS_IMETHOD SetLineHeight(nscoord aHeight);
|
||||
|
|
|
@ -1389,6 +1389,17 @@ NS_IMETHODIMP nsScrollingView::GetScrollbarVisibility(PRBool *aVerticalVisible,
|
|||
return NS_OK;
|
||||
}
|
||||
|
||||
// must also disable them or they get turned back on
|
||||
NS_IMETHODIMP nsScrollingView::SetScrollbarVisibility(PRBool aVerticalVisible,
|
||||
PRBool aHorizontalVisible)
|
||||
{
|
||||
((ScrollBarView *)mHScrollBarView)->SetEnabled(aHorizontalVisible);
|
||||
((ScrollBarView *)mVScrollBarView)->SetEnabled(aVerticalVisible);
|
||||
mHScrollBarView->SetVisibility(aHorizontalVisible?nsViewVisibility_kShow:nsViewVisibility_kHide);
|
||||
mVScrollBarView->SetVisibility(aVerticalVisible?nsViewVisibility_kShow:nsViewVisibility_kHide);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
void nsScrollingView::AdjustChildWidgets(nsScrollingView *aScrolling, nsView *aView,
|
||||
nscoord aDx, nscoord aDy, float scale)
|
||||
{
|
||||
|
|
|
@ -89,6 +89,8 @@ public:
|
|||
NS_IMETHOD GetControlInsets(nsMargin &aInsets) const;
|
||||
NS_IMETHOD GetScrollbarVisibility(PRBool *aVerticalVisible,
|
||||
PRBool *aHorizontalVisible) const;
|
||||
NS_IMETHOD SetScrollbarVisibility(PRBool aVerticalVisible,
|
||||
PRBool aHorizontalVisible);
|
||||
NS_IMETHOD SetScrollProperties(PRUint32 aProperties);
|
||||
NS_IMETHOD GetScrollProperties(PRUint32 *aProperties);
|
||||
NS_IMETHOD SetLineHeight(nscoord aHeight);
|
||||
|
|
Загрузка…
Ссылка в новой задаче