Git Product home page Git Product logo

multitablepro's People

Contributors

demathias avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

multitablepro's Issues

InitialTablePlacement() alternative

Currently it moves everything to inactive when first starting. This is not optimal if the WindowHandler starts during a session.
Have user choose what to do? (leave everything until we get more info or move to inactive)

Hopefully there's a better way

PSLogHandler: Do something when user uninstalls PS

Log files would be removed. Currently the program would just die with no info.
Leave it for when we can manually start/stop everything

Also remove the fatal crash when no logs are found by the same mechanism.

Optional flicker reduction

Create a config setting for the 200ms pause on table move.
The flicker seems to be gone by simply resizing offscreen with the new movement system.

UI: Warn user when opening config during session

allow config in case of singletabling or user really wants to change their config regardless.
But add a messagebox to confirm config should run if slots contain tables.

If slots contain virtual tables, do not allowthem to click the button as config is already running.

Table.HandPreferredSlotId

tie a specific hand to a specific slot when possible so user can keep better track of what's what.

Logger multithread support

Multiple threads can access the Log function at the same time.
Use a static constructor to assign a new thread decicated to writing to logger file & use a queue to submit new messages.

Licensing system & API connection

These should all send POST requests to their corresponding API url:
Response is in json array. Just call it, call json deserialize and roll use the output.
All responses look like this:
array(
'result' => array(),
'errors' => array(),
);

check if response contains errors before anything else (errors exists at all rather)
errors: array("error strings", "other error")
call Logger.Log() to display errors to user, or show em in the window

All relevant return data is contained in the "result" variable

  • Trial
  • Check license

/api/validate_license
Post params:
macaddr - mac address string
license_key - (should be 'TRIAL' for trial check, all caps)
request_product_group - should be 1 for MTP

Return
is_active - int (0 or 1) (basically true or false but DB outputs tinyint)
expires_at - time string (DateTime.Parse())
^ Only these return on trial check

for non trial it also adds:
'product_name' => $r->product_name,
'product_description' => $r->product_description,
'first_name' => $r->first_name,
'last_name' => $r->last_name,
'email' => $r->email,
'restrictions' => $restrictions, // described below
'license_status_message' => 'Active license',

restrictions - array ( - not all keys may exist, so check if they do first - they all return as string (probably)
UNLIMITED_COMPUTERS - bool
MAX_STAKE - int of max buyin (Table.BigBlind x 100)
BUILD_TYPE - enum("RELEASE", "INTERNAL", "BETA") (so string basically) - indicates optional access to non-release builds
)

  • Check new version

Auto generate profile (along side manual options)

Button that can be pressed to auto generate a profile best fit for the user's setup.

Request which screens to use
Request whic screen should contain active slots
Request amount of tables
Ask if there should be an aside table (not possible on small screens

Multiscreen:

  • Optionally use second screen for inactive slots
  • Main screen should contain X aside tables

Medium screen:
1 active
1 (optional aside)
2-4 inactives (look into that)

Small screen:

  • 1 active
  • 1 inactive

UI: MainWindow menu: Documentation link & Kill info > about

Top menu
File

  • Import Config
  • Export Config
  • Export all profiles (to zip) (not doing this, pointless)
  • Restart with Logging
    License:
  • License info
  • Unregister this computer (no, why?)
    Help
  • Check for new version
  • Instructions
  • Report Bug (not doing this)

Statusbar
[ ] Running/notrunning
[ ] Version (New Version Available) (link if there is

PSLogHandler Loading timestamps

Test whether or not these timestamps are formatted the same in different locations.
Likely not a problem but GL finding the problem when someone reports that the program does literally nothing.

Render lag

My Broken 970
bwin: has heavy delay on- (barely playable
PokerStars: table movement delay of 100-200 is fine:

Mathias:
OP beeldkaart (2080?)
PokerStars: ??
Bwin: 50 should be more than enough based on video footage

Also plz test other beeldkaart if you get chance

Validate slots on startup

Ensure previously configured slots are still valid on startup.
If not, request that user runs the config again & cancel startup.

This can occur if user changed a screen's position or removed a screen.
Slot.IsNewLocationValid() and/or TryInitialize needs to be modified

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.