summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/script/cbottoken.cpp10
-rw-r--r--src/script/cbottoken.h10
-rw-r--r--src/ui/button.cpp8
-rw-r--r--src/ui/button.h49
-rw-r--r--src/ui/check.cpp25
-rw-r--r--src/ui/check.h26
-rw-r--r--src/ui/color.cpp16
-rw-r--r--src/ui/color.h45
-rw-r--r--src/ui/compass.cpp17
-rw-r--r--src/ui/compass.h35
-rw-r--r--src/ui/control.cpp3
-rw-r--r--src/ui/control.h222
-rw-r--r--src/ui/displayinfo.cpp89
-rw-r--r--src/ui/displayinfo.h130
-rw-r--r--src/ui/displaytext.cpp29
-rw-r--r--src/ui/displaytext.h7
-rw-r--r--src/ui/edit.cpp2
-rw-r--r--src/ui/maindialog.cpp14
-rw-r--r--src/ui/maindialog.h1
-rw-r--r--src/ui/map.cpp4
-rw-r--r--src/ui/studio.cpp160
-rw-r--r--src/ui/studio.h13
-rw-r--r--src/ui/target.cpp20
-rw-r--r--src/ui/target.h9
24 files changed, 453 insertions, 491 deletions
diff --git a/src/script/cbottoken.cpp b/src/script/cbottoken.cpp
index 223da4d..788dba2 100644
--- a/src/script/cbottoken.cpp
+++ b/src/script/cbottoken.cpp
@@ -33,7 +33,7 @@
// Seeking the name of an object.
-char* RetObjectName(ObjectType type)
+char* GetObjectName(ObjectType type)
{
if ( type == OBJECT_PORTICO ) return "Portico";
if ( type == OBJECT_BASE ) return "SpaceShip";
@@ -126,7 +126,7 @@ char* RetObjectName(ObjectType type)
// Seeking the name of a secondary object.
// (because Otto thinks that Germans do not like nuclear power)
-char* RetObjectAlias(ObjectType type)
+char* GetObjectAlias(ObjectType type)
{
if ( type == OBJECT_NUCLEAR ) return "FuelCellPlant";
if ( type == OBJECT_URANIUM ) return "PlatinumOre";
@@ -139,7 +139,7 @@ char* RetObjectAlias(ObjectType type)
// Returns the help file to use for the object.
-char* RetHelpFilename(ObjectType type)
+char* GetHelpFilename(ObjectType type)
{
if ( type == OBJECT_BASE ) return "help\\object\\base.txt";
if ( type == OBJECT_DERRICK ) return "help\\object\\derrick.txt";
@@ -224,7 +224,7 @@ char* RetHelpFilename(ObjectType type)
// Returns the help file to use for instruction.
-char* RetHelpFilename(const char *token)
+char* GetHelpFilename(const char *token)
{
if ( strcmp(token, "if" ) == 0 ) return "help\\cbot\\if.txt";
if ( strcmp(token, "else" ) == 0 ) return "help\\cbot\\if.txt";
@@ -436,7 +436,7 @@ bool IsFunction(const char *token)
// Returns using a compact instruction.
-char* RetHelpText(const char *token)
+char* GetHelpText(const char *token)
{
if ( strcmp(token, "if" ) == 0 ) return "if ( condition ) { bloc }";
if ( strcmp(token, "else" ) == 0 ) return "else { bloc }";
diff --git a/src/script/cbottoken.h b/src/script/cbottoken.h
index c1a6a65..4be5f03 100644
--- a/src/script/cbottoken.h
+++ b/src/script/cbottoken.h
@@ -25,12 +25,12 @@
// Procedures.
-extern char* RetObjectName(ObjectType type);
-extern char* RetObjectAlias(ObjectType type);
-extern char* RetHelpFilename(ObjectType type);
-extern char* RetHelpFilename(const char *token);
+extern char* GetObjectName(ObjectType type);
+extern char* GetObjectAlias(ObjectType type);
+extern char* GetHelpFilename(ObjectType type);
+extern char* GetHelpFilename(const char *token);
extern bool IsType(const char *token);
extern bool IsFunction(const char *token);
-extern char* RetHelpText(const char *token);
+extern char* GetHelpText(const char *token);
diff --git a/src/ui/button.cpp b/src/ui/button.cpp
index 60c76b3..b8934c4 100644
--- a/src/ui/button.cpp
+++ b/src/ui/button.cpp
@@ -17,7 +17,13 @@
-#include <ui/button.h>
+#include "button.h"
+
+#include <common/event.h>
+#include <common/misc.h>
+#include <common/restext.h>
+
+#include <graphics/engine/engine.h>
namespace Ui {
diff --git a/src/ui/button.h b/src/ui/button.h
index 789b51c..ffaf220 100644
--- a/src/ui/button.h
+++ b/src/ui/button.h
@@ -19,43 +19,36 @@
#pragma once
-
-#include <ui/control.h>
-
-#include <graphics/engine/engine.h>
-
-#include <common/event.h>
-#include <common/misc.h>
-#include <common/restext.h>
-
+#include "control.h"
namespace Ui {
-class CButton : public CControl
-{
-public:
- CButton();
- virtual ~CButton();
- bool Create(Math::Point pos, Math::Point dim, int icon, EventType eventType);
+ class CButton : public CControl
+ {
+ public:
+ CButton();
+ virtual ~CButton();
+
+ bool Create(Math::Point pos, Math::Point dim, int icon, EventType eventType);
- bool EventProcess(const Event &event);
+ bool EventProcess(const Event &event);
- void Draw();
+ void Draw();
- void SetImmediat(bool bRepeat);
- bool GetImmediat();
+ void SetImmediat(bool bRepeat);
+ bool GetImmediat();
- void SetRepeat(bool bRepeat);
- bool GetRepeat();
+ void SetRepeat(bool bRepeat);
+ bool GetRepeat();
-protected:
+ protected:
-protected:
- bool m_bCapture;
- bool m_bImmediat;
- bool m_bRepeat;
- float m_repeat;
-};
+ protected:
+ bool m_bCapture;
+ bool m_bImmediat;
+ bool m_bRepeat;
+ float m_repeat;
+ };
}
diff --git a/src/ui/check.cpp b/src/ui/check.cpp
index b4ddf4a..5c076d4 100644
--- a/src/ui/check.cpp
+++ b/src/ui/check.cpp
@@ -16,21 +16,16 @@
// * along with this program. If not, see http://www.gnu.org/licenses/.
-//#include <windows.h>
-//#include <stdio.h>
-//#include <d3d.h>
-
-//#include "common/struct.h"
-//#include "old/d3dengine.h"
-#include "graphics/engine/engine.h"
-//#include "old/math3d.h"
-#include "common/event.h"
-#include "common/misc.h"
-#include "common/iman.h"
-#include "common/restext.h"
-//#include "old/text.h"
-#include "graphics/engine/text.h"
-#include "ui/check.h"
+#include "check.h"
+
+#include <common/event.h>
+#include <common/iman.h>
+#include <common/misc.h>
+#include <common/restext.h>
+
+#include <graphics/engine/engine.h>
+#include <graphics/engine/text.h>
+
namespace Ui {
diff --git a/src/ui/check.h b/src/ui/check.h
index 0b6a1f2..1ad8a3a 100644
--- a/src/ui/check.h
+++ b/src/ui/check.h
@@ -19,30 +19,30 @@
#pragma once
+#include "control.h"
-#include "ui/control.h"
namespace Gfx{
-class CEngine;
+ class CEngine;
}
namespace Ui {
-class CCheck : public CControl
-{
-public:
- CCheck();
- virtual ~CCheck();
+ class CCheck : public CControl
+ {
+ public:
+ CCheck();
+ virtual ~CCheck();
- bool Create(Math::Point pos, Math::Point dim, int icon, EventType eventType);
+ bool Create(Math::Point pos, Math::Point dim, int icon, EventType eventType);
- bool EventProcess(const Event &event);
+ bool EventProcess(const Event &event);
- void Draw();
+ void Draw();
-protected:
+ protected:
-protected:
-};
+ protected:
+ };
}
diff --git a/src/ui/color.cpp b/src/ui/color.cpp
index 2d463b5..c8588b8 100644
--- a/src/ui/color.cpp
+++ b/src/ui/color.cpp
@@ -16,21 +16,15 @@
// * along with this program. If not, see http://www.gnu.org/licenses/.
-//#include <windows.h>
-//#include <stdio.h>
-//#include <d3d.h>
+#include "color.h"
-//#include "common/struct.h"
-//#include "old/d3dengine.h"
-#include "graphics/engine/engine.h"
-#include "graphics/core/device.h"
-//#include "common/language.h"
-//#include "old/math3d.h"
#include "common/event.h"
-#include "common/misc.h"
#include "common/iman.h"
+#include "common/misc.h"
#include "common/restext.h"
-#include "ui/color.h"
+
+#include "graphics/core/device.h"
+#include "graphics/engine/engine.h"
namespace Ui {
diff --git a/src/ui/color.h b/src/ui/color.h
index 2666f94..c282429 100644
--- a/src/ui/color.h
+++ b/src/ui/color.h
@@ -20,41 +20,40 @@
#pragma once
-#include "ui/control.h"
-//#include "graphics/engine/engine.h"
+#include "control.h"
namespace Gfx{
-class CEngine;
-struct Color;
+ class CEngine;
+ struct Color;
}
namespace Ui {
-class CColor : public CControl
-{
-public:
-// CColor(CInstanceManager* iMan);
- CColor();
- virtual ~CColor();
+ class CColor : public CControl
+ {
+ public:
+ // CColor(CInstanceManager* iMan);
+ CColor();
+ virtual ~CColor();
- bool Create(Math::Point pos, Math::Point dim, int icon, EventType eventType);
+ bool Create(Math::Point pos, Math::Point dim, int icon, EventType eventType);
- bool EventProcess(const Event &event);
+ bool EventProcess(const Event &event);
- void Draw();
+ void Draw();
- void SetRepeat(bool bRepeat);
- bool GetRepeat();
+ void SetRepeat(bool bRepeat);
+ bool GetRepeat();
- void SetColor(Gfx::Color color);
- Gfx::Color GetColor();
+ void SetColor(Gfx::Color color);
+ Gfx::Color GetColor();
-protected:
+ protected:
-protected:
- bool m_bRepeat;
- float m_repeat;
- Gfx::Color m_color;
-};
+ protected:
+ bool m_bRepeat;
+ float m_repeat;
+ Gfx::Color m_color;
+ };
}
diff --git a/src/ui/compass.cpp b/src/ui/compass.cpp
index 95e75b3..1969710 100644
--- a/src/ui/compass.cpp
+++ b/src/ui/compass.cpp
@@ -15,23 +15,16 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
+#include "compass.h"
-//#include <windows.h>
-//#include <stdio.h>
-//#include <d3d.h>
-
-//#include "common/struct.h"
-#include "math/geometry.h"
-//#include "old/d3dengine.h"
-#include "graphics/engine/engine.h"
-#include "graphics/core/device.h"
-//#include "old/math3d.h"
#include "common/event.h"
-#include "common/misc.h"
#include "common/iman.h"
-#include "ui/compass.h"
+#include "common/misc.h"
+#include "graphics/core/device.h"
+#include "graphics/engine/engine.h"
+#include "math/geometry.h"
namespace Ui {
// Object's constructor.
diff --git a/src/ui/compass.h b/src/ui/compass.h
index 1d48907..e8ccc17 100644
--- a/src/ui/compass.h
+++ b/src/ui/compass.h
@@ -20,34 +20,35 @@
#pragma once
-#include "ui/control.h"
+#include "control.h"
namespace Gfx {
-class CEngine;
+ class CEngine;
}
namespace Ui {
-class CCompass : public CControl
-{
-public:
-// CCompass(CInstanceManager* iMan);
- CCompass();
- virtual ~CCompass();
- bool Create(Math::Point pos, Math::Point dim, int icon, EventType eventType);
+ class CCompass : public CControl
+ {
+ public:
+ // CCompass(CInstanceManager* iMan);
+ CCompass();
+ virtual ~CCompass();
- bool EventProcess(const Event &event);
+ bool Create(Math::Point pos, Math::Point dim, int icon, EventType eventType);
- void Draw();
+ bool EventProcess(const Event &event);
- void SetDirection(float dir);
- float GetDirection();
+ void Draw();
-protected:
+ void SetDirection(float dir);
+ float GetDirection();
-protected:
- float m_dir;
-};
+ protected:
+
+ protected:
+ float m_dir;
+ };
}
diff --git a/src/ui/control.cpp b/src/ui/control.cpp
index 59e9f00..c5d505e 100644
--- a/src/ui/control.cpp
+++ b/src/ui/control.cpp
@@ -16,8 +16,7 @@
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#include <ui/control.h>
-
+#include "control.h"
namespace Ui {
diff --git a/src/ui/control.h b/src/ui/control.h
index b16a324..48c3ef9 100644
--- a/src/ui/control.h
+++ b/src/ui/control.h
@@ -21,17 +21,17 @@
#include <string>
+#include <common/event.h>
+#include <common/iman.h>
+#include <common/language.h>
+#include <common/misc.h>
+#include <common/restext.h>
+
#include <graphics/core/device.h>
#include <graphics/engine/engine.h>
#include <graphics/engine/particle.h>
#include <graphics/engine/text.h>
-#include <common/language.h>
-#include <common/restext.h>
-#include <common/event.h>
-#include <common/misc.h>
-#include <common/iman.h>
-
#include <object/robotmain.h>
#include <sound/sound.h>
@@ -40,111 +40,109 @@
namespace Ui {
-
-enum ControlState
-{
- STATE_ENABLE = (1<<0), // active
- STATE_CHECK = (1<<1), // pressed
- STATE_HILIGHT = (1<<2), // overflown by mouse
- STATE_PRESS = (1<<3), // pressed by mouse
- STATE_VISIBLE = (1<<4), // visible
- STATE_DEAD = (1<<5), // inaccessible (x)
- STATE_DEFAULT = (1<<6), // actuated by RETURN
- STATE_OKAY = (1<<7), // green point at the bottom right
- STATE_SHADOW = (1<<8), // shadow
- STATE_GLINT = (1<<9), // dynamic reflection
- STATE_CARD = (1<<10), // tab
- STATE_EXTEND = (1<<11), // extended mode
- STATE_SIMPLY = (1<<12), // undecorated
- STATE_FRAME = (1<<13), // framework highlighting
- STATE_WARNING = (1<<14), // framework hatched yellow / black
- STATE_VALUE = (1<<15), // displays the value
- STATE_RUN = (1<<16) // running program
-};
-
-
-
-class CControl
-{
-public:
-// CControl(CInstanceManager* iMan);
- CControl ();
- virtual ~CControl();
-
- virtual bool Create(Math::Point pos, Math::Point dim, int icon, EventType eventType);
-
- virtual bool EventProcess(const Event &event);
-
- virtual void SetPos(Math::Point pos);
- virtual Math::Point GetPos();
- virtual void SetDim(Math::Point dim);
- virtual Math::Point GetDim();
- virtual bool SetState(int state, bool bState);
- virtual bool SetState(int state);
- virtual bool ClearState(int state);
- virtual bool TestState(int state);
- virtual int GetState();
- virtual void SetIcon(int icon);
- virtual int GetIcon();
- virtual void SetName(std::string name, bool bTooltip=true);
- virtual std::string GetName();
- virtual void SetTextAlign(Gfx::TextAlign mode);
- virtual int GetTextAlign();
- virtual void SetFontSize(float size);
- virtual float GetFontSize();
- virtual void SetFontStretch(float stretch);
- virtual float GetFontStretch();
- virtual void SetFontType(Gfx::FontType font);
- virtual Gfx::FontType GetFontType();
- virtual bool SetTooltip(std::string name);
- virtual bool GetTooltip(Math::Point pos, std::string &name);
- virtual void SetFocus(bool bFocus);
- virtual bool GetFocus();
-
- virtual EventType GetEventType();
-
- virtual void Draw();
-
-protected:
- void GlintDelete();
- void GlintCreate(Math::Point ref, bool bLeft=true, bool bUp=true);
- void GlintFrame(const Event &event);
- void DrawPart(int icon, float zoom, float ex);
- void DrawIcon(Math::Point pos, Math::Point dim, Math::Point uv1, Math::Point uv2, float ex=0.0f);
- void DrawIcon(Math::Point pos, Math::Point dim, Math::Point uv1, Math::Point uv2, Math::Point corner, float ex);
- void DrawWarning(Math::Point pos, Math::Point dim);
- void DrawShadow(Math::Point pos, Math::Point dim, float deep=1.0f);
- virtual bool Detect(Math::Point pos);
-
-protected:
- CInstanceManager* m_iMan;
- Gfx::CEngine* m_engine;
- CEventQueue* m_event;
- CRobotMain* m_main;
- Gfx::CParticle* m_particle;
- CSoundInterface* m_sound;
-
- Math::Point m_pos; // corner upper / left
- Math::Point m_dim; // dimensions
- int m_icon;
- EventType m_eventType; // message to send when clicking
- int m_state; // states (STATE_ *)
- float m_fontSize; // size of the button name
- float m_fontStretch; // stretch of the font
- Gfx::FontType m_fontType; // type of font
- Gfx::TextAlign m_textAlign; //type of alignment //comes in the place of m_justif
-// int m_justif; // type of justification (-1,0,1)
- std::string m_name; // name of the button
- std::string m_tooltip; // name of tooltip
- bool m_bFocus;
- bool m_bCapture;
-
- bool m_bGlint;
- Math::Point m_glintCorner1;
- Math::Point m_glintCorner2;
- float m_glintProgress;
- Math::Point m_glintMouse;
-};
-
+ enum ControlState
+ {
+ STATE_ENABLE = (1<<0), // active
+ STATE_CHECK = (1<<1), // pressed
+ STATE_HILIGHT = (1<<2), // overflown by mouse
+ STATE_PRESS = (1<<3), // pressed by mouse
+ STATE_VISIBLE = (1<<4), // visible
+ STATE_DEAD = (1<<5), // inaccessible (x)
+ STATE_DEFAULT = (1<<6), // actuated by RETURN
+ STATE_OKAY = (1<<7), // green point at the bottom right
+ STATE_SHADOW = (1<<8), // shadow
+ STATE_GLINT = (1<<9), // dynamic reflection
+ STATE_CARD = (1<<10), // tab
+ STATE_EXTEND = (1<<11), // extended mode
+ STATE_SIMPLY = (1<<12), // undecorated
+ STATE_FRAME = (1<<13), // framework highlighting
+ STATE_WARNING = (1<<14), // framework hatched yellow / black
+ STATE_VALUE = (1<<15), // displays the value
+ STATE_RUN = (1<<16) // running program
+ };
+
+
+
+ class CControl
+ {
+ public:
+ // CControl(CInstanceManager* iMan);
+ CControl ();
+ virtual ~CControl();
+
+ virtual bool Create(Math::Point pos, Math::Point dim, int icon, EventType eventType);
+
+ virtual bool EventProcess(const Event &event);
+
+ virtual void SetPos(Math::Point pos);
+ virtual Math::Point GetPos();
+ virtual void SetDim(Math::Point dim);
+ virtual Math::Point GetDim();
+ virtual bool SetState(int state, bool bState);
+ virtual bool SetState(int state);
+ virtual bool ClearState(int state);
+ virtual bool TestState(int state);
+ virtual int GetState();
+ virtual void SetIcon(int icon);
+ virtual int GetIcon();
+ virtual void SetName(std::string name, bool bTooltip=true);
+ virtual std::string GetName();
+ virtual void SetTextAlign(Gfx::TextAlign mode);
+ virtual int GetTextAlign();
+ virtual void SetFontSize(float size);
+ virtual float GetFontSize();
+ virtual void SetFontStretch(float stretch);
+ virtual float GetFontStretch();
+ virtual void SetFontType(Gfx::FontType font);
+ virtual Gfx::FontType GetFontType();
+ virtual bool SetTooltip(std::string name);
+ virtual bool GetTooltip(Math::Point pos, std::string &name);
+ virtual void SetFocus(bool bFocus);
+ virtual bool GetFocus();
+
+ virtual EventType GetEventType();
+
+ virtual void Draw();
+
+ protected:
+ void GlintDelete();
+ void GlintCreate(Math::Point ref, bool bLeft=true, bool bUp=true);
+ void GlintFrame(const Event &event);
+ void DrawPart(int icon, float zoom, float ex);
+ void DrawIcon(Math::Point pos, Math::Point dim, Math::Point uv1, Math::Point uv2, float ex=0.0f);
+ void DrawIcon(Math::Point pos, Math::Point dim, Math::Point uv1, Math::Point uv2, Math::Point corner, float ex);
+ void DrawWarning(Math::Point pos, Math::Point dim);
+ void DrawShadow(Math::Point pos, Math::Point dim, float deep=1.0f);
+ virtual bool Detect(Math::Point pos);
+
+ protected:
+ CInstanceManager* m_iMan;
+ Gfx::CEngine* m_engine;
+ CEventQueue* m_event;
+ CRobotMain* m_main;
+ Gfx::CParticle* m_particle;
+ CSoundInterface* m_sound;
+
+ Math::Point m_pos; // corner upper / left
+ Math::Point m_dim; // dimensions
+ int m_icon;
+ EventType m_eventType; // message to send when clicking
+ int m_state; // states (STATE_ *)
+ float m_fontSize; // size of the button name
+ float m_fontStretch; // stretch of the font
+ Gfx::FontType m_fontType; // type of font
+ Gfx::TextAlign m_textAlign; //type of alignment //comes in the place of m_justif
+ // int m_justif; // type of justification (-1,0,1)
+ std::string m_name; // name of the button
+ std::string m_tooltip; // name of tooltip
+ bool m_bFocus;
+ bool m_bCapture;
+
+ bool m_bGlint;
+ Math::Point m_glintCorner1;
+ Math::Point m_glintCorner2;
+ float m_glintProgress;
+ Math::Point m_glintMouse;
+ };
}
diff --git a/src/ui/displayinfo.cpp b/src/ui/displayinfo.cpp
index bbd3740..2cba9e3 100644
--- a/src/ui/displayinfo.cpp
+++ b/src/ui/displayinfo.cpp
@@ -18,37 +18,32 @@
// displayinfo.cpp
-//#include <windows.h>
-//#include <stdio.h>
-//#include <d3d.h>
+#include "displayinfo.h"
-//#include "common/struct.h"
-//#include "old/d3dengine.h"
-//#include "old/d3dmath.h"
-#include "graphics/engine/engine.h"
+#include "interface.h"
+#include "button.h"
+#include "slider.h"
+#include "edit.h"
+#include "group.h"
+#include "window.h"
+
+#include "common/iman.h"
#include "common/language.h"
-#include "common/event.h"
#include "common/misc.h"
-#include "common/iman.h"
#include "common/restext.h"
-//#include "old/math3d.h"
-#include "object/robotmain.h"
-//#include "old/camera.h"
+
+#include "graphics/core/light.h"
+#include "graphics/engine/engine.h"
+#include "graphics/engine/lightman.h"
+#include "graphics/engine/particle.h"
+
#include "object/object.h"
+#include "object/robotmain.h"
#include "object/motion/motion.h"
#include "object/motion/motiontoto.h"
-#include "ui/interface.h"
-#include "ui/button.h"
-#include "ui/slider.h"
-#include "ui/edit.h"
-#include "ui/group.h"
-#include "ui/window.h"
-//#include "old/particule.h"
-#include "graphics/engine/particle.h"
-//#include "old/light.h"
-//#include "old/text.h"
+
#include "script/cbottoken.h"
-#include "ui/displayinfo.h"
+
@@ -67,7 +62,7 @@ CDisplayInfo::CDisplayInfo()
m_main = static_cast <CRobotMain*> (m_iMan->SearchInstance(CLASS_MAIN));
m_camera = static_cast <Gfx::CCamera*> (m_iMan->SearchInstance(CLASS_CAMERA));
m_particle = static_cast <Gfx::CParticle*> (m_iMan->SearchInstance(CLASS_PARTICULE));
- m_light = static_cast <Gfx::CLight*> (m_iMan->SearchInstance(CLASS_LIGHT));
+ m_light = static_cast <Gfx::CLightManager*> (m_iMan->SearchInstance(CLASS_LIGHT));
m_bInfoMaximized = true;
m_bInfoMinimized = false;
@@ -338,9 +333,9 @@ void CDisplayInfo::HyperUpdate()
// Beginning of the display of information.
-void CDisplayInfo::StartDisplayInfo(char *filename, int index, bool bSoluce)
+void CDisplayInfo::StartDisplayInfo(std::string filename, int index, bool bSoluce)
{
- Gfx::CLight light;
+ Gfx::Light light;
Math::Point pos, dim;
Ui::CWindow* pw;
Ui::CEdit* edit;
@@ -389,8 +384,8 @@ void CDisplayInfo::StartDisplayInfo(char *filename, int index, bool bSoluce)
edit->SetMaxChar(10000);
edit->SetFontType(Gfx::FONT_COLOBOT);
edit->SetSoluceMode(bSoluce);
- edit->ReadText(filename);
- edit->HyperHome(filename);
+ edit->ReadText(filename.c_str());
+ edit->HyperHome(filename.c_str());
edit->SetEditCap(false); // just to see!
edit->SetHiliteCap(false);
edit->SetFocus(true);
@@ -435,7 +430,7 @@ void CDisplayInfo::StartDisplayInfo(char *filename, int index, bool bSoluce)
button->SetState(STATE_SHADOW);
slider = pw->CreateSlider(pos, dim, 0, EVENT_STUDIO_SIZE);
slider->SetState(STATE_SHADOW);
- slider->SetVisibleValue((m_main->RetFontSize()-9.0f)/6.0f);
+ slider->SetVisibleValue((m_main->GetFontSize()-9.0f)/6.0f);
button = pw->CreateButton(pos, dim, 61, EVENT_HYPER_COPY);
button->SetState(STATE_SHADOW);
HyperUpdate();
@@ -464,16 +459,14 @@ void CDisplayInfo::StartDisplayInfo(char *filename, int index, bool bSoluce)
toto->StartDisplayInfo();
}
}
-// TODO
- ZeroMemory(&light, sizeof(light));
- light.dltType = D3DLIGHT_DIRECTIONAL;
- light.dcvDiffuse.r = 1.0f;
- light.dcvDiffuse.g = 1.0f;
- light.dcvDiffuse.b = 1.0f;
- light.dvDirection = D3DVECTOR(1.0f, 0.0f, 1.0f);
+
+ light.type = Gfx::LIGHT_DIRECTIONAL;
+ light.diffuse = Gfx::Color(1.0f, 0.1f, 0.1f);
+ light.direction = Math::Vector(1.0f, 0.0f, 1.0f);
+
m_lightSuppl = m_light->CreateLight();
m_light->SetLight(m_lightSuppl, light);
- m_light->SetLightExcluType(m_lightSuppl, TYPETERRAIN);
+ m_light->SetLightExcludeType(m_lightSuppl, Gfx::ENG_OBJTYPE_TERRAIN);
}
// Repositions all controls editing.
@@ -719,7 +712,7 @@ void CDisplayInfo::UpdateIndexButton()
if ( button != 0 )
{
button->SetState(STATE_CHECK, m_index==SATCOM_HUSTON);
- filename = m_main->RetDisplayInfoName(SATCOM_HUSTON);
+ filename = m_main->GetDisplayInfoName(SATCOM_HUSTON);
button->SetState(STATE_VISIBLE, filename[0]!=0);
}
@@ -727,7 +720,7 @@ void CDisplayInfo::UpdateIndexButton()
if ( button != 0 )
{
button->SetState(STATE_CHECK, m_index==SATCOM_SAT);
- filename = m_main->RetDisplayInfoName(SATCOM_SAT);
+ filename = m_main->GetDisplayInfoName(SATCOM_SAT);
button->SetState(STATE_VISIBLE, filename[0]!=0);
}
@@ -735,7 +728,7 @@ void CDisplayInfo::UpdateIndexButton()
//? if ( button != 0 )
//? {
//? button->SetState(STATE_CHECK, m_index==SATCOM_OBJECT);
-//? filename = m_main->RetDisplayInfoName(SATCOM_OBJECT);
+//? filename = m_main->GetDisplayInfoName(SATCOM_OBJECT);
//? button->SetState(STATE_VISIBLE, filename[0]!=0);
//? }
@@ -744,7 +737,7 @@ void CDisplayInfo::UpdateIndexButton()
if ( button != 0 )
{
button->SetState(STATE_CHECK, m_index==SATCOM_LOADING);
- loading = m_main->RetDisplayInfoName(SATCOM_LOADING);
+ loading = m_main->GetDisplayInfoName(SATCOM_LOADING);
button->SetState(STATE_VISIBLE, loading[0]!=0);
}
@@ -752,7 +745,7 @@ void CDisplayInfo::UpdateIndexButton()
if ( button != 0 )
{
button->SetState(STATE_CHECK, m_index==SATCOM_PROG);
- filename = m_main->RetDisplayInfoName(SATCOM_PROG);
+ filename = m_main->GetDisplayInfoName(SATCOM_PROG);
button->SetState(STATE_VISIBLE, filename[0]!=0 && (m_index==SATCOM_LOADING||m_index==SATCOM_PROG||(loading!=0&&loading[0]==0)));
}
@@ -760,7 +753,7 @@ void CDisplayInfo::UpdateIndexButton()
if ( button != 0 )
{
button->SetState(STATE_CHECK, m_index==SATCOM_SOLUCE);
- filename = m_main->RetDisplayInfoName(SATCOM_SOLUCE);
+ filename = m_main->GetDisplayInfoName(SATCOM_SOLUCE);
button->SetState(STATE_VISIBLE, filename[0]!=0 && m_bSoluce);
}
@@ -858,12 +851,12 @@ void CDisplayInfo::StopDisplayInfo()
m_engine->SetDrawWorld(true); // draws all on the interface
m_engine->SetDrawFront(false); // draws nothing on the interface
m_particle->SetFrameUpdate(Gfx::SH_WORLD, true);
- m_particle->FlushParticule(Gfx::SH_FRONT);
- m_particle->FlushParticule(Gfx::SH_INTERFACE);
+ m_particle->FlushParticle(Gfx::SH_FRONT);
+ m_particle->FlushParticle(Gfx::SH_INTERFACE);
if ( m_toto != 0 )
{
- toto = (CMotionToto*)m_toto->GetMotion();
+ toto = static_cast<CMotionToto*>(m_toto->GetMotion());
if ( toto != 0 )
{
toto->StopDisplayInfo();
@@ -915,7 +908,7 @@ void CDisplayInfo::ViewDisplayInfo()
{
Ui::CWindow* pw;
Ui::CEdit* edit;
- Math::Point dim;
+ Math::IntPoint dim;
pw = static_cast<Ui::CWindow*>(m_interface->SearchControl(EVENT_WINDOW4));
if ( pw == 0 ) return;
@@ -923,7 +916,7 @@ void CDisplayInfo::ViewDisplayInfo()
edit = static_cast<Ui::CEdit*>(pw->SearchControl(EVENT_EDIT1));
if ( edit == 0 ) return;
- dim = m_engine->GetDim();
+ dim = m_engine->GetWindowSize();
edit->SetFontSize(m_main->GetFontSize()/(dim.x / 640.0f));
}
diff --git a/src/ui/displayinfo.h b/src/ui/displayinfo.h
index 1eaa39b..2eabbf2 100644
--- a/src/ui/displayinfo.h
+++ b/src/ui/displayinfo.h
@@ -19,83 +19,81 @@
#pragma once
+#include <string>
-#include "common/struct.h"
-#include "old/camera.h"
+#include "common/event.h"
+#include "graphics/engine/camera.h"
class CInstanceManager;
-//class CD3DEngine;
-class CEvent;
class CRobotMain;
-//class CCamera;
-
class CObject;
-//class CLight;
+class CEventQueue;
+
+struct Event;
namespace Gfx {
-class CEngine;
-class Camera;
-class Particle;
-class CLight;
+ class CEngine;
+ class CParticle;
+ class CLightManager;
}
namespace Ui {
-class CInterface;
-
-class CDisplayInfo
-{
-public:
-// CDisplayInfo(CInstanceManager* iMan);
- CDisplayInfo();
- ~CDisplayInfo();
-
- bool EventProcess(const Event &event);
-
- void StartDisplayInfo(char *filename, int index, bool bSoluce);
- void StopDisplayInfo();
-
- void SetPosition(int pos);
- int GetPosition();
-
-protected:
- bool EventFrame(const Event &event);
- void HyperUpdate();
- void AdjustDisplayInfo(Math::Point wpos, Math::Point wdim);
- void ChangeIndexButton(int index);
- void UpdateIndexButton();
- void UpdateCopyButton();
- void ViewDisplayInfo();
- CObject* SearchToto();
- void CreateObjectsFile();
-
-protected:
- CInstanceManager* m_iMan;
- Gfx::CEngine* m_engine;
- CEventQueue* m_event;
- CRobotMain* m_main;
- Gfx::CCamera* m_camera;
- CInterface* m_interface;
- Gfx::CParticle* m_particle;
- Gfx::CLight* m_light;
-
- bool m_bInfoMaximized;
- bool m_bInfoMinimized;
-
- int m_index;
- Gfx::CameraType m_infoCamera;
- Math::Point m_infoNormalPos;
- Math::Point m_infoNormalDim;
- Math::Point m_infoActualPos;
- Math::Point m_infoActualDim;
- Math::Point m_infoFinalPos;
- Math::Point m_infoFinalDim;
- int m_lightSuppl;
- bool m_bEditLock;
- bool m_bInitPause;
- bool m_bSoluce;
- CObject* m_toto;
-};
+ class CInterface;
+
+ class CDisplayInfo
+ {
+ public:
+ // CDisplayInfo(CInstanceManager* iMan);
+ CDisplayInfo();
+ ~CDisplayInfo();
+
+ bool EventProcess(const Event &event);
+
+ void StartDisplayInfo(std::string filename, int index, bool bSoluce);
+ void StopDisplayInfo();
+
+ void SetPosition(int pos);
+ int GetPosition();
+
+ protected:
+ bool EventFrame(const Event &event);
+ void HyperUpdate();
+ void AdjustDisplayInfo(Math::Point wpos, Math::Point wdim);
+ void ChangeIndexButton(int index);
+ void UpdateIndexButton();
+ void UpdateCopyButton();
+ void ViewDisplayInfo();
+ CObject* SearchToto();
+ void CreateObjectsFile();
+
+ protected:
+ CInstanceManager* m_iMan;
+ Gfx::CEngine* m_engine;
+ CEventQueue* m_event;
+ CRobotMain* m_main;
+ Gfx::CCamera* m_camera;
+ CInterface* m_interface;
+ Gfx::CParticle* m_particle;
+ Gfx::CLightManager* m_light;
+
+ bool m_bInfoMaximized;
+ bool m_bInfoMinimized;
+
+ int m_index;
+ Gfx::CameraType m_infoCamera;
+ Math::Point m_infoNormalPos;
+ Math::Point m_infoNormalDim;
+ Math::Point m_infoActualPos;
+ Math::Point m_infoActualDim;
+ Math::Point m_infoFinalPos;
+ Math::Point m_infoFinalDim;
+ int m_lightSuppl;
+ bool m_bEditLock;
+ bool m_bInitPause;
+ bool m_bSoluce;
+ CObject* m_toto;
+ };
}
diff --git a/src/ui/displaytext.cpp b/src/ui/displaytext.cpp
index 1e26f7f..aa51653 100644
--- a/src/ui/displaytext.cpp
+++ b/src/ui/displaytext.cpp
@@ -18,29 +18,26 @@
// displaytext.cpp
-//#include <windows.h>
-//#include <stdio.h>
-//#include <d3d.h>
+#include "displaytext.h"
+
+#include "interface.h"
+#include "button.h"
+#include "label.h"
+#include "window.h"
+#include "group.h"
-//#include "common/struct.h"
-//#include "old/d3dengine.h"
-#include "graphics/engine/engine.h"
#include "common/event.h"
+#include "common/iman.h"
#include "common/misc.h"
#include "common/restext.h"
-#include "common/iman.h"
+
+#include "graphics/engine/engine.h"
+
#include "object/object.h"
#include "object/motion/motion.h"
#include "object/motion/motiontoto.h"
-#include "ui/interface.h"
-#include "ui/button.h"
-#include "ui/label.h"
-#include "ui/window.h"
-#include "ui/group.h"
-//#include "old/text.h"
-//#include "old/sound.h"
-//#include "sound/sound.h"
-#include "ui/displaytext.h"
+
+
namespace Ui {
diff --git a/src/ui/displaytext.h b/src/ui/displaytext.h
index d560433..b8af97e 100644
--- a/src/ui/displaytext.h
+++ b/src/ui/displaytext.h
@@ -22,8 +22,9 @@
#include "common/event.h"
#include "common/misc.h"
+
#include "sound/sound.h"
-//#include "old/d3dengine.h"
+
class CInstanceManager;
@@ -31,6 +32,10 @@ class CInstanceManager;
class CObject;
class CSound;
+namespace Gfx {
+ class CEngine;
+}
+
namespace Ui {;
class CInterface;
diff --git a/src/ui/edit.cpp b/src/ui/edit.cpp
index 2052356..cc911a4 100644
--- a/src/ui/edit.cpp
+++ b/src/ui/edit.cpp
@@ -18,7 +18,7 @@
// edit.cpp
-#include <ui/edit.h>
+#include "edit.h"
namespace Ui {
diff --git a/src/ui/maindialog.cpp b/src/ui/maindialog.cpp
index c8759e0..6b071c1 100644
--- a/src/ui/maindialog.cpp
+++ b/src/ui/maindialog.cpp
@@ -17,16 +17,7 @@
// maindialog.cpp
-#include <windows.h>
-#include <stdio.h>
-#include <time.h>
-#include <direct.h>
-#include <io.h>
-#include <d3d.h>
-
#include "common/struct.h"
-#include "old/d3dengine.h"
-#include "old/d3dmath.h"
#include "common/global.h"
#include "common/language.h"
#include "common/event.h"
@@ -34,8 +25,6 @@
#include "common/profile.h"
#include "common/iman.h"
#include "common/restext.h"
-#include "old/math3d.h"
-#include "old/particule.h"
#include "ui/interface.h"
#include "ui/button.h"
#include "ui/color.h"
@@ -50,9 +39,6 @@
#include "ui/window.h"
#include "ui/edit.h"
#include "ui/editvalue.h"
-#include "old/text.h"
-#include "old/camera.h"
-#include "old/sound.h"
#include "script/cmdtoken.h"
#include "object/robotmain.h"
#include "ui/maindialog.h"
diff --git a/src/ui/maindialog.h b/src/ui/maindialog.h
index cfd9564..bddd61f 100644
--- a/src/ui/maindialog.h
+++ b/src/ui/maindialog.h
@@ -20,7 +20,6 @@
#include "common/struct.h"
-#include "old/camera.h"
#include "object/robotmain.h"
diff --git a/src/ui/map.cpp b/src/ui/map.cpp
index 30edfb1..5139d88 100644
--- a/src/ui/map.cpp
+++ b/src/ui/map.cpp
@@ -18,7 +18,9 @@
// map.cpp
-#include <ui/map.h>
+#include "map.h"
+
+
namespace Ui {
diff --git a/src/ui/studio.cpp b/src/ui/studio.cpp
index 928e129..5062798 100644
--- a/src/ui/studio.cpp
+++ b/src/ui/studio.cpp
@@ -18,7 +18,9 @@
// studio.cpp
-#include <ui/studio.h>
+#include "studio.h"
+
+#include <script/cbottoken.h>
namespace Ui {
@@ -36,6 +38,7 @@ CStudio::CStudio()
m_main = static_cast<CRobotMain*>(m_iMan->SearchInstance(CLASS_MAIN));
m_camera = static_cast<CCamera*>(m_iMan->SearchInstance(CLASS_CAMERA));
m_sound = static_cast<CSoundInterface*>(m_iMan->SearchInstance(CLASS_SOUND));
+ m_app = CApplication::GetInstancePointer();
m_bEditMaximized = false;
m_bEditMinimized = false;
@@ -76,15 +79,15 @@ bool CStudio::EventProcess(const Event &event)
}
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw == 0 ) return false;
+ if ( pw == nullptr ) return false;
- edit = (CEdit*)pw->SearchControl(EVENT_STUDIO_EDIT);
+ edit = static_cast<CEdit*>(pw->SearchControl(EVENT_STUDIO_EDIT));
if ( edit == 0 ) return false;
if ( event.type == pw->GetEventTypeClose() )
{
Event newEvent = event;
- newEvent.event = EVENT_STUDIO_OK;
+ newEvent.type = EVENT_STUDIO_OK;
m_event->AddEvent(newEvent);
}
@@ -95,7 +98,7 @@ bool CStudio::EventProcess(const Event &event)
if ( event.type == EVENT_STUDIO_LIST ) // list clicked?
{
- m_main->StartDisplayInfo(m_helpFilename, -1);
+ m_main->StartDisplayInfo(const_cast<char *>(m_helpFilename.c_str()), -1); // TODO change to std::string when RobotMain changes
}
if ( event.type == EVENT_STUDIO_NEW ) // new?
@@ -169,7 +172,7 @@ bool CStudio::EventProcess(const Event &event)
if ( m_script->IsRunning() )
{
Event newEvent = event;
- newEvent.event = EVENT_OBJECT_PROGSTOP;
+ newEvent.type = EVENT_OBJECT_PROGSTOP;
m_event->AddEvent(newEvent); // stop
}
else
@@ -179,7 +182,7 @@ bool CStudio::EventProcess(const Event &event)
SetInfoText("", false);
Event newEvent = event;
- newEvent.event = EVENT_OBJECT_PROGSTART;
+ newEvent.type = EVENT_OBJECT_PROGSTART;
m_event->AddEvent(newEvent); // start
}
else
@@ -204,14 +207,14 @@ bool CStudio::EventProcess(const Event &event)
m_script->Step(event);
}
- if ( event.type == EVENT_KEYDOWN )
+ if ( event.type == EVENT_KEY_DOWN )
{
- if ( event.param == m_engine->GetKey(KEYRANK_CBOT, 0) ||
- event.param == m_engine->GetKey(KEYRANK_CBOT, 1) )
+ if ( event.param == m_app->GetKey(KEYRANK_CBOT, 0) ||
+ event.param == m_app->GetKey(KEYRANK_CBOT, 1) )
{
- if ( m_helpFilename[0] != 0 )
+ if ( m_helpFilename.length() > 0 )
{
- m_main->StartDisplayInfo(m_helpFilename, -1);
+ m_main->StartDisplayInfo(const_cast<char *>(m_helpFilename.c_str()), -1); // TODO change to std::string when RobotMain changes
}
}
}
@@ -244,7 +247,7 @@ bool CStudio::EventProcess(const Event &event)
}
m_main->SetEditFull(m_bEditMaximized);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw != 0 )
+ if ( pw != nullptr )
{
pw->SetMaximized(m_bEditMaximized);
pw->SetMinimized(m_bEditMinimized);
@@ -270,7 +273,7 @@ bool CStudio::EventProcess(const Event &event)
}
m_main->SetEditFull(m_bEditMaximized);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw != 0 )
+ if ( pw != nullptr )
{
pw->SetMaximized(m_bEditMaximized);
pw->SetMinimized(m_bEditMinimized);
@@ -316,7 +319,7 @@ bool CStudio::EventFrame(const Event &event)
m_fixInfoTextTime -= event.rTime;
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw == 0 ) return false;
+ if ( pw == nullptr ) return false;
edit = (CEdit*)pw->SearchControl(EVENT_STUDIO_EDIT);
if ( edit == 0 ) return false;
@@ -330,10 +333,10 @@ bool CStudio::EventFrame(const Event &event)
UpdateFlux(); // stop
AdjustEditScript();
GetResource(RES_TEXT, RT_STUDIO_PROGSTOP, res);
- SetInfoText(res, false);
+ SetInfoText(std::string(res), false);
Event newEvent = event;
- newEvent.event = EVENT_OBJECT_PROGSTOP;
+ newEvent.type = EVENT_OBJECT_PROGSTOP;
m_event->AddEvent(newEvent); // stop
}
@@ -386,7 +389,7 @@ bool IsToken(int character)
{
char c;
- c = tolower(RetNoAccent(character));
+ c = tolower(GetNoAccent(character));
return ( (c >= 'a' && c <= 'z') ||
(c >= '0' && c <= '9') ||
@@ -466,8 +469,8 @@ void CStudio::SearchToken(CEdit* edit)
}
token[i] = 0;
- strcpy(m_helpFilename, GetHelpFilename(token));
- if ( m_helpFilename[0] == 0 )
+ m_helpFilename = std::string(GetHelpFilename(token));
+ if ( m_helpFilename.length() == 0 )
{
for ( i=0 ; i<OBJECT_MAX ; i++ )
{
@@ -477,28 +480,28 @@ void CStudio::SearchToken(CEdit* edit)
{
if ( strcmp(token, text) == 0 )
{
- strcpy(m_helpFilename, GetHelpFilename(type));
- SetInfoText(token, true);
+ m_helpFilename = GetHelpFilename(type);
+ SetInfoText(std::string(token), true);
return;
}
}
- text = RetObjectAlias(type);
+ text = GetObjectAlias(type);
if ( text[0] != 0 )
{
if ( strcmp(token, text) == 0 )
{
- strcpy(m_helpFilename, GetHelpFilename(type));
- SetInfoText(token, true);
+ m_helpFilename = GetHelpFilename(type);
+ SetInfoText(std::string(token), true);
return;
}
}
}
}
- text = RetHelpText(token);
- if ( text[0] == 0 && m_helpFilename[0] != 0 )
+ text = GetHelpText(token);
+ if ( text[0] == 0 && m_helpFilename.length() > 0 )
{
- SetInfoText(token, true);
+ SetInfoText(std::string(token), true);
}
else
{
@@ -516,7 +519,7 @@ void CStudio::ColorizeScript(CEdit* edit)
// Starts editing a program.
-void CStudio::StartEditScript(CScript *script, char* name, int rank)
+void CStudio::StartEditScript(CScript *script, std::string name, int rank)
{
Math::Point pos, dim;
CWindow* pw;
@@ -534,7 +537,7 @@ void CStudio::StartEditScript(CScript *script, char* name, int rank)
m_bInitPause = m_engine->GetPause();
m_main->SetSpeed(1.0f);
m_editCamera = m_camera->GetType();
- m_camera->SetType(CAMERA_EDIT);
+ m_camera->SetType(CAM_TYPE_EDIT);
m_bRunning = m_script->IsRunning();
m_bRealTime = m_bRunning;
@@ -549,7 +552,7 @@ void CStudio::StartEditScript(CScript *script, char* name, int rank)
pos = m_editFinalPos = m_editActualPos = m_main->GetWindowPos();
dim = m_editFinalDim = m_editActualDim = m_main->GetWindowDim();
pw = m_interface->CreateWindows(pos, dim, 8, EVENT_WINDOW3);
- if ( pw == 0 ) return;
+ if ( pw == nullptr ) return;
pw->SetState(STATE_SHADOW);
pw->SetRedim(true); // before SetName!
pw->SetMovable(true);
@@ -567,7 +570,7 @@ void CStudio::StartEditScript(CScript *script, char* name, int rank)
edit->SetInsideScroll(false);
//? if ( m_bRunning ) edit->SetEdit(false);
edit->SetMaxChar(EDITSTUDIOMAX);
- edit->SetFontType(FONT_COURIER);
+ edit->SetFontType(Gfx::FONT_COURIER);
edit->SetFontStretch(0.7f);
edit->SetDisplaySpec(true);
edit->SetAutoIndent(m_engine->GetEditIndentMode());
@@ -578,7 +581,7 @@ void CStudio::StartEditScript(CScript *script, char* name, int rank)
list = pw->CreateList(pos, dim, 1, EVENT_STUDIO_LIST, 1.2f);
list->SetState(STATE_SHADOW);
- list->SetFontType(FONT_COURIER);
+ list->SetFontType(Gfx::FONT_COURIER);
list->SetSelectCap(false);
list->SetFontSize(SMALLFONT*0.85f);
//? list->SetFontStretch(1.0f);
@@ -641,7 +644,7 @@ void CStudio::AdjustEditScript()
wdim = m_editActualDim;
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw != 0 )
+ if ( pw != nullptr )
{
pw->SetPos(wpos);
pw->SetDim(wdim);
@@ -819,7 +822,7 @@ bool CStudio::StopEditScript(bool bCancel)
char buffer[100];
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw == 0 ) return false;
+ if ( pw == nullptr ) return false;
if ( !bCancel && !m_script->IsRunning() )
{
@@ -865,7 +868,7 @@ void CStudio::SetInfoText(char *text, bool bClickable)
if ( !bClickable ) m_fixInfoTextTime = 8.0f;
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw == 0 ) return;
+ if ( pw == nullptr ) return;
list = (CList*)pw->SearchControl(EVENT_STUDIO_LIST);
if ( list == 0 ) return;
@@ -900,7 +903,7 @@ void CStudio::ViewEditScript()
POINT dim;
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw == 0 ) return;
+ if ( pw == nullptr ) return;
edit = (CEdit*)pw->SearchControl(EVENT_STUDIO_EDIT);
if ( edit == 0 ) return;
@@ -948,7 +951,7 @@ void CStudio::UpdateButtons()
CButton* button;
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw == 0 ) return;
+ if ( pw == nullptr ) return;
edit = (CEdit*)pw->SearchControl(EVENT_STUDIO_EDIT);
if ( edit == 0 ) return;
@@ -1001,31 +1004,31 @@ void CStudio::StartDialog(StudioDialog type)
m_dialog = type;
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW0);
- if ( pw != 0 ) pw->ClearState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->ClearState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW1);
- if ( pw != 0 ) pw->ClearState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->ClearState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw != 0 ) pw->ClearState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->ClearState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw != 0 ) pw->ClearState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->ClearState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW4);
- if ( pw != 0 ) pw->ClearState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->ClearState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW5);
- if ( pw != 0 ) pw->ClearState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->ClearState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW6);
- if ( pw != 0 ) pw->ClearState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->ClearState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW7);
- if ( pw != 0 ) pw->ClearState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->ClearState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW8);
- if ( pw != 0 ) pw->ClearState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->ClearState(STATE_ENABLE);
if ( m_dialog == SD_OPEN ||
m_dialog == SD_SAVE )
@@ -1051,14 +1054,14 @@ void CStudio::StartDialog(StudioDialog type)
{
GetResource(RES_TEXT, RT_IO_LIST, name);
pla = pw->CreateLabel(pos, dim, 0, EVENT_DIALOG_LABEL1, name);
- pla->SetJustif(1);
+ pla->SetTextAlign(1);
pli = pw->CreateList(pos, dim, 0, EVENT_DIALOG_LIST);
pli->SetState(STATE_SHADOW);
GetResource(RES_TEXT, RT_IO_NAME, name);
pla = pw->CreateLabel(pos, dim, 0, EVENT_DIALOG_LABEL2, name);
- pla->SetJustif(1);
+ pla->SetTextAlign(1);
pe = pw->CreateEdit(pos, dim, 0, EVENT_DIALOG_EDIT);
pe->SetState(STATE_SHADOW);
@@ -1069,7 +1072,7 @@ void CStudio::StartDialog(StudioDialog type)
GetResource(RES_TEXT, RT_IO_DIR, name);
pla = pw->CreateLabel(pos, dim, 0, EVENT_DIALOG_LABEL3, name);
- pla->SetJustif(1);
+ pla->SetTextAlign(1);
pc = pw->CreateCheck(pos, dim, 0, EVENT_DIALOG_CHECK1);
GetResource(RES_TEXT, RT_IO_PRIVATE, name);
@@ -1120,31 +1123,31 @@ void CStudio::StopDialog()
m_dialog = SD_NULL;
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW0);
- if ( pw != 0 ) pw->SetState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->SetState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW1);
- if ( pw != 0 ) pw->SetState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->SetState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw != 0 ) pw->SetState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->SetState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw != 0 ) pw->SetState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->SetState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW4);
- if ( pw != 0 ) pw->SetState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->SetState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW5);
- if ( pw != 0 ) pw->SetState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->SetState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW6);
- if ( pw != 0 ) pw->SetState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->SetState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW7);
- if ( pw != 0 ) pw->SetState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->SetState(STATE_ENABLE);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW8);
- if ( pw != 0 ) pw->SetState(STATE_ENABLE);
+ if ( pw != nullptr ) pw->SetState(STATE_ENABLE);
m_interface->DeleteControl(EVENT_WINDOW9);
m_main->SetSatComLock(false); // possible to use the SatCom
@@ -1165,7 +1168,7 @@ void CStudio::AdjustDialog()
char name[100];
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW9);
- if ( pw == 0 ) return;
+ if ( pw == nullptr ) return;
wpos = pw->GetPos();
wdim = pw->GetDim();
@@ -1283,7 +1286,7 @@ bool CStudio::EventDialog(const Event &event)
Math::Point wpos, wdim;
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW9);
- if ( pw == 0 ) return false;
+ if ( pw == nullptr ) return false;
if ( event.type == EVENT_WINDOW9 ) // window is moved?
{
@@ -1358,11 +1361,11 @@ void CStudio::UpdateChangeList()
char* p;
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW9);
- if ( pw == 0 ) return;
+ if ( pw == nullptr ) return;
pl = (CList*)pw->SearchControl(EVENT_DIALOG_LIST);
if ( pl == 0 ) return;
pe = (CEdit*)pw->SearchControl(EVENT_DIALOG_EDIT);
- if ( pe == 0 ) return;
+ if ( pe == nullptr ) return;
strcpy(name, pl->GetName(pl->GetSelect()));
name[pe->GetMaxChar()] = 0; // truncates according lg max editable
@@ -1383,7 +1386,7 @@ void CStudio::UpdateChangeEdit()
CList* pl;
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW9);
- if ( pw == 0 ) return;
+ if ( pw == nullptr ) return;
pl = (CList*)pw->SearchControl(EVENT_DIALOG_LIST);
if ( pl == 0 ) return;
@@ -1404,9 +1407,9 @@ void CStudio::UpdateDialogAction()
bool bError;
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW9);
- if ( pw == 0 ) return;
+ if ( pw == nullptr ) return;
pe = (CEdit*)pw->SearchControl(EVENT_DIALOG_EDIT);
- if ( pe == 0 ) return;
+ if ( pe == nullptr ) return;
pb = (CButton*)pw->SearchControl(EVENT_DIALOG_OK);
if ( pb == 0 ) return;
@@ -1448,7 +1451,7 @@ void CStudio::UpdateDialogPublic()
char text[_MAX_FNAME+100];
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW9);
- if ( pw == 0 ) return;
+ if ( pw == nullptr ) return;
pc = (CCheck*)pw->SearchControl(EVENT_DIALOG_CHECK1);
if ( pc != 0 )
@@ -1476,7 +1479,8 @@ void CStudio::UpdateDialogPublic()
void CStudio::UpdateDialogList()
{
- CWindow* pw;
+ // TODO rewrite to multiplatform
+ /*CWindow* pw;
CList* pl;
long hFile;
struct _finddata_t fileBuffer;
@@ -1487,7 +1491,7 @@ void CStudio::UpdateDialogList()
int nbFilenames, i;
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW9);
- if ( pw == 0 ) return;
+ if ( pw == nullptr ) return;
pl = (CList*)pw->SearchControl(EVENT_DIALOG_LIST);
if ( pl == 0 ) return;
pl->Flush();
@@ -1532,7 +1536,7 @@ void CStudio::UpdateDialogList()
pl->SetName(i, temp);
}
- free(listBuffer);
+ free(listBuffer);*/
}
// Constructs the name of the folder or open/save.
@@ -1566,10 +1570,10 @@ bool CStudio::ReadProgram()
char* p;
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW9);
- if ( pw == 0 ) return false;
+ if ( pw == nullptr ) return false;
pe = (CEdit*)pw->SearchControl(EVENT_DIALOG_EDIT);
- if ( pe == 0 ) return false;
+ if ( pe == nullptr ) return false;
pe->GetText(filename, 100);
if ( filename[0] == 0 ) return false;
@@ -1582,9 +1586,9 @@ bool CStudio::ReadProgram()
strcat(dir, filename);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw == 0 ) return false;
+ if ( pw == nullptr ) return false;
pe = (CEdit*)pw->SearchControl(EVENT_STUDIO_EDIT);
- if ( pe == 0 ) return false;
+ if ( pe == nullptr ) return false;
if ( !pe->ReadText(dir) ) return false;
@@ -1604,10 +1608,10 @@ bool CStudio::WriteProgram()
char* p;
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW9);
- if ( pw == 0 ) return false;
+ if ( pw == nullptr ) return false;
pe = (CEdit*)pw->SearchControl(EVENT_DIALOG_EDIT);
- if ( pe == 0 ) return false;
+ if ( pe == nullptr ) return false;
pe->GetText(filename, 100);
if ( filename[0] == 0 ) return false;
@@ -1620,9 +1624,9 @@ bool CStudio::WriteProgram()
strcat(dir, filename);
pw = (CWindow*)m_interface->SearchControl(EVENT_WINDOW3);
- if ( pw == 0 ) return false;
+ if ( pw == nullptr ) return false;
pe = (CEdit*)pw->SearchControl(EVENT_STUDIO_EDIT);
- if ( pe == 0 ) return false;
+ if ( pe == nullptr ) return false;
if ( !pe->WriteText(dir) ) return false;
diff --git a/src/ui/studio.h b/src/ui/studio.h
index 6af69ee..e9fb69c 100644
--- a/src/ui/studio.h
+++ b/src/ui/studio.h
@@ -19,6 +19,7 @@
#pragma once
+#include <string>
#include <object/object.h>
@@ -54,6 +55,8 @@
#include <ui/window.h>
#include <ui/interface.h>
+#include <app/app.h>
+
namespace Ui {
@@ -76,7 +79,7 @@ class CStudio
bool EventProcess(const Event &event);
- void StartEditScript(CScript *script, char* name, int rank);
+ void StartEditScript(CScript *script, std::string name, int rank);
bool StopEditScript(bool bCancel);
protected:
@@ -84,7 +87,7 @@ class CStudio
void SearchToken(CEdit* edit);
void ColorizeScript(CEdit* edit);
void AdjustEditScript();
- void SetInfoText(char *text, bool bClickable);
+ void SetInfoText(std::string text, bool bClickable);
void ViewEditScript();
void UpdateFlux();
void UpdateButtons();
@@ -98,7 +101,7 @@ class CStudio
void UpdateDialogAction();
void UpdateDialogPublic();
void UpdateDialogList();
- void SearchDirectory(char *dir, bool bCreate);
+ void SearchDirectory(std::string dir, bool bCreate);
bool ReadProgram();
bool WriteProgram();
@@ -110,9 +113,11 @@ class CStudio
CCamera* m_camera;
CSoundInterface* m_sound;
CInterface* m_interface;
+ CApplication *m_app;
int m_rank;
CScript* m_script;
+ Gfx::CameraType m_editCamera;
bool m_bEditMaximized;
bool m_bEditMinimized;
@@ -128,7 +133,7 @@ class CStudio
bool m_bRunning;
bool m_bRealTime;
bool m_bInitPause;
- char m_helpFilename[100];
+ std::string m_helpFilename;
StudioDialog m_dialog;
};
diff --git a/src/ui/target.cpp b/src/ui/target.cpp
index 9ffcfb9..f0ae70e 100644
--- a/src/ui/target.cpp
+++ b/src/ui/target.cpp
@@ -17,21 +17,7 @@
// target.cpp
-//#include <windows.h>
-//#include <stdio.h>
-//#include <d3d.h>
-
-//#include "common/struct.h"
-//#include "old/d3dengine.h"
-//#include "old/math3d.h"
-#include "graphics/engine/engine.h"
-#include "common/event.h"
-#include "common/misc.h"
-#include "common/iman.h"
-#include "object/robotmain.h"
-#include "object/object.h"
-#include "common/restext.h"
-#include "ui/target.h"
+#include <ui/target.h>
@@ -162,7 +148,7 @@ void CTarget::Draw()
// Returns the tooltip.
-bool CTarget::GetTooltip(Math::Point pos, char* name)
+bool CTarget::GetTooltip(Math::Point pos, std::string &name)
{
#if 0
if ( (m_state&STATE_VISIBLE) && Detect(pos) ) // in the window?
@@ -183,7 +169,7 @@ bool CTarget::GetTooltip(Math::Point pos, char* name)
//? if ( pObj == 0 )
if ( !m_main->GetFriendAim() )
{
- strcpy(name, m_tooltip);
+ m_tooltip = name;
return true; // does not detect objects below!
}
}
diff --git a/src/ui/target.h b/src/ui/target.h
index 47b9760..1f7f256 100644
--- a/src/ui/target.h
+++ b/src/ui/target.h
@@ -22,8 +22,17 @@
#include <ui/control.h>
+#include <common/misc.h>
+#include <common/iman.h>
+#include <common/restext.h>
#include <common/event.h>
+#include <graphics/engine/engine.h>
+
+#include <object/robotmain.h>
+#include <object/object.h>
+
+
namespace Ui {
class CTarget : public CControl