Skip to content

Instantly share code, notes, and snippets.

@benzap
Last active August 29, 2015 14:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save benzap/1b4fa8cf50301a85f057 to your computer and use it in GitHub Desktop.
Save benzap/1b4fa8cf50301a85f057 to your computer and use it in GitHub Desktop.
Display Layout Project

Display Layout Project

Introduction

This project is meant to provide an easy way to create new grid-based layouts using a simple data structure. The structure will be grid-based, and easily extensible using a parent-child relationship of cells in a grid, which are easily embeddable.

Design Considerations

  • Grid-based system. The grid consists of fixed-width cells, where each cell holds data. The type of data held by the cell is decided after the fact.
    • Current Restriction includes no changes in the dimensions of the grid.
  • Grid consists of rows and columns, which are sized based on a defined sizing notation. The basic sizing notation will be fixed-width of points.
  • Grid Cells fill the grid in row-column order.
  • Grid Cells can contain Another Grid, with it’s own set of defined layout properties.
  • Grid Cells can contain just about anything that can be stored in a div.

Cell Types

Cell types are not limited to the set of suggested types provided here. This is just a baseline for my current line of work.

BackgroundCell
Shows nothing but the bare essentials, but provides facilities for changing background color.
ImageCell
Shows a given image
ImageSequenceCell
Shows a set of images in a given sequence. The sequence can be given further parameters to decide on how long the duration of each image should be.
FlightDisplayCell
A special Grid, for displaying flight information.

Name Suggestions

  • (сітка) Sitka, Ukrainian for Grid. Sitka.js
  • GitterGrid.js

Specification

The Grid consists of a JSON structure which contains references to other information within the system.

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