Remove old unused textarea
This commit is contained in:
parent
5d3d1d4916
commit
760a721e0d
@ -1,80 +0,0 @@
|
||||
/*
|
||||
* Textarea.cpp
|
||||
*
|
||||
* Created on: Jan 29, 2012
|
||||
* Author: Simon
|
||||
*/
|
||||
|
||||
#include <iostream>
|
||||
#include "Textarea.h"
|
||||
|
||||
using namespace ui;
|
||||
|
||||
Textarea::Textarea(Point position, Point size, std::string textboxText):
|
||||
Textbox(position, size, textboxText)
|
||||
{
|
||||
updateMultiline();
|
||||
}
|
||||
|
||||
void Textarea::SetText(std::string text)
|
||||
{
|
||||
this->text = text;
|
||||
updateMultiline();
|
||||
}
|
||||
|
||||
void Textarea::updateMultiline()
|
||||
{
|
||||
char * rawText = (char*)malloc(text.length()+1);
|
||||
memcpy(rawText, text.c_str(), text.length());
|
||||
rawText[text.length()] = 0;
|
||||
|
||||
int currentWidth = 0;
|
||||
char * lastSpace = NULL;
|
||||
char * currentWord = rawText;
|
||||
char * nextSpace;
|
||||
while(true)
|
||||
{
|
||||
nextSpace = strchr(currentWord+1, ' ');
|
||||
if(nextSpace)
|
||||
nextSpace[0] = 0;
|
||||
int width = Graphics::textwidth(currentWord);
|
||||
if(width+currentWidth > Size.X-6)
|
||||
{
|
||||
currentWidth = width;
|
||||
currentWord[0] = '\n';
|
||||
}
|
||||
else
|
||||
currentWidth += width;
|
||||
if(nextSpace)
|
||||
nextSpace[0] = ' ';
|
||||
if(!(currentWord = strchr(currentWord+1, ' ')))
|
||||
break;
|
||||
}
|
||||
textLines = rawText;
|
||||
}
|
||||
|
||||
void Textarea::OnKeyPress(int key, Uint16 character, bool shift, bool ctrl, bool alt)
|
||||
{
|
||||
Textbox::OnKeyPress(key, character, shift, ctrl, alt);
|
||||
updateMultiline();
|
||||
}
|
||||
|
||||
void Textarea::Draw(const Point &screenPos)
|
||||
{
|
||||
Graphics * g = ui::Engine::Ref().g;
|
||||
if(IsFocused())
|
||||
{
|
||||
g->drawrect(screenPos.X, screenPos.Y, Size.X, Size.Y, 255, 255, 255, 255);
|
||||
g->drawtext(screenPos.X+3, screenPos.Y+3, textLines, 255, 255, 255, 255);
|
||||
}
|
||||
else
|
||||
{
|
||||
g->drawrect(screenPos.X, screenPos.Y, Size.X, Size.Y, 160, 160, 160, 255);
|
||||
g->drawtext(screenPos.X+3, screenPos.Y+3, textLines, 160, 160, 160, 255);
|
||||
}
|
||||
}
|
||||
|
||||
Textarea::~Textarea() {
|
||||
// TODO Auto-generated destructor stub
|
||||
}
|
||||
|
@ -1,33 +0,0 @@
|
||||
/*
|
||||
* Textarea.h
|
||||
*
|
||||
* Created on: Jan 29, 2012
|
||||
* Author: Simon
|
||||
*/
|
||||
|
||||
#ifndef TEXTAREA_H_
|
||||
#define TEXTAREA_H_
|
||||
|
||||
#include <vector>
|
||||
#include <string>
|
||||
#include <sstream>
|
||||
#include "Textbox.h"
|
||||
|
||||
namespace ui
|
||||
{
|
||||
|
||||
class Textarea: public ui::Textbox
|
||||
{
|
||||
void updateMultiline();
|
||||
std::string textLines;
|
||||
public:
|
||||
Textarea(Point position, Point size, std::string textboxText);
|
||||
virtual void TextPosition() {}
|
||||
virtual void SetText(std::string text);
|
||||
virtual void OnKeyPress(int key, Uint16 character, bool shift, bool ctrl, bool alt);
|
||||
virtual void Draw(const Point& screenPos);
|
||||
virtual ~Textarea();
|
||||
};
|
||||
}
|
||||
|
||||
#endif /* TEXTAREA_H_ */
|
Reference in New Issue
Block a user