summaryrefslogtreecommitdiffhomepage
path: root/Stars45/CmdIntelDlg.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Stars45/CmdIntelDlg.cpp')
-rw-r--r--Stars45/CmdIntelDlg.cpp542
1 files changed, 271 insertions, 271 deletions
diff --git a/Stars45/CmdIntelDlg.cpp b/Stars45/CmdIntelDlg.cpp
index 67e5424..9bf2054 100644
--- a/Stars45/CmdIntelDlg.cpp
+++ b/Stars45/CmdIntelDlg.cpp
@@ -1,15 +1,15 @@
/* Project Starshatter 4.5
- Destroyer Studios LLC
- Copyright © 1997-2004. All Rights Reserved.
+ Destroyer Studios LLC
+ Copyright © 1997-2004. All Rights Reserved.
- SUBSYSTEM: Stars.exe
- FILE: CmdIntelDlg.cpp
- AUTHOR: John DiCamillo
+ SUBSYSTEM: Stars.exe
+ FILE: CmdIntelDlg.cpp
+ AUTHOR: John DiCamillo
- OVERVIEW
- ========
- Operational Command Dialog (Intel/Newsfeed Tab)
+ OVERVIEW
+ ========
+ Operational Command Dialog (Intel/Newsfeed Tab)
*/
#include "MemDebug.h"
@@ -50,17 +50,17 @@ DEF_MAP_CLIENT(CmdIntelDlg, OnPlay);
// +--------------------------------------------------------------------+
CmdIntelDlg::CmdIntelDlg(Screen* s, FormDef& def, CmpnScreen* mgr)
- : FormWindow(s, 0, 0, s->Width(), s->Height()), CmdDlg(mgr), manager(mgr),
- stars(0), campaign(0), update_time(0), start_scene(0),
- cam_view(0), dsp_view(0)
+: FormWindow(s, 0, 0, s->Width(), s->Height()), CmdDlg(mgr), manager(mgr),
+stars(0), campaign(0), update_time(0), start_scene(0),
+cam_view(0), dsp_view(0)
{
- stars = Starshatter::GetInstance();
- campaign = Campaign::GetCampaign();
+ stars = Starshatter::GetInstance();
+ campaign = Campaign::GetCampaign();
- if (campaign)
- update_time = campaign->GetUpdateTime();
+ if (campaign)
+ update_time = campaign->GetUpdateTime();
- Init(def);
+ Init(def);
}
CmdIntelDlg::~CmdIntelDlg()
@@ -72,50 +72,50 @@ CmdIntelDlg::~CmdIntelDlg()
void
CmdIntelDlg::RegisterControls()
{
- lst_news = (ListBox*) FindControl(401);
- txt_news = (RichTextBox*) FindControl(402);
- img_news = (ImageBox*) FindControl(403);
- mov_news = FindControl(404);
- btn_play = (Button*) FindControl(405);
-
- RegisterCmdControls(this);
-
- if (btn_save)
- REGISTER_CLIENT(EID_CLICK, btn_save, CmdIntelDlg, OnSave);
-
- if (btn_exit)
- REGISTER_CLIENT(EID_CLICK, btn_exit, CmdIntelDlg, OnExit);
-
- if (btn_play)
- REGISTER_CLIENT(EID_CLICK, btn_play, CmdIntelDlg, OnPlay);
-
- for (int i = 0; i < 5; i++) {
- if (btn_mode[i])
- REGISTER_CLIENT(EID_CLICK, btn_mode[i], CmdIntelDlg, OnMode);
- }
-
- if (lst_news) {
- REGISTER_CLIENT(EID_SELECT, lst_news, CmdIntelDlg, OnNews);
- }
-
- if (img_news) {
- img_news->GetPicture(bmp_default);
- }
-
- if (mov_news) {
- CameraDirector* cam_dir = CameraDirector::GetInstance();
- cam_view = new(__FILE__,__LINE__) CameraView(mov_news, cam_dir->GetCamera(), 0);
- if (cam_view)
- mov_news->AddView(cam_view);
-
- dsp_view = DisplayView::GetInstance();
- if (dsp_view) {
- dsp_view->SetWindow(mov_news);
- mov_news->AddView(dsp_view);
- }
-
- mov_news->Hide();
- }
+ lst_news = (ListBox*) FindControl(401);
+ txt_news = (RichTextBox*) FindControl(402);
+ img_news = (ImageBox*) FindControl(403);
+ mov_news = FindControl(404);
+ btn_play = (Button*) FindControl(405);
+
+ RegisterCmdControls(this);
+
+ if (btn_save)
+ REGISTER_CLIENT(EID_CLICK, btn_save, CmdIntelDlg, OnSave);
+
+ if (btn_exit)
+ REGISTER_CLIENT(EID_CLICK, btn_exit, CmdIntelDlg, OnExit);
+
+ if (btn_play)
+ REGISTER_CLIENT(EID_CLICK, btn_play, CmdIntelDlg, OnPlay);
+
+ for (int i = 0; i < 5; i++) {
+ if (btn_mode[i])
+ REGISTER_CLIENT(EID_CLICK, btn_mode[i], CmdIntelDlg, OnMode);
+ }
+
+ if (lst_news) {
+ REGISTER_CLIENT(EID_SELECT, lst_news, CmdIntelDlg, OnNews);
+ }
+
+ if (img_news) {
+ img_news->GetPicture(bmp_default);
+ }
+
+ if (mov_news) {
+ CameraDirector* cam_dir = CameraDirector::GetInstance();
+ cam_view = new(__FILE__,__LINE__) CameraView(mov_news, cam_dir->GetCamera(), 0);
+ if (cam_view)
+ mov_news->AddView(cam_view);
+
+ dsp_view = DisplayView::GetInstance();
+ if (dsp_view) {
+ dsp_view->SetWindow(mov_news);
+ mov_news->AddView(dsp_view);
+ }
+
+ mov_news->Hide();
+ }
}
// +--------------------------------------------------------------------+
@@ -123,16 +123,16 @@ CmdIntelDlg::RegisterControls()
void
CmdIntelDlg::Show()
{
- mode = MODE_INTEL;
+ mode = MODE_INTEL;
- FormWindow::Show();
- ShowCmdDlg();
+ FormWindow::Show();
+ ShowCmdDlg();
- if (btn_play)
- btn_play->Hide();
+ if (btn_play)
+ btn_play->Hide();
- if (mov_news)
- mov_news->Hide();
+ if (mov_news)
+ mov_news->Hide();
}
// +--------------------------------------------------------------------+
@@ -140,122 +140,122 @@ CmdIntelDlg::Show()
void
CmdIntelDlg::ExecFrame()
{
- CmdDlg::ExecFrame();
+ CmdDlg::ExecFrame();
- if (campaign != Campaign::GetCampaign() || campaign->GetUpdateTime() != update_time) {
- campaign = Campaign::GetCampaign();
- update_time = campaign->GetUpdateTime();
+ if (campaign != Campaign::GetCampaign() || campaign->GetUpdateTime() != update_time) {
+ campaign = Campaign::GetCampaign();
+ update_time = campaign->GetUpdateTime();
- lst_news->ClearItems();
- txt_news->SetText("");
+ lst_news->ClearItems();
+ txt_news->SetText("");
- if (img_news)
- img_news->SetPicture(bmp_default);
- }
+ if (img_news)
+ img_news->SetPicture(bmp_default);
+ }
- if (campaign) {
- List<CombatEvent>& events = campaign->GetEvents();
- bool auto_scroll = false;
-
- if (events.size() > lst_news->NumItems()) {
- while (events.size() > lst_news->NumItems()) {
- CombatEvent* info = events[lst_news->NumItems()];
-
- const char* unread = info->Visited() ? " " : "*";
- int i = lst_news->AddItemWithData(unread, (DWORD) info) - 1;
-
- char dateline[32];
- FormatDayTime(dateline, info->Time());
- lst_news->SetItemText(i, 1, dateline);
- lst_news->SetItemText(i, 2, info->Title());
- lst_news->SetItemText(i, 3, info->Region());
- lst_news->SetItemText(i, 4, Game::GetText(info->SourceName()));
-
- if (!info->Visited())
- auto_scroll = true;
- }
-
- if (lst_news->GetSortColumn() > 0)
- lst_news->SortItems();
- }
-
- else if (events.size() < lst_news->NumItems()) {
- lst_news->ClearItems();
-
- for (int i = 0; i < events.size(); i++) {
- CombatEvent* info = events[i];
-
- const char* unread = info->Visited() ? " " : "*";
- int j = lst_news->AddItemWithData(unread, (DWORD) info) - 1;
-
- char dateline[32];
- FormatDayTime(dateline, info->Time());
- lst_news->SetItemText(j, 1, dateline);
- lst_news->SetItemText(j, 2, info->Title());
- lst_news->SetItemText(j, 3, info->Region());
- lst_news->SetItemText(j, 4, Game::GetText(info->SourceName()));
-
- if (!info->Visited())
- auto_scroll = true;
- }
-
- if (lst_news->GetSortColumn() > 0)
- lst_news->SortItems();
-
- txt_news->SetText("");
-
- if (img_news)
- img_news->SetPicture(bmp_default);
- }
-
- if (auto_scroll) {
- int first_unread = -1;
-
- for (int i = 0; i < lst_news->NumItems(); i++) {
- if (lst_news->GetItemText(i, 0) == "*") {
- first_unread = i;
- break;
- }
- }
-
- if (first_unread >= 0)
- lst_news->ScrollTo(first_unread);
- }
- }
-
- Starshatter* stars = Starshatter::GetInstance();
-
- if (start_scene > 0) {
- ShowMovie();
-
- start_scene--;
-
- if (start_scene == 0) {
- if (stars && campaign) {
- stars->ExecCutscene(event_scene, campaign->Path());
-
- if (stars->InCutscene()) {
- Sim* sim = Sim::GetSim();
-
- if (sim) {
- cam_view->UseCamera(CameraDirector::GetInstance()->GetCamera());
- cam_view->UseScene(sim->GetScene());
- }
- }
- }
-
- event_scene = "";
- }
- }
- else {
- if (dsp_view)
- dsp_view->ExecFrame();
-
- if (stars->InCutscene())
- ShowMovie();
- else
- HideMovie();
- }
+ if (campaign) {
+ List<CombatEvent>& events = campaign->GetEvents();
+ bool auto_scroll = false;
+
+ if (events.size() > lst_news->NumItems()) {
+ while (events.size() > lst_news->NumItems()) {
+ CombatEvent* info = events[lst_news->NumItems()];
+
+ const char* unread = info->Visited() ? " " : "*";
+ int i = lst_news->AddItemWithData(unread, (DWORD) info) - 1;
+
+ char dateline[32];
+ FormatDayTime(dateline, info->Time());
+ lst_news->SetItemText(i, 1, dateline);
+ lst_news->SetItemText(i, 2, info->Title());
+ lst_news->SetItemText(i, 3, info->Region());
+ lst_news->SetItemText(i, 4, Game::GetText(info->SourceName()));
+
+ if (!info->Visited())
+ auto_scroll = true;
+ }
+
+ if (lst_news->GetSortColumn() > 0)
+ lst_news->SortItems();
+ }
+
+ else if (events.size() < lst_news->NumItems()) {
+ lst_news->ClearItems();
+
+ for (int i = 0; i < events.size(); i++) {
+ CombatEvent* info = events[i];
+
+ const char* unread = info->Visited() ? " " : "*";
+ int j = lst_news->AddItemWithData(unread, (DWORD) info) - 1;
+
+ char dateline[32];
+ FormatDayTime(dateline, info->Time());
+ lst_news->SetItemText(j, 1, dateline);
+ lst_news->SetItemText(j, 2, info->Title());
+ lst_news->SetItemText(j, 3, info->Region());
+ lst_news->SetItemText(j, 4, Game::GetText(info->SourceName()));
+
+ if (!info->Visited())
+ auto_scroll = true;
+ }
+
+ if (lst_news->GetSortColumn() > 0)
+ lst_news->SortItems();
+
+ txt_news->SetText("");
+
+ if (img_news)
+ img_news->SetPicture(bmp_default);
+ }
+
+ if (auto_scroll) {
+ int first_unread = -1;
+
+ for (int i = 0; i < lst_news->NumItems(); i++) {
+ if (lst_news->GetItemText(i, 0) == "*") {
+ first_unread = i;
+ break;
+ }
+ }
+
+ if (first_unread >= 0)
+ lst_news->ScrollTo(first_unread);
+ }
+ }
+
+ Starshatter* stars = Starshatter::GetInstance();
+
+ if (start_scene > 0) {
+ ShowMovie();
+
+ start_scene--;
+
+ if (start_scene == 0) {
+ if (stars && campaign) {
+ stars->ExecCutscene(event_scene, campaign->Path());
+
+ if (stars->InCutscene()) {
+ Sim* sim = Sim::GetSim();
+
+ if (sim) {
+ cam_view->UseCamera(CameraDirector::GetInstance()->GetCamera());
+ cam_view->UseScene(sim->GetScene());
+ }
+ }
+ }
+
+ event_scene = "";
+ }
+ }
+ else {
+ if (dsp_view)
+ dsp_view->ExecFrame();
+
+ if (stars->InCutscene())
+ ShowMovie();
+ else
+ HideMovie();
+ }
}
// +--------------------------------------------------------------------+
@@ -263,19 +263,19 @@ CmdIntelDlg::ExecFrame()
void
CmdIntelDlg::OnSave(AWEvent* event)
{
- CmdDlg::OnSave(event);
+ CmdDlg::OnSave(event);
}
void
CmdIntelDlg::OnExit(AWEvent* event)
{
- CmdDlg::OnExit(event);
+ CmdDlg::OnExit(event);
}
void
CmdIntelDlg::OnMode(AWEvent* event)
{
- CmdDlg::OnMode(event);
+ CmdDlg::OnMode(event);
}
@@ -284,52 +284,52 @@ CmdIntelDlg::OnMode(AWEvent* event)
void
CmdIntelDlg::OnNews(AWEvent* e)
{
- CombatEvent* event = 0;
- int index = lst_news->GetSelection();
-
- if (index >= 0) {
- event = (CombatEvent*) lst_news->GetItemData(index, 0);
- }
-
- if (event) {
- Text info("<font Limerick12><color ffff80>");
- info += event->Title();
- info += "<font Verdana><color ffffff>\n\n";
- info += event->Information();
-
- txt_news->SetText(info);
- txt_news->EnsureVisible(0);
-
- lst_news->SetItemText(index, 0, " ");
-
- if (img_news) {
- if (event->Image().Width() >= 64)
- img_news->SetPicture(event->Image());
- else
- img_news->SetPicture(bmp_default);
- }
-
- if (btn_play) {
- if (event->SceneFile() && *event->SceneFile())
- btn_play->Show();
- else
- btn_play->Hide();
- }
-
- if (!event->Visited() && btn_play->IsEnabled())
- OnPlay(0);
-
- event->SetVisited(true);
- }
- else {
- txt_news->SetText("");
-
- if (img_news)
- img_news->SetPicture(bmp_default);
-
- if (btn_play)
- btn_play->Hide();
- }
+ CombatEvent* event = 0;
+ int index = lst_news->GetSelection();
+
+ if (index >= 0) {
+ event = (CombatEvent*) lst_news->GetItemData(index, 0);
+ }
+
+ if (event) {
+ Text info("<font Limerick12><color ffff80>");
+ info += event->Title();
+ info += "<font Verdana><color ffffff>\n\n";
+ info += event->Information();
+
+ txt_news->SetText(info);
+ txt_news->EnsureVisible(0);
+
+ lst_news->SetItemText(index, 0, " ");
+
+ if (img_news) {
+ if (event->Image().Width() >= 64)
+ img_news->SetPicture(event->Image());
+ else
+ img_news->SetPicture(bmp_default);
+ }
+
+ if (btn_play) {
+ if (event->SceneFile() && *event->SceneFile())
+ btn_play->Show();
+ else
+ btn_play->Hide();
+ }
+
+ if (!event->Visited() && btn_play->IsEnabled())
+ OnPlay(0);
+
+ event->SetVisited(true);
+ }
+ else {
+ txt_news->SetText("");
+
+ if (img_news)
+ img_news->SetPicture(bmp_default);
+
+ if (btn_play)
+ btn_play->Hide();
+ }
}
// +--------------------------------------------------------------------+
@@ -337,57 +337,57 @@ CmdIntelDlg::OnNews(AWEvent* e)
void
CmdIntelDlg::OnPlay(AWEvent* e)
{
- CombatEvent* event = 0;
- int index = lst_news->GetSelection();
-
- if (index >= 0) {
- event = (CombatEvent*) lst_news->GetItemData(index, 0);
- }
-
- if (mov_news && cam_view && event && event->SceneFile() && *event->SceneFile()) {
- event_scene = event->SceneFile();
- start_scene = 2;
- ShowMovie();
- }
+ CombatEvent* event = 0;
+ int index = lst_news->GetSelection();
+
+ if (index >= 0) {
+ event = (CombatEvent*) lst_news->GetItemData(index, 0);
+ }
+
+ if (mov_news && cam_view && event && event->SceneFile() && *event->SceneFile()) {
+ event_scene = event->SceneFile();
+ start_scene = 2;
+ ShowMovie();
+ }
}
void
CmdIntelDlg::ShowMovie()
{
- if (mov_news) {
- mov_news->Show();
- dsp_view->SetWindow(mov_news);
-
- if (img_news) img_news->Hide();
- if (txt_news) txt_news->Hide();
- if (btn_play) btn_play->Hide();
- }
+ if (mov_news) {
+ mov_news->Show();
+ dsp_view->SetWindow(mov_news);
+
+ if (img_news) img_news->Hide();
+ if (txt_news) txt_news->Hide();
+ if (btn_play) btn_play->Hide();
+ }
}
void
CmdIntelDlg::HideMovie()
{
- CombatEvent* event = 0;
- int index = lst_news->GetSelection();
- bool play = false;
-
- if (index >= 0) {
- event = (CombatEvent*) lst_news->GetItemData(index, 0);
-
- if (event && event->SceneFile() && *event->SceneFile())
- play = true;
- }
-
- if (mov_news) {
- mov_news->Hide();
-
- if (img_news) img_news->Show();
- if (txt_news) txt_news->Show();
- if (btn_play) {
- if (play)
- btn_play->Show();
- else
- btn_play->Hide();
- }
- }
+ CombatEvent* event = 0;
+ int index = lst_news->GetSelection();
+ bool play = false;
+
+ if (index >= 0) {
+ event = (CombatEvent*) lst_news->GetItemData(index, 0);
+
+ if (event && event->SceneFile() && *event->SceneFile())
+ play = true;
+ }
+
+ if (mov_news) {
+ mov_news->Hide();
+
+ if (img_news) img_news->Show();
+ if (txt_news) txt_news->Show();
+ if (btn_play) {
+ if (play)
+ btn_play->Show();
+ else
+ btn_play->Hide();
+ }
+ }
}