Start main window and feed tab
This commit is contained in:
parent
3c0725b272
commit
f46a53fdc5
|
@ -9,7 +9,7 @@
|
||||||
#include "Config.h"
|
#include "Config.h"
|
||||||
#include "Util.h"
|
#include "Util.h"
|
||||||
#include "App.h"
|
#include "App.h"
|
||||||
#include "PrefWindow.h"
|
#include "MainWindow.h"
|
||||||
#include "Invocation.h"
|
#include "Invocation.h"
|
||||||
|
|
||||||
|
|
||||||
|
@ -48,8 +48,8 @@ cliStart ( int argc, char** argv )
|
||||||
App::App ( )
|
App::App ( )
|
||||||
: BApplication("application/x-vnd.Pogger")
|
: BApplication("application/x-vnd.Pogger")
|
||||||
{
|
{
|
||||||
// PrefWindow* prefWin = new PrefWindow();
|
MainWindow* mainWin = new MainWindow();
|
||||||
// prefWin->Show();
|
mainWin->Show();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,42 @@
|
||||||
|
/*
|
||||||
|
* Copyright 2020, Jaidyn Levesque <jadedctrl@teknik.io>
|
||||||
|
* All rights reserved. Distributed under the terms of the MIT license.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "FeedView.h"
|
||||||
|
|
||||||
|
#include <Message.h>
|
||||||
|
#include <GroupView.h>
|
||||||
|
#include <LayoutBuilder.h>
|
||||||
|
|
||||||
|
|
||||||
|
FeedView::FeedView(const char* name)
|
||||||
|
:
|
||||||
|
BGroupView(name, B_VERTICAL, B_USE_DEFAULT_SPACING)
|
||||||
|
{
|
||||||
|
_InitInterface();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
FeedView::MessageReceived(BMessage* msg)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
FeedView::_InitInterface()
|
||||||
|
{
|
||||||
|
fTestButton = new BButton("stest", "Do Nothing!",
|
||||||
|
new BMessage('pppq'));
|
||||||
|
fTestButton->SetTarget(this);
|
||||||
|
fTestButton->SetExplicitAlignment(BAlignment(B_ALIGN_LEFT, B_ALIGN_MIDDLE));
|
||||||
|
|
||||||
|
BLayoutBuilder::Group<>(this, B_VERTICAL, 0)
|
||||||
|
.SetInsets(0, B_USE_DEFAULT_SPACING, 0, 0)
|
||||||
|
.Add(fTestButton)
|
||||||
|
.SetInsets(B_USE_WINDOW_SPACING, B_USE_DEFAULT_SPACING,
|
||||||
|
B_USE_DEFAULT_SPACING, B_USE_WINDOW_SPACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,29 @@
|
||||||
|
/*
|
||||||
|
* Copyright 2020, Jaidyn Levesque <jadedctrl@teknik.io>
|
||||||
|
* All rights reserved. Distributed under the terms of the MIT license.
|
||||||
|
*/
|
||||||
|
#ifndef FEEDVIEW_H
|
||||||
|
#define FEEDVIEW_H
|
||||||
|
|
||||||
|
|
||||||
|
#include <Button.h>
|
||||||
|
#include <SupportDefs.h>
|
||||||
|
#include <GroupView.h>
|
||||||
|
|
||||||
|
|
||||||
|
class BMessage;
|
||||||
|
|
||||||
|
|
||||||
|
class FeedView : public BGroupView {
|
||||||
|
public:
|
||||||
|
FeedView(const char* name);
|
||||||
|
|
||||||
|
void MessageReceived(BMessage* msg);
|
||||||
|
private:
|
||||||
|
void _InitInterface();
|
||||||
|
|
||||||
|
BButton* fTestButton;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#endif // FEEDVIEW_H
|
|
@ -0,0 +1,79 @@
|
||||||
|
/*
|
||||||
|
* Copyright 2020, Jaidyn Levesque <jadedctrl@teknik.io>
|
||||||
|
* All rights reserved. Distributed under the terms of the MIT license.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "MainWindow.h"
|
||||||
|
|
||||||
|
#include <Button.h>
|
||||||
|
#include <GroupView.h>
|
||||||
|
#include <TabView.h>
|
||||||
|
#include <LayoutBuilder.h>
|
||||||
|
#include <SeparatorView.h>
|
||||||
|
#include <String.h>
|
||||||
|
|
||||||
|
#include "App.h"
|
||||||
|
|
||||||
|
|
||||||
|
enum { M_BUTTON_CLICKED = 'btcl' };
|
||||||
|
|
||||||
|
|
||||||
|
MainWindow::MainWindow (void)
|
||||||
|
:
|
||||||
|
BWindow(BRect(0,0,0,0), "Pogger", B_TITLED_WINDOW, B_NOT_RESIZABLE
|
||||||
|
| B_NOT_ZOOMABLE | B_AUTO_UPDATE_SIZE_LIMITS | B_QUIT_ON_WINDOW_CLOSE)
|
||||||
|
{
|
||||||
|
_InitInterface();
|
||||||
|
MoveTo(BPoint(-1000.0,-1000.0));
|
||||||
|
MoveOnScreen();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
MainWindow::MessageReceived(BMessage *msg)
|
||||||
|
{
|
||||||
|
switch (msg->what)
|
||||||
|
{
|
||||||
|
case M_BUTTON_CLICKED:
|
||||||
|
{
|
||||||
|
BString labelString("Clicks: ");
|
||||||
|
labelString << "DAD";
|
||||||
|
SetTitle(labelString.String());
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
default:
|
||||||
|
{
|
||||||
|
BWindow::MessageReceived(msg);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
MainWindow::_InitInterface()
|
||||||
|
{
|
||||||
|
fBaseView = new BGroupView("baseView");
|
||||||
|
fTabView = new BTabView("tabView", B_WIDTH_FROM_WIDEST);
|
||||||
|
fFeedView = new FeedView("Feeds");
|
||||||
|
|
||||||
|
fTabView->AddTab(fFeedView);
|
||||||
|
fTabView->SetBorder(B_NO_BORDER);
|
||||||
|
fBaseView->AddChild(fTabView);
|
||||||
|
|
||||||
|
fServiceToggleButton = new BButton("stoggle", "Start Service",
|
||||||
|
new BMessage('pppp'));
|
||||||
|
// fRevertButton->SetEnabled(false);
|
||||||
|
fServiceToggleButton->SetTarget(this);
|
||||||
|
fServiceToggleButton->SetExplicitAlignment(
|
||||||
|
BAlignment(B_ALIGN_LEFT, B_ALIGN_MIDDLE));
|
||||||
|
|
||||||
|
BLayoutBuilder::Group<>(this, B_VERTICAL, 0)
|
||||||
|
.SetInsets(0, B_USE_DEFAULT_SPACING, 0, 0)
|
||||||
|
.Add(fBaseView)
|
||||||
|
.Add(new BSeparatorView(B_HORIZONTAL))
|
||||||
|
.AddGroup(B_HORIZONTAL)
|
||||||
|
.Add(fServiceToggleButton)
|
||||||
|
.SetInsets(B_USE_WINDOW_SPACING, B_USE_DEFAULT_SPACING,
|
||||||
|
B_USE_DEFAULT_SPACING, B_USE_WINDOW_SPACING);
|
||||||
|
}
|
|
@ -0,0 +1,30 @@
|
||||||
|
#ifndef PREFWINDOW_H
|
||||||
|
#define PREFWINDOW_H
|
||||||
|
|
||||||
|
|
||||||
|
#include <Window.h>
|
||||||
|
|
||||||
|
#include "FeedView.h"
|
||||||
|
|
||||||
|
class BButton;
|
||||||
|
class BGroupView;
|
||||||
|
class BTabView;
|
||||||
|
|
||||||
|
class MainWindow : public BWindow {
|
||||||
|
public:
|
||||||
|
MainWindow();
|
||||||
|
|
||||||
|
void MessageReceived(BMessage*);
|
||||||
|
|
||||||
|
private:
|
||||||
|
void _InitInterface();
|
||||||
|
|
||||||
|
BGroupView* fBaseView;
|
||||||
|
BTabView* fTabView;
|
||||||
|
FeedView* fFeedView;
|
||||||
|
|
||||||
|
BButton* fServiceToggleButton;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
|
@ -1,66 +0,0 @@
|
||||||
#include "PrefWindow.h"
|
|
||||||
#include <Button.h>
|
|
||||||
#include <View.h>
|
|
||||||
#include <String.h>
|
|
||||||
|
|
||||||
enum
|
|
||||||
{
|
|
||||||
|
|
||||||
M_BUTTON_CLICKED = 'btcl'
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
PrefWindow::PrefWindow ( void )
|
|
||||||
: BWindow( BRect(100,100,300,200),"Pogger",B_TITLED_WINDOW,
|
|
||||||
B_ASYNCHRONOUS_CONTROLS | B_QUIT_ON_WINDOW_CLOSE )
|
|
||||||
{
|
|
||||||
BButton *button = new BButton( BRect(10,10,11,11),"button", "Click Me!",
|
|
||||||
new BMessage(M_BUTTON_CLICKED) );
|
|
||||||
AddChild(button);
|
|
||||||
button->ResizeToPreferred();
|
|
||||||
|
|
||||||
BView *view = new BView(BRect(100,100,300,200), "colorview", B_FOLLOW_ALL, B_WILL_DRAW);
|
|
||||||
//view->AddChild(button);
|
|
||||||
//AddChild(view);
|
|
||||||
view->SetViewColor(255,255,255);
|
|
||||||
view->SetViewUIColor(B_PANEL_BACKGROUND_COLOR);
|
|
||||||
view->Invalidate();
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
PrefWindow::MessageReceived ( BMessage *msg )
|
|
||||||
{
|
|
||||||
|
|
||||||
// The way that BMessages are identified is by the public property
|
|
||||||
// 'what'.
|
|
||||||
switch (msg->what)
|
|
||||||
{
|
|
||||||
|
|
||||||
// If the message was the one sent to the window by the
|
|
||||||
// button
|
|
||||||
case M_BUTTON_CLICKED:
|
|
||||||
{
|
|
||||||
|
|
||||||
BString labelString("Clicks: ");
|
|
||||||
|
|
||||||
// This converts fCount to a string and appends it to
|
|
||||||
// the end of labelString. More on this next lesson.
|
|
||||||
labelString << "DAD";
|
|
||||||
|
|
||||||
// Set the window's title to the new string we've made
|
|
||||||
SetTitle(labelString.String());
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
default:
|
|
||||||
{
|
|
||||||
// If the message doesn't match one of the ones we
|
|
||||||
// explicitly define, it must be some sort of system
|
|
||||||
// message, so we will call the BWindow version of
|
|
||||||
// MessageReceived() so that it can handle them. THIS
|
|
||||||
// IS REQUIRED if you want your window to act
|
|
||||||
// the way that you expect it to.
|
|
||||||
BWindow::MessageReceived(msg);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,21 +0,0 @@
|
||||||
#ifndef PREFWINDOW_H
|
|
||||||
#define PREFWINDOW_H
|
|
||||||
|
|
||||||
#include <Window.h>
|
|
||||||
|
|
||||||
class PrefWindow : public BWindow
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
PrefWindow ( void );
|
|
||||||
|
|
||||||
// void MessageRecieved ( BMessage* );
|
|
||||||
void MessageReceived(BMessage*);
|
|
||||||
|
|
||||||
private:
|
|
||||||
|
|
||||||
BView* fMainView;
|
|
||||||
void _InitInterface ( void );
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif
|
|
Ŝarĝante…
Reference in New Issue