Skip to content

Commit

Permalink
Update to v094r40 release.
Browse files Browse the repository at this point in the history
byuu says:

Changelog:
- updated to newest hiro API
- SFC performance profile builds once again
- hiro: Qt port completed

Errata 1: the hiro/Qt target won't run tomoko just yet. Starts by
crashing inside InputSettings because hiro/Qt isn't forcefully selecting
the first item added to a ComboButton just yet. Even with a monkey patch
to get around that, the UI is incredibly unstable. Lots of geometry
calculation bugs, and a crash when you try and access certain folders in
the browser dialog. Lots of work left to be done there, sadly.

Errata 2: the hiro/Windows port has black backgrounds on all ListView
items. It's because I need to test for unassigned colors and grab the
default Windows brush colors in those cases.

Note: alternating row colors on multi-column ListView widgets is gone
now. Not a bug. May add it back later, but I'm not sure. It doesn't
interact nicely with per-cell background colors.

Things left to do:

First, I have to fix the Windows and Qt target bugs.

Next, I need to go through and revise the hiro API even more (nothing
too major.)

Next, I need to update icarus to use the new hiro API, and add support
for the SFC games database.

Next, I have to rewrite my TSV->BML cheat code tool.

Next, I need to post a final WIP of higan+icarus publicly and wait a few
days.

Next, I need to fix any bugs reported from the final WIP that I can.

Finally, I should be able to release v095.
  • Loading branch information
Screwtapello committed Aug 18, 2015
1 parent 0271d6a commit 4344b91
Show file tree
Hide file tree
Showing 200 changed files with 7,023 additions and 5,436 deletions.
2 changes: 1 addition & 1 deletion emulator/emulator.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ using namespace nall;

namespace Emulator {
static const string Name = "higan";
static const string Version = "094.39";
static const string Version = "094.40";
static const string Author = "byuu";
static const string License = "GPLv3";
static const string Website = "http://byuu.org/";
Expand Down
16 changes: 12 additions & 4 deletions hiro/components.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
#define Hiro_Application

#define Hiro_Color
#define Hiro_Alignment
#define Hiro_Position
#define Hiro_Size
#define Hiro_Geometry
Expand Down Expand Up @@ -50,22 +51,22 @@
#define Hiro_CheckButton
#define Hiro_CheckLabel
#define Hiro_ComboButton
//#define Hiro_Console
#define Hiro_Console
#define Hiro_Frame
#define Hiro_HexEdit
#define Hiro_HorizontalScroller
#define Hiro_HorizontalSlider
//#define Hiro_IconView
#define Hiro_IconView
#define Hiro_Label
#define Hiro_LineEdit
#define Hiro_ListView
#define Hiro_ProgressBar
#define Hiro_RadioButton
#define Hiro_RadioLabel
//#define Hiro_SourceView
#define Hiro_SourceView
#define Hiro_TabFrame
#define Hiro_TextEdit
//#define Hiro_TreeView
#define Hiro_TreeView
#define Hiro_VerticalScroller
#define Hiro_VerticalSlider
#define Hiro_Viewport
Expand All @@ -81,3 +82,10 @@
#if defined(Hiro_Button) && defined(Hiro_ComboButton) && defined(Hiro_LineEdit) && defined(Hiro_ListView) && defined(Hiro_MessageDialog)
#define Hiro_BrowserDialog
#endif

#if defined(HIRO_WINDOWS) || defined(HIRO_QT)
#undef Hiro_Console
#undef Hiro_IconView
#undef Hiro_SourceView
#undef Hiro_TreeView
#endif
2 changes: 1 addition & 1 deletion hiro/core/action/menu-radio-item.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ auto mMenuRadioItem::setChecked() -> type& {
auto mMenuRadioItem::setGroup(sGroup group) -> type& {
state.group = group;
signal(setGroup, group);
if(group && group->objects() == 1) setChecked();
if(group && group->objectCount() == 1) setChecked();
return *this;
}

Expand Down
14 changes: 10 additions & 4 deletions hiro/core/action/menu.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,17 +12,23 @@ auto mMenu::destruct() -> void {
//

auto mMenu::action(unsigned position) const -> Action {
if(position < actions()) return state.actions[position];
if(position < actionCount()) return state.actions[position];
return {};
}

auto mMenu::actions() const -> unsigned {
auto mMenu::actionCount() const -> unsigned {
return state.actions.size();
}

auto mMenu::actions() const -> vector<Action> {
vector<Action> actions;
for(auto& action : state.actions) actions.append(action);
return actions;
}

auto mMenu::append(sAction action) -> type& {
state.actions.append(action);
action->setParent(this, actions() - 1);
action->setParent(this, actionCount() - 1);
signal(append, *action);
return *this;
}
Expand All @@ -34,7 +40,7 @@ auto mMenu::icon() const -> image {
auto mMenu::remove(sAction action) -> type& {
signal(remove, *action);
state.actions.remove(action->offset());
for(auto n : range(action->offset(), actions())) {
for(auto n : range(action->offset(), actionCount())) {
state.actions[n]->adjustOffset(-1);
}
action->setParent();
Expand Down
40 changes: 40 additions & 0 deletions hiro/core/alignment.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
#if defined(Hiro_Alignment)

Alignment::Alignment() {
setAlignment(-1.0, -1.0);
}

Alignment::Alignment(double horizontal, double vertical) {
setAlignment(horizontal, vertical);
}

Alignment::operator bool() const {
return state.horizontal >= 0.0 && state.horizontal <= 1.0
&& state.vertical >= 0.0 && state.vertical <= 1.0;
}

auto Alignment::horizontal() const -> double {
return state.horizontal;
}

auto Alignment::setAlignment(double horizontal, double vertical) -> type& {
state.horizontal = horizontal;
state.vertical = vertical;
return *this;
}

auto Alignment::setHorizontal(double horizontal) -> type& {
state.horizontal = horizontal;
return *this;
}

auto Alignment::setVertical(double vertical) -> type& {
state.vertical = vertical;
return *this;
}

auto Alignment::vertical() const -> double {
return state.vertical;
}

#endif
2 changes: 2 additions & 0 deletions hiro/core/core.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ using namespace nall;
namespace hiro {
#include "application.cpp"
#include "color.cpp"
#include "alignment.cpp"
#include "position.cpp"
#include "size.cpp"
#include "geometry.cpp"
Expand Down Expand Up @@ -81,6 +82,7 @@ namespace hiro {
#include "widget/label.cpp"
#include "widget/line-edit.cpp"
#include "widget/list-view.cpp"
#include "widget/list-view-header.cpp"
#include "widget/list-view-column.cpp"
#include "widget/list-view-item.cpp"
#include "widget/list-view-cell.cpp"
Expand Down
Loading

0 comments on commit 4344b91

Please sign in to comment.