mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-03-25 16:50:50 +01:00
[apps] Add a code app
Change-Id: Icc72c378a6434b5d3b0af74f23e31ea7514882b8
This commit is contained in:
4
apps/code/Makefile
Normal file
4
apps/code/Makefile
Normal file
@@ -0,0 +1,4 @@
|
||||
app_objs += $(addprefix apps/code/,\
|
||||
app.o\
|
||||
editor_controller.o\
|
||||
)
|
||||
30
apps/code/app.cpp
Normal file
30
apps/code/app.cpp
Normal file
@@ -0,0 +1,30 @@
|
||||
#include "app.h"
|
||||
#include "../apps_container.h"
|
||||
#include <assert.h>
|
||||
|
||||
namespace Code {
|
||||
|
||||
I18n::Message App::Descriptor::name() {
|
||||
return I18n::Message::Matrices;
|
||||
}
|
||||
|
||||
I18n::Message App::Descriptor::upperName() {
|
||||
return I18n::Message::Matrices;
|
||||
}
|
||||
|
||||
App * App::Snapshot::unpack(Container * container) {
|
||||
return new App(container, this);
|
||||
}
|
||||
|
||||
App::Descriptor * App::Snapshot::descriptor() {
|
||||
static Descriptor descriptor;
|
||||
return &descriptor;
|
||||
}
|
||||
|
||||
App::App(Container * container, Snapshot * snapshot) :
|
||||
::App(container, snapshot, &m_editorController),
|
||||
m_editorController(this)
|
||||
{
|
||||
}
|
||||
|
||||
}
|
||||
33
apps/code/app.h
Normal file
33
apps/code/app.h
Normal file
@@ -0,0 +1,33 @@
|
||||
#ifndef CODE_APP_H
|
||||
#define CODE_APP_H
|
||||
|
||||
#include <escher.h>
|
||||
#include "editor_controller.h"
|
||||
|
||||
namespace Code {
|
||||
|
||||
class App : public ::App {
|
||||
public:
|
||||
class Descriptor : public ::App::Descriptor {
|
||||
public:
|
||||
I18n::Message name() override;
|
||||
I18n::Message upperName() override;
|
||||
//const Image * icon() override;
|
||||
};
|
||||
class Snapshot : public ::App::Snapshot {
|
||||
public:
|
||||
App * unpack(Container * container) override;
|
||||
Descriptor * descriptor() override;
|
||||
};
|
||||
//int numberOfTimers() override;
|
||||
//Timer * timerAtIndex(int i) override;
|
||||
//bool processEvent(Ion::Events::Event) override;
|
||||
//void didBecomeActive(Window * window) override;
|
||||
private:
|
||||
App(Container * container, Snapshot * snapshot);
|
||||
EditorController m_editorController;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
25
apps/code/editor_controller.cpp
Normal file
25
apps/code/editor_controller.cpp
Normal file
@@ -0,0 +1,25 @@
|
||||
#include "editor_controller.h"
|
||||
|
||||
EditorController::EditorController(Responder * parentResponder) :
|
||||
ViewController(parentResponder),
|
||||
m_view(this, buffer, 256)
|
||||
{
|
||||
memcpy(buffer, "Hello\nWorld\nOhOhOh\nThis\nLooks\nlike\nso\nmuch\nfun\nI\nwonder\nhow\nmany very very very very very very very long\nlines\nI\ncan\ndisplay", 256);
|
||||
}
|
||||
|
||||
void EditorController::didBecomeFirstResponder() {
|
||||
app()->setFirstResponder(&m_view);
|
||||
}
|
||||
|
||||
|
||||
View * EditorController::view() {
|
||||
return &m_view;
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
const char * PicViewController::title() {
|
||||
return "PicView";
|
||||
}
|
||||
*/
|
||||
|
||||
17
apps/code/editor_controller.h
Normal file
17
apps/code/editor_controller.h
Normal file
@@ -0,0 +1,17 @@
|
||||
#ifndef CODE_EDITOR_CONTROLLER_H
|
||||
#define CODE_EDITOR_CONTROLLER_H
|
||||
|
||||
#include <escher.h>
|
||||
|
||||
class EditorController : public ViewController {
|
||||
public:
|
||||
EditorController(Responder * parentResponder);
|
||||
View * view() override;
|
||||
void didBecomeFirstResponder() override;
|
||||
private:
|
||||
char buffer[256];
|
||||
TextArea m_view;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user