GithubHelp home page GithubHelp logo

akshgpt7 / marvellos Goto Github PK

View Code? Open in Web Editor NEW
20.0 20.0 20.0 547 KB

A basic operating system GUI mock-up built using python's GUI module Tkinter.

Python 100.00%
python-gui python3 threading tkinter

marvellos's Introduction

I don't like this feature ๐Ÿ˜ถ.

marvellos's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

marvellos's Issues

Add Calendar app

A calendar app would be awesome to have.
It would display the calendar of every month for various years.
The calendar python module can directly be used to generate the dates and years, so just positioning and displaying them properly is the thing to take care of.

Multiple notes in Notepad

We need to figure out where the text is being saved & a button to go back to Home Page .
@akshgpt7 I would work on these tasks , pls assign it to me

Dynamic screen size and positioning

The current screen size and positioning (and sizing) of all widgets is static. Make them dynamic so as to adapt to various screen sizes and prevent overlapping.

  • Use pyautogui to get the user's screen size, and dynamically position elements.
  • Set the size of all elements using the appropriate ratio.
  • Can use tkinter grid for layout.

Make separate directories for data and samples

The sample pictures and password, bg color, notes files can be stored in separate new folders for better organization.

  • /data for background, notes and password.
  • /sample_pictures

Make sure their path is then used in MarvellOS code.

Make a global string for window geometry

The geometry for each window needs to be same, but it's manually entered for every window. It'll be easier if there's a global string that contains that geometry value, and is directly used in the geometry() method of every window.
This will make it easier if we later plan to change this value, since it'll only have to be changed at one place instead of doing that for every window individually.

Support keyboard input for calculator app

It's tedious to press buttons on the calculator app for everything. Having keyboard input for numbers, operators, enter key etc. would make it much more convenient.

Add titles to all windows

Currently, titles are only shown for the welcome screen and home screen.
It'll be good to show the window title on all the windows.

Make every window non-resizable

The positioning of all components is set keeping in mind that the window is not resized by the user.
Make all the windows that open non-resizable, so that the user cannot change its size once they open.

Add sample music app

An app to play some sample music files from a sample_music folder.
(Just like the sample pictures app)
It'll be nice to have Pause, Play, Next and Previous buttons too.

Allow user to add their own images to sample pictures

It'll be nice if users could add their own images to the sample pictures app (then we can change its name to Gallery).
I haven't really thought of the right way to go about this, but maybe letting the user provide an image somehow and then adding it to the pictures folder might be one way to do it.
Open to better implementations though.

Fix PEP8 violations in code style

The current coding style does not conform to PEP8 standards.
Use a tool like pycodestyle or flake8 (preferred) to find all the violations and fix them for more readable and standard coding style.

Fix click game app

There are threading problems in Click Game, which need to be resolved.

Make separate python files for each app

The different apps need to be written in separate scripts and then imported into the main code.
It'll be more convenient to have all the app files in a separate apps folder.

Python3 support

Currently, the project works on python2. An update to python3 is needed.

Fix overlapping buttons and layout for Linux

The current window and button sizes are set according to Windows OS. On running on Linux machines, the buttons and other components are overlapping. Fix the window size and positioning of other components.

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.