forked from leavengood/Haiku-Browser
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathBrowserWindow.cpp
More file actions
91 lines (69 loc) · 1.71 KB
/
BrowserWindow.cpp
File metadata and controls
91 lines (69 loc) · 1.71 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// Copyright 2009, Ryan Leavengood, leavengood@gmail.com
// All rights reserved.
//
// Distributed under the terms of the MIT License.
//
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#include "BrowserWindow.h"
#include "Constants.h"
#include "ProxyView.h"
#include <Application.h>
#include <GroupLayout.h>
#include <GroupLayoutBuilder.h>
BrowserWindow::BrowserWindow()
: BWindow(BRect(100, 100, 400, 400), "Tranquility", B_DOCUMENT_WINDOW, 0)
{
fToolbar = new BrowserToolbar();
fProxyView = new ProxyView(Bounds(), "Proxy");
BGroupView *view = new BGroupView(B_VERTICAL, 10);
view->SetViewColor(255, 255, 255);
// Set the layout
SetLayout(new BGroupLayout(B_HORIZONTAL));
AddChild(BGroupLayoutBuilder(view)
.Add(fToolbar)
.Add(fProxyView)
);
ResizeTo(500, 500);
AddShortcut('N', B_COMMAND_KEY, new BMessage(kMsgNewTab), this);
AddShortcut('W', B_COMMAND_KEY, new BMessage(kMsgCloseTab), this);
}
BrowserWindow::~BrowserWindow()
{
}
void
BrowserWindow::MessageReceived(BMessage *message)
{
switch (message->what) {
case kMsgNewTab:
break;
case kMsgCloseTab:
break;
case kMsgNavGoURL:
fToolbar->ChangeReloadStopButton(true);
break;
case kMsgNavReload:
fToolbar->ChangeReloadStopButton(true);
break;
case kMsgNavStop:
fToolbar->ChangeReloadStopButton(false);
break;
default:
BWindow::MessageReceived(message);
break;
}
}
bool
BrowserWindow::QuitRequested()
{
be_app->PostMessage(B_QUIT_REQUESTED);
return true;
}
void
BrowserWindow::FrameResized(float width, float height)
{
BWindow::FrameResized(width, height);
if (width < 300)
ResizeTo(300, height);
}