when voter found that can vote or cannot his representation sits in the
submit voter panel in which we can revoke his right to vote and otherwise
(give him the permision to vote)
The search have two big functionalities first one is fetch the users based
on given list of filters and the second one is open add/eddit panel based
on what the fetching of the users have returned.
Polling Station Dashboard have a lot of logics extend or close some
pannels (Settings and the Status log), search for users, and eddit those
users.
In order to simplfy the logic of Polling Station Dashboard Controler this
class was invented, the idea behind is simple every time some event is
trigered we will activate the apropriate handle method of the apropriate
object, this way if tomorow for say i want to implement different search
algoritm of users i will only change the UserSearch part.
The only thing that the controller of the Polling Station Dashboard
suppose to do is to handle events (not manage the llogic of adding or
removing actual parts/panels to the main stage ) this is why this logic is
now mainteined in saparated objects as Settings Visual Updater or
Status Log Visual Updater
for now we have all the main flow vor the voter voting process (without
all the logic for example the logic of fetching from server who else is
voting right now is not existing, etc'...)
in order to reduce coupling between polling station dashboard and all
other elements it produces and uses i have created status log update
interface, which expose the functuality of update the state of status log
panel.
the idea behind this is status log does not have to know polling station
dashboard. all other objects that polling station dashboard will use will
have their own interfaces (for the same reason too).
The meerkat gui is an project consist of scenes every scene is an panel,
now every panel have the loader class which loads it content
and the handler object which handles the visual effects as mouse clicked
etc'...
I have come to conclusoin (after few projects inspection) thatevery fxml
should have his own conroller and its own java class that represents it
and loads it.