ui fixes
This commit is contained in:
parent
2e82ca6791
commit
720dcbb381
3 changed files with 69 additions and 71 deletions
BIN
DumBer
BIN
DumBer
Binary file not shown.
115
MainWindow.cpp
115
MainWindow.cpp
|
@ -3,7 +3,6 @@
|
|||
* All rights reserved. Distributed under the terms of the MIT license.
|
||||
*/
|
||||
|
||||
|
||||
#include "MainWindow.h"
|
||||
|
||||
#include <Url.h>
|
||||
|
@ -14,6 +13,7 @@
|
|||
#include <LayoutBuilder.h>
|
||||
#include <Menu.h>
|
||||
#include <MenuBar.h>
|
||||
#include <ScrollView.h>
|
||||
#include <StringView.h>
|
||||
|
||||
#include <View.h>
|
||||
|
@ -38,28 +38,23 @@ MainWindow::MainWindow()
|
|||
: BWindow(BRect(100, 100, 600, 400), B_TRANSLATE("BeDumb"), B_TITLED_WINDOW,
|
||||
B_ASYNCHRONOUS_CONTROLS | B_QUIT_ON_WINDOW_CLOSE) {
|
||||
|
||||
|
||||
BMenuBar *menuBar = _BuildMenu();
|
||||
|
||||
BLayoutBuilder::Group<>(this, B_VERTICAL, 0).Add(menuBar).AddGlue().End();
|
||||
|
||||
_inputField =
|
||||
new BTextControl("", "What is the matrix ?", new BMessage(kQuestionChanged));
|
||||
|
||||
_inputField = new BTextControl("", "What is the matrix ?",
|
||||
new BMessage(kQuestionChanged));
|
||||
|
||||
_progress = new BStatusBar("prog");
|
||||
_progress->SetMaxValue(100);
|
||||
_progress->SetTo(0);
|
||||
_progress->SetViewColor(ui_color(B_PANEL_BACKGROUND_COLOR));
|
||||
|
||||
|
||||
_answerView = new BTextView("answer");
|
||||
|
||||
BStringView* header = new BStringView("biglabel", "Let's Be Dumber!");
|
||||
BFont font;
|
||||
header->GetFont(&font);
|
||||
font.SetSize(20);
|
||||
header->SetFont(&font);
|
||||
BStringView *header = new BStringView("biglabel", "Let's Be Dumber!");
|
||||
BFont font;
|
||||
header->GetFont(&font);
|
||||
font.SetSize(20);
|
||||
header->SetFont(&font);
|
||||
|
||||
// Info view, only one line high
|
||||
_infoView = new BTextView("info");
|
||||
|
@ -81,9 +76,20 @@ MainWindow::MainWindow()
|
|||
new BButton("send", B_TRANSLATE("Send"), new BMessage(kSendPrompt),
|
||||
B_WILL_DRAW | B_NAVIGABLE);
|
||||
|
||||
_answerView = new BTextView("answer", B_WILL_DRAW | B_FOLLOW_ALL);
|
||||
_answerView->MakeEditable(false); // Disable editing
|
||||
_answerView->MakeSelectable(true); // Enable text selection
|
||||
|
||||
//_answerView->SetWordWrap(true);
|
||||
BScrollView *scrollView =
|
||||
new BScrollView("scroll_view", _answerView, 0, 0, false,
|
||||
true); // horizontal and vertical scrollbars
|
||||
|
||||
BLayoutBuilder::Group<>(this, B_VERTICAL, 0)
|
||||
|
||||
.AddGlue(0.1)
|
||||
.Add(header)
|
||||
.AddGlue(0.1)
|
||||
|
||||
.AddGroup(B_HORIZONTAL, 0, 1)
|
||||
.Add(_inputField)
|
||||
|
@ -92,9 +98,10 @@ MainWindow::MainWindow()
|
|||
.End()
|
||||
.End()
|
||||
|
||||
.AddGlue(0.1)
|
||||
.Add(scrollView)
|
||||
.Add(_progress)
|
||||
.Add(_infoView)
|
||||
.Add(_answerView)
|
||||
|
||||
.SetInsets(5, 5, 5, 5)
|
||||
|
||||
|
@ -125,7 +132,7 @@ void MainWindow::MessageReceived(BMessage *message) {
|
|||
printf("Question Changed\n");
|
||||
_progress->SetTo(2);
|
||||
|
||||
// sendQuery();
|
||||
// sendQuery();
|
||||
|
||||
} break;
|
||||
|
||||
|
@ -138,8 +145,8 @@ void MainWindow::MessageReceived(BMessage *message) {
|
|||
|
||||
case UrlEvent::HostNameResolved: {
|
||||
printf("Host name resolved\n");
|
||||
auto name = message->GetString(UrlEventData::HostName);
|
||||
message->PrintToStream();
|
||||
auto name = message->GetString(UrlEventData::HostName);
|
||||
message->PrintToStream();
|
||||
|
||||
_infoView->SetText("Hostname resolve...");
|
||||
_infoView->SetText(name);
|
||||
|
@ -165,27 +172,24 @@ void MainWindow::MessageReceived(BMessage *message) {
|
|||
_infoView->SetText("HttpRedirect...");
|
||||
} break;
|
||||
|
||||
|
||||
|
||||
case UrlEvent::RequestCompleted: {
|
||||
printf("RequestCompleted\n");
|
||||
auto identifier = message->GetInt32(UrlEventData::Id, -1);
|
||||
if (_lastResult->Identity() == identifier) {
|
||||
// The following call will not block, because we have been notified
|
||||
// that the request is done.
|
||||
BHttpBody body = _lastResult->Body();
|
||||
if (body.text.has_value())
|
||||
_answerView->SetText(body.text.value());
|
||||
else
|
||||
_answerView->SetText("nuthin'");
|
||||
}
|
||||
printf("RequestCompleted\n");
|
||||
auto identifier = message->GetInt32(UrlEventData::Id, -1);
|
||||
if (_lastResult->Identity() == identifier) {
|
||||
// The following call will not block, because we have been notified
|
||||
// that the request is done.
|
||||
BHttpBody body = _lastResult->Body();
|
||||
if (body.text.has_value())
|
||||
_answerView->SetText(body.text.value());
|
||||
else
|
||||
_answerView->SetText("nuthin'");
|
||||
}
|
||||
|
||||
_infoView->SetText("Completed");
|
||||
_progress->SetMaxValue(100);
|
||||
_progress->SetTo(100);
|
||||
|
||||
} break;
|
||||
_infoView->SetText("Completed");
|
||||
_progress->SetMaxValue(100);
|
||||
_progress->SetTo(100);
|
||||
|
||||
} break;
|
||||
|
||||
case UrlEvent::HttpStatus: {
|
||||
|
||||
|
@ -199,39 +203,35 @@ void MainWindow::MessageReceived(BMessage *message) {
|
|||
_infoView->SetText("Some bytes written..");
|
||||
auto identifier = message->GetInt32(UrlEventData::Id, -1);
|
||||
if (_lastResult->Identity() == identifier) {
|
||||
off_t numBytes = message->GetInt64(UrlEventData::NumBytes, 0);
|
||||
off_t totalBytes = message->GetInt64(UrlEventData::TotalBytes, 0);
|
||||
_progress->SetTo(numBytes);
|
||||
_progress->SetMaxValue(totalBytes);
|
||||
off_t numBytes = message->GetInt64(UrlEventData::NumBytes, 0);
|
||||
off_t totalBytes = message->GetInt64(UrlEventData::TotalBytes, 0);
|
||||
_progress->SetTo(numBytes);
|
||||
_progress->SetMaxValue(totalBytes);
|
||||
}
|
||||
} break;
|
||||
|
||||
case UrlEvent::DownloadProgress: {
|
||||
auto identifier = message->GetInt32(UrlEventData::Id, -1);
|
||||
if (_lastResult->Identity() == identifier) {
|
||||
off_t nn = message->GetInt64(UrlEventData::NumBytes, 0);
|
||||
off_t totalBytes = message->GetInt64(UrlEventData::TotalBytes, 0);
|
||||
_progress->SetTo(nn);
|
||||
_progress->SetMaxValue(totalBytes);
|
||||
_infoView->SetText("Download Progress..");
|
||||
off_t nn = message->GetInt64(UrlEventData::NumBytes, 0);
|
||||
off_t totalBytes = message->GetInt64(UrlEventData::TotalBytes, 0);
|
||||
_progress->SetTo(nn);
|
||||
_progress->SetMaxValue(totalBytes);
|
||||
_infoView->SetText("Download Progress..");
|
||||
}
|
||||
} break;
|
||||
|
||||
|
||||
|
||||
default: {
|
||||
//message->PrintToStream();
|
||||
BWindow::MessageReceived(message); // call the parent handler for other messages
|
||||
// message->PrintToStream();
|
||||
BWindow::MessageReceived(
|
||||
message); // call the parent handler for other messages
|
||||
// _infoView->SetText(message->FindMessage());
|
||||
break;
|
||||
}
|
||||
|
||||
} // end switch
|
||||
|
||||
}//end switch
|
||||
|
||||
} //end function
|
||||
|
||||
|
||||
} // end function
|
||||
|
||||
void MainWindow::sendQuery() {
|
||||
|
||||
|
@ -241,7 +241,7 @@ void MainWindow::sendQuery() {
|
|||
_progress->SetMaxValue(100);
|
||||
_progress->SetTo(0);
|
||||
|
||||
auto url = BUrl("https://www.link-u.com/ip/");
|
||||
auto url = BUrl("https://www.lema.org/");
|
||||
BHttpRequest request = BHttpRequest(url);
|
||||
|
||||
printf("Sending Prompt to server: %s\n", url.UrlString().String());
|
||||
|
@ -250,11 +250,8 @@ void MainWindow::sendQuery() {
|
|||
if (_lastResult) {
|
||||
printf("Result has identity: %d\n", _lastResult->Identity());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
BMenuBar *MainWindow::_BuildMenu() {
|
||||
|
||||
BMenuBar *menuBar = new BMenuBar("menubar");
|
||||
|
@ -283,11 +280,11 @@ BMenuBar *MainWindow::_BuildMenu() {
|
|||
item->SetTarget(be_app);
|
||||
menu->AddItem(item);
|
||||
|
||||
item = new BMenuItem(B_TRANSLATE("Quit"), new BMessage(B_QUIT_REQUESTED), 'Q');
|
||||
item =
|
||||
new BMenuItem(B_TRANSLATE("Quit"), new BMessage(B_QUIT_REQUESTED), 'Q');
|
||||
menu->AddItem(item);
|
||||
|
||||
menuBar->AddItem(menu);
|
||||
|
||||
return menuBar;
|
||||
}
|
||||
|
||||
|
|
|
@ -55,6 +55,7 @@ private:
|
|||
BTextView * _infoView;
|
||||
BTextControl* _inputField;
|
||||
BStatusBar* _progress;
|
||||
|
||||
BMenuItem *fSaveMenuItem;
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue