Removed GUI1 Storyscreen
This commit is contained in:
parent
aa351a05c1
commit
337ef03120
5 changed files with 4 additions and 123 deletions
|
@ -1046,8 +1046,6 @@
|
|||
<Unit filename="../../src/storyscreen/interface.hpp" />
|
||||
<Unit filename="../../src/storyscreen/part.cpp" />
|
||||
<Unit filename="../../src/storyscreen/part.hpp" />
|
||||
<Unit filename="../../src/storyscreen/render.cpp" />
|
||||
<Unit filename="../../src/storyscreen/render.hpp" />
|
||||
<Unit filename="../../src/synced_checkup.cpp" />
|
||||
<Unit filename="../../src/synced_checkup.hpp" />
|
||||
<Unit filename="../../src/synced_commands.cpp" />
|
||||
|
|
|
@ -361,7 +361,6 @@ statistics.cpp
|
|||
storyscreen/controller.cpp
|
||||
storyscreen/interface.cpp
|
||||
storyscreen/part.cpp
|
||||
storyscreen/render.cpp
|
||||
synced_checkup.cpp
|
||||
synced_commands.cpp
|
||||
synced_context.cpp
|
||||
|
|
|
@ -20,7 +20,6 @@
|
|||
|
||||
#include "storyscreen/controller.hpp"
|
||||
#include "storyscreen/part.hpp"
|
||||
#include "storyscreen/render.hpp"
|
||||
|
||||
#include <cassert>
|
||||
#include "variable.hpp"
|
||||
|
@ -40,10 +39,8 @@ static lg::log_domain log_engine("engine");
|
|||
|
||||
namespace storyscreen {
|
||||
|
||||
controller::controller(CVideo& video, const vconfig& data, const std::string& scenario_name,
|
||||
int segment_index)
|
||||
: video_(video)
|
||||
, scenario_name_(scenario_name)
|
||||
controller::controller(const vconfig& data, const std::string& scenario_name, int segment_index)
|
||||
: scenario_name_(scenario_name)
|
||||
, segment_index_(segment_index)
|
||||
, parts_()
|
||||
{
|
||||
|
@ -138,65 +135,4 @@ void controller::resolve_wml(const vconfig& cfg)
|
|||
}
|
||||
}
|
||||
|
||||
STORY_RESULT controller::show(START_POSITION startpos)
|
||||
{
|
||||
|
||||
if(parts_.empty()) {
|
||||
LOG_NG << "no storyscreen parts to show\n";
|
||||
return NEXT;
|
||||
}
|
||||
|
||||
gui::button back_button (video_, "", gui::button::TYPE_PRESS, "button_normal/button_small_H22"
|
||||
, gui::button::DEFAULT_SPACE, true, "icons/arrows/long_arrow_ornate_left");
|
||||
gui::button next_button (video_, "", gui::button::TYPE_PRESS, "button_normal/button_small_H22"
|
||||
, gui::button::DEFAULT_SPACE, true, "icons/arrows/long_arrow_ornate_right");
|
||||
gui::button play_button (video_, _("Skip"));
|
||||
|
||||
// Build renderer cache unless built for a low-memory environment;
|
||||
// caching the scaled backgrounds can take over a decent amount of memory.
|
||||
std::vector< render_pointer_type > uis_;
|
||||
for(part_pointer_type p : parts_) {
|
||||
assert(p != nullptr && "Ouch: hit nullptr storyscreen part in collection");
|
||||
render_pointer_type const rpt(new part_ui(*p, video_, next_button, back_button, play_button));
|
||||
uis_.push_back(rpt);
|
||||
}
|
||||
|
||||
size_t k = 0;
|
||||
switch(startpos) {
|
||||
case START_BEGINNING:
|
||||
break;
|
||||
case START_END:
|
||||
k = parts_.size() -1;
|
||||
break;
|
||||
default:
|
||||
assert(false);
|
||||
break;
|
||||
}
|
||||
|
||||
while(k < parts_.size()) {
|
||||
part_ui &render_interface = *uis_[k];
|
||||
|
||||
LOG_NG << "displaying storyscreen part " << k+1 << " of " << parts_.size() << '\n';
|
||||
|
||||
back_button.enable(segment_index_ != 0 || k != 0);
|
||||
|
||||
switch(render_interface.show()) {
|
||||
case part_ui::NEXT:
|
||||
++k;
|
||||
break;
|
||||
case part_ui::BACK:
|
||||
if(k > 0) {
|
||||
--k;
|
||||
}
|
||||
else if(segment_index_ > 0) {
|
||||
return BACK;
|
||||
}
|
||||
break;
|
||||
case part_ui::QUIT:
|
||||
return QUIT;
|
||||
}
|
||||
}
|
||||
return NEXT;
|
||||
}
|
||||
|
||||
} // end namespace storyscreen
|
||||
|
|
|
@ -28,29 +28,15 @@ class vconfig;
|
|||
|
||||
namespace storyscreen {
|
||||
|
||||
enum STORY_RESULT {
|
||||
NEXT,
|
||||
BACK,
|
||||
QUIT
|
||||
};
|
||||
|
||||
class part;
|
||||
class part_ui;
|
||||
class floating_image;
|
||||
|
||||
class controller
|
||||
{
|
||||
public:
|
||||
typedef std::shared_ptr< part > part_pointer_type;
|
||||
typedef std::shared_ptr< part_ui > render_pointer_type;
|
||||
|
||||
controller(CVideo& video, const vconfig& data, const std::string& scenario_name,
|
||||
int segment_index);
|
||||
|
||||
/**
|
||||
* Display all story screen parts in a first..last sequence.
|
||||
*/
|
||||
STORY_RESULT show(START_POSITION startpos=START_BEGINNING);
|
||||
controller(const vconfig& data, const std::string& scenario_name, int segment_index);
|
||||
|
||||
part_pointer_type get_part(int index) const
|
||||
{
|
||||
|
@ -66,8 +52,6 @@ private:
|
|||
// Executes WML flow instructions and inserts parts.
|
||||
void resolve_wml(const vconfig& cfg);
|
||||
|
||||
CVideo& video_;
|
||||
|
||||
std::string scenario_name_;
|
||||
int segment_index_;
|
||||
|
||||
|
|
|
@ -48,43 +48,7 @@ void show_story(CVideo& video, const std::string &scenario_name,
|
|||
return;
|
||||
}
|
||||
|
||||
storyscreen::controller controller(video, vconfig(cfg, true), scenario_name, 0);
|
||||
storyscreen::controller controller(vconfig(cfg, true), scenario_name, 0);
|
||||
|
||||
gui2::dialogs::story_viewer::display(controller, video);
|
||||
|
||||
#if 0
|
||||
events::event_context story_context;
|
||||
|
||||
int segment_count = 0;
|
||||
config::const_child_iterator itor = story.begin();
|
||||
storyscreen::START_POSITION startpos = storyscreen::START_BEGINNING;
|
||||
while (itor != story.end())
|
||||
{
|
||||
storyscreen::controller ctl(video, vconfig(*itor, true),
|
||||
scenario_name, segment_count);
|
||||
storyscreen::STORY_RESULT result = ctl.show(startpos);
|
||||
|
||||
switch(result) {
|
||||
case storyscreen::NEXT:
|
||||
if(itor != story.end()) {
|
||||
++itor;
|
||||
++segment_count;
|
||||
startpos = storyscreen::START_BEGINNING;
|
||||
}
|
||||
break;
|
||||
case storyscreen::BACK:
|
||||
if(itor != story.begin()) {
|
||||
--itor;
|
||||
--segment_count;
|
||||
startpos = storyscreen::START_END;
|
||||
}
|
||||
break;
|
||||
case storyscreen::QUIT:
|
||||
video2::trigger_full_redraw();
|
||||
return;
|
||||
}
|
||||
}
|
||||
video2::trigger_full_redraw();
|
||||
return;
|
||||
#endif
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue