Git Product home page Git Product logo

openroll's Introduction

Openroll

License: LGPL v3 License: GPL v3

Description

Openroll is a free and open-source scoreboard and match timer for IBJJF-rules Brazilian Jiu-Jitsu. It is not affiliated with the IBJJF in any way.

Demo of Openroll application.

Features

  • Dual window system keeps buttons and controls on one screen for scorekeeper and puts critical match details on the other, to be displayed on external monitor.
  • Offline (some gyms/venues do not or cannot use wifi/internet).
  • Choose flag per competitor or load your own image, e.g., gym logo.
  • Follows IBJJF divisions and timings, simply select from division dropdown and all rules are applied.
  • Load custom gym/tourney logo in bottom-left corner to represent branding.
  • Choose from several buzzer sounds or mute buzzer entirely.
  • Dynamic name entry fields update on-the-fly.
  • Dynamic scoreboard display scales to any size.
  • Open-source licensing allows you to make modifications and builds as you see fit, no vendor lock-in

Licenses

This file is part of Openroll.

Copyright (C) 2019 C.D.MacEachern [email protected]

See LICENSES.txt file for attributions and licensing details. LGPLv3 is provided as 'lgpl.txt', and GPLv3 is provided as 'gpl.txt' with the installation.

openroll's People

Stargazers

 avatar  avatar  avatar  avatar  avatar

openroll's Issues

Rewrite .ui forms in QML for iOS/mobile possibilities

  1. Learn QML. Pay special attention to how to share data between C++ and QML (using Qt meta object system and Qt's model view framework, mostly). Don't write any permanent changes to the current app yet (either do learning/PoC programs from scratch, or make a throw-away branch of current code).

  2. Modify current C++-only code to decouple GUI and business logic more (if needed, but I assume it is), using what you learned above about C++-QML interoperability. Concentrate on making the business logic separate, with minimal GUI code changes (because those are going be thrown away eventually).

  3. Convert some parts of the current GUI to QML in QQuickView widgets. Keep the overall widget based GUI structure for now, but aim for these pieces of QML UI to be as final as you can easily make them. Go as far as you practically can with this conversion, keeping the program fully functional. Also, this step is a continuation of step 2 in separating the business logic from UI, but now you got actual QML to work against, so you will discover new things you must change.

  4. If it is feasible to make it all be QML, then do a final push and get rid of the widgets entirely. If there are some parts of UI which just won't be feasible to re-write in QML, then just complete step 3 by converting everything you want to convert.

Embed icon into executable

The old .pro file way was working, but haven't figure out how to replicate that with CMake yet:

win32 {
  CONFIG += windows
  RC_ICONS = openroll.ico
  QMAKE_TARGET_COMPANY = "Barker Software"
  QMAKE_TARGET_DESCRIPTION = "Brazilian jiu-jitsu match timer and scoreboard using IBJJF ruleset."
  QMAKE_TARGET_COPYRIGHT = 2019
  QMAKE_TARGET_PRODUCT = "Openroll"
}

Maybe use LCD Display class instead?

Using lcd display we can more easily update the time without doing the match using QTime class which handles most of the details for us, and reduces a lot of code.

Update README

Remove download section, will be taken care of with github pages when setup. For now Release section on sidebar right
serves as download area.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.