New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bunch of UI features + some fixes #17

Merged
merged 4 commits into from Jun 1, 2014

Conversation

Projects
None yet
2 participants
@rplociennik
Contributor

rplociennik commented May 21, 2014

The following commits consist mainly of UI enhancements with some fixes buried in them. While these few commits feel rather bulky, each of them acts as a tightly connected set of changes with (hopefully) detailed enough description.

The ares touched upon are:

  • Cleanup/additional stats for MainWindow's status bar
  • Additional stats/visual cues in 'Star View'
  • Small additions to 'Detailed Host View'

rplociennik added some commits May 20, 2014

Check for 'NoRemote' property in HostInfo
* HostInfo
  - HostInfo::noRemote() added.
Collect and display additional stats on MainWindow's status bar
* MainWindow
  - Optional status bar labels now only become visible when they contain text.
  - Network label has been merged with scheduler label due to inconsistency
    in setting/getting the network name.
  - Scheduler label now displays '<schedName>[ @ <netName>]' when connected,
    instead of a generic 'Scheduler is online' message.
  - Now manages a list of active jobs in order to provide the following stats
    on the status bar:
    - Number of currently running jobs/max jobs available in the network per
      platform.
    - Colored list of nodes currently running their jobs per platform.

* HostInfoManager
  - Now is a subclass of QObject.
  - Exposes a hostMapChanged() signal.

* Monitor
  - Now exposes a jobUpdated() signal.

* Job
  - Now exposes isDone() and isActive() properties.

* Added utils.h/utils.cc (which contain mostly QColor helpers for now).
  - StatusView::textColor() now utilizes utils::getBetterContrastColor().
Display more information in 'Star View'
* StarView
  - Node's text is now displayed using QGraphicsTextItem to allow rich text
    formatting and as a result:
    - Node's text now displays the number of currently running jobs/max jobs in
      the second line.
    - Initial scheduler's node name is now set to "<b>?</b>" while connecting.
  - Nodes and halos are now drawn with a darker border whose color is controlled
    by HostItem::PenDarkerFactor constant. This causes multiple jobs/halos to
    appear as clearly visible stripes around nodes.
  - Halos' zValues are now updated during HostItem::updateHalos() for proper Z
    ordering of subsequent halos.
  - 'no remote' nodes are displayed differently than the other nodes.
  - Node's ellipse is now properly Sqrt(2) times larger than the TextItem's
    bounding rectangle in order to contain it.
  - HostItem::baseXMargin() and HostItem::baseYMargin() now return the size
    difference between the TextItem's bounding rectangle and the final ellipse's
    bounding rectangle.
  - HostItem::HaloMargin is now a constant.
  - Removed the HostItem( const QString& text, [...] ) constructor in favor of
    setFixedText() method designed for the scheduler node.
  - The scheduler HostItem is no longer deleted and recreated every time
    the connection is lost (due to availability of setFixedText()).
Make 'Detailed Host View' properly handle offline and indicate 'no re…
…mote' nodes

* HostListModel
  - Offline nodes no longer creep back onto the list.
  - Now has a 'No remote?' column.
  - Hosts with 'no remote' are now displayed grayed out (but not disabled).

llunak added a commit that referenced this pull request Jun 1, 2014

Merge pull request #17 from rplociennik/features
Bunch of UI features + some fixes

@llunak llunak merged commit 1e8131b into icecc:master Jun 1, 2014

@llunak

This comment has been minimized.

Show comment
Hide comment
@llunak

llunak Jun 1, 2014

Contributor

Thanks for the patches. Next time please try not to have larger commits that do several things but instead split them into one commit per logical change.

Contributor

llunak commented Jun 1, 2014

Thanks for the patches. Next time please try not to have larger commits that do several things but instead split them into one commit per logical change.

@rplociennik

This comment has been minimized.

Show comment
Hide comment
@rplociennik

rplociennik Jun 1, 2014

Contributor

Thanks for accepting the patches.
Yes, I think I could have done a better job of splitting those after all. Will keep that in mind.

Contributor

rplociennik commented Jun 1, 2014

Thanks for accepting the patches.
Yes, I think I could have done a better job of splitting those after all. Will keep that in mind.

@rplociennik rplociennik deleted the rplociennik:features branch Jun 1, 2014

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment