Completed work on -width and -height for specifying the initial size of the window

git-svn-id: svn://10.0.0.236/trunk@21186 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
rods%netscape.com 1999-02-18 21:52:27 +00:00
parent 1061e81618
commit 7f9d9e2cbd
4 changed files with 26 additions and 14 deletions

View File

@ -50,11 +50,13 @@ public:
NS_IMETHOD CreateTopLevelWindow(nsIURL* aUrl,
nsString& aControllerIID,
nsIWidget*& aResult, nsIStreamObserver* anObserver) = 0;
nsIWidget*& aResult, nsIStreamObserver* anObserver,
PRInt32 aInitialWidth, PRInt32 aInitialHeight) = 0;
NS_IMETHOD CreateDialogWindow(nsIWidget * aParent,
nsIURL* aUrl,
nsString& aControllerIID,
nsIWidget*& aResult, nsIStreamObserver* anObserver) = 0;
nsIWidget*& aResult, nsIStreamObserver* anObserver,
PRInt32 aInitialWidth, PRInt32 aInitialHeight) = 0;
NS_IMETHOD CloseTopLevelWindow(nsIWidget* aWindow) = 0;
NS_IMETHOD RegisterTopLevelWindow(nsIWidget* aWindow) = 0;
NS_IMETHOD UnregisterTopLevelWindow(nsIWidget* aWindow) = 0;

View File

@ -66,11 +66,13 @@ public:
NS_IMETHOD DispatchNativeEvent(void * aEvent);
NS_IMETHOD Shutdown(void);
NS_IMETHOD CreateTopLevelWindow(nsIURL* aUrl, nsString& aControllerIID,
nsIWidget*& aResult, nsIStreamObserver* anObserver);
nsIWidget*& aResult, nsIStreamObserver* anObserver,
PRInt32 aInitialWidth, PRInt32 aInitialHeight);
NS_IMETHOD CreateDialogWindow(nsIWidget * aParent,
nsIURL* aUrl,
nsString& aControllerIID,
nsIWidget*& aResult, nsIStreamObserver* anObserver);
nsIWidget*& aResult, nsIStreamObserver* anObserver,
PRInt32 aInitialWidth, PRInt32 aInitialHeight);
NS_IMETHOD CloseTopLevelWindow(nsIWidget* aWindow);
NS_IMETHOD RegisterTopLevelWindow(nsIWidget* aWindow);
NS_IMETHOD UnregisterTopLevelWindow(nsIWidget* aWindow);
@ -202,7 +204,8 @@ nsAppShellService::Shutdown(void)
*/
NS_IMETHODIMP
nsAppShellService::CreateTopLevelWindow(nsIURL* aUrl, nsString& aControllerIID,
nsIWidget*& aResult, nsIStreamObserver* anObserver)
nsIWidget*& aResult, nsIStreamObserver* anObserver,
PRInt32 aInitialWidth, PRInt32 aInitialHeight)
{
nsresult rv;
nsWebShellWindow* window;
@ -211,7 +214,7 @@ nsAppShellService::CreateTopLevelWindow(nsIURL* aUrl, nsString& aControllerIID,
if (nsnull == window) {
rv = NS_ERROR_OUT_OF_MEMORY;
} else {
rv = window->Initialize(mAppShell, aUrl, aControllerIID, anObserver);
rv = window->Initialize(mAppShell, aUrl, aControllerIID, anObserver, aInitialWidth, aInitialHeight);
if (NS_SUCCEEDED(rv)) {
aResult = window->GetWidget();
RegisterTopLevelWindow(aResult);
@ -247,7 +250,8 @@ nsAppShellService::CloseTopLevelWindow(nsIWidget* aWindow)
NS_IMETHODIMP
nsAppShellService::CreateDialogWindow(nsIWidget * aParent,
nsIURL* aUrl, nsString& aControllerIID,
nsIWidget*& aResult, nsIStreamObserver* anObserver)
nsIWidget*& aResult, nsIStreamObserver* anObserver,
PRInt32 aInitialWidth, PRInt32 aInitialHeight)
{
nsresult rv;
nsWebShellWindow* window;
@ -256,7 +260,8 @@ nsAppShellService::CreateDialogWindow(nsIWidget * aParent,
if (nsnull == window) {
rv = NS_ERROR_OUT_OF_MEMORY;
} else {
rv = window->Initialize(nsnull, mAppShell, aUrl, aControllerIID, anObserver);
rv = window->Initialize(nsnull, mAppShell, aUrl, aControllerIID, anObserver,
aInitialWidth, aInitialHeight);
if (NS_SUCCEEDED(rv)) {
mWindowList->AppendElement((nsIWebShellContainer*)window);
aResult = window->GetWidget();

View File

@ -165,14 +165,17 @@ nsWebShellWindow::QueryInterface(REFNSIID aIID, void** aInstancePtr)
nsresult nsWebShellWindow::Initialize(nsIAppShell* aShell, nsIURL* aUrl,
nsString& aControllerIID, nsIStreamObserver* anObserver)
nsString& aControllerIID, nsIStreamObserver* anObserver,
PRInt32 aInitialWidth, PRInt32 aInitialHeight)
{
return Initialize(nsnull, aShell, aUrl, aControllerIID, anObserver);
return Initialize(nsnull, aShell, aUrl, aControllerIID, anObserver,
aInitialWidth, aInitialHeight);
}
nsresult nsWebShellWindow::Initialize(nsIWidget* aParent,
nsIAppShell* aShell, nsIURL* aUrl,
nsString& aControllerIID, nsIStreamObserver* anObserver)
nsString& aControllerIID, nsIStreamObserver* anObserver,
PRInt32 aInitialWidth, PRInt32 aInitialHeight)
{
nsresult rv;
@ -183,7 +186,7 @@ nsresult nsWebShellWindow::Initialize(nsIWidget* aParent,
// XXX: need to get the default window size from prefs...
nsRect r(0, 0, 650, 618);
nsRect r(0, 0, aInitialWidth, aInitialHeight);
nsWidgetInitData initData;

View File

@ -89,8 +89,10 @@ public:
NS_IMETHOD GetWidget(nsIWidget *& aWidget);
// nsWebShellWindow methods...
nsresult Initialize(nsIAppShell* aShell, nsIURL* aUrl, nsString& aControllerIID, nsIStreamObserver* anObserver);
nsresult Initialize(nsIWidget * aParent, nsIAppShell* aShell, nsIURL* aUrl, nsString& aControllerIID, nsIStreamObserver* anObserver);
nsresult Initialize(nsIAppShell* aShell, nsIURL* aUrl, nsString& aControllerIID, nsIStreamObserver* anObserver,
PRInt32 aInitialWidth, PRInt32 aInitialHeight);
nsresult Initialize(nsIWidget * aParent, nsIAppShell* aShell, nsIURL* aUrl, nsString& aControllerIID, nsIStreamObserver* anObserver,
PRInt32 aInitialWidth, PRInt32 aInitialHeight);
nsIWidget* GetWidget(void) { return mWindow; }
// nsIDocumentLoaderObserver