Difference between revisions of "GFlash Surface Project"

From IPRE Wiki
Jump to: navigation, search
 
(Further Programming)
 
(19 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== '''GFlash''' ==
+
== '''gFlash''' ==
  
 
== Description ==
 
== Description ==
'''What is GFlash?'''
+
'''What is gFlash?'''
  
GFlash is a GoogleDoc enabled Surface Application. It allows multiple users to individually log into their Gmail accounts using the Surface keyboard. It then accesses the user's GoogleDoc Spreadsheets and uploads them onto the Surface as moveable, flippable flash cards.
+
gFlash is a GoogleDoc enabled Surface Application. It allows multiple users to individually log into their Gmail accounts using the Surface keyboard. It then accesses the user's GoogleDoc Spreadsheets and uploads them onto the Surface as moveable, flippable flash cards.
  
  
'''Why is GFlash Useful?'''
+
'''Why is gFlash Useful?'''
  
GFlash is a Surface learning tool that allows its users to upload self-created spreadsheets. Therefore, users are able to customize their content unlike other online or electronic drilling games. Also, it's environmentally friendly and hand-friendly. The user can cut down on time and trees by utilizing GFlash's electronic flash card abilities.
+
gFlash is a Surface learning tool that allows its users to upload self-created spreadsheets. Therefore, users are able to customize their content unlike other online or electronic drilling games. Also, it's environmentally friendly and hand-friendly. The user can cut down on time and trees by utilizing gFlash's electronic flash card abilities.
  
  
'''Basic C# Tools Used in GFlash'''
+
'''gFlash Abilities'''
  
In order for GFlash to work, the Google API .NET was used to upload information from and log into multiple accounts. In order for the flash cards on the Surface to appear as ScatterViewItems, a sub class inheriting from ScatterViewItem needed to be created to contain the basic information of the spreadsheets. Currently, this class only hold the properties "front", "back", and "isShowing". These allow the program to know when and what is showing upon "ContactTapGesture", which occurs only when the user taps a flash card, not when the card is being dragged and dropped on the page.
+
Upon logging in, gFlash uploads the user's spreadsheets in a side list box (in this list box the user also has the option to log out). When the user taps desired spreadsheet, the worksheets of that spreadsheet are then loaded in the side list box (as well as a back button to send them back to the list of spreadsheets). Each worksheet is linked to a list of flash cards that will appear on screen when desired worksheet is tapped.
  
 +
There are basic functionalities for the flash cards: "flip to front" and "flip to back" flip all the flash cards on screen to desired side, "stack" stacks all the flash cards in an pile in the middle of the screen.
 +
 +
 +
'''Basic C# Tools Used in gFlash'''
 +
 +
In order for gFlash to work, the Google API .NET was used to upload information from and log into multiple accounts. In order for the flash cards on the Surface to appear as ScatterViewItems, a sub class inheriting from ScatterViewItem needed to be created to contain the basic information of the spreadsheets. Currently, this class only hold the properties "front", "back", "isShowing", and "isPeeking". These allow the program to know when and what is showing upon "ContactTapGesture" and "ContactHoldGesture"(for "isPeeking), which occurs only when the user taps a flash card, not when the card is being dragged and dropped on the page.
 +
Spreadsheets of each GoogleDoc account are loaded in a SurfaceListBox as SurfaceListBoxItem buttons linked to specific flash card sets of that Spreadsheet.
  
 
== Screen Captures ==
 
== Screen Captures ==
 
'''Log In Page'''
 
'''Log In Page'''
[[File:example.jpg|frame|caption]]
+
[[Image:GFlashLogIn.PNG|gFlash Log In]]
 
'''Uploaded Flash Card'''
 
'''Uploaded Flash Card'''
[[File:example.jpg|frame|caption]]
+
[[Image:GFlashFront.PNG|Front of gFlash Flash Cards]]
 +
[[Image:GFlashBack.PNG|Back of gFlash Flash Cards]]
  
 
== Further Programming ==
 
== Further Programming ==
'''Problems With Log In'''
 
  
The most basic problem with the code currently is Google's security with multiple user log in. Although one's account can be log into by capturing the input into the XAML textbox and passwordbox, it will not go further. In order to make multiple user log in fully functional, it seems that the application must navigate to Google and back to the application. Further research is needed.
+
'''Background  of Flash Cards'''
 +
Currently in the code, FlashCard is a sub class of ScatterViewItem and the content is set to the content of Google Spreadsheet cells. Because the content is set to those strings, a picture background (typically created in Flashcard.Content) is not possible. Research into adding a property such as a background image in the FlashCard sub class is underway.
 +
 
 +
 
 +
'''Adding/Deleting Flash Cards'''
 +
 
 +
Google API the editing of Google Spreadsheets within the application. It is possible through this method to create new flash cards and delete current ones.
 +
 
 +
 
 +
'''Stacking'''
 +
 
 +
Currently flash cards can be stacked by a set position and orientation, allowing them to be removed easily from the stack. I would like to implement a library stack which allows the user to flip through the items in that stack (such as flash cards); however, because flashcard is a sub class of scatterview, it would have to be detached from the scatterview base class, attached to the librarystack base class, then detached and reattached to scatterview upon clicking a listboxitem such as "unstack".
  
  
'''Editing/Adding/Deleting Flash Cards'''
+
'''Wrong/Right'''
  
Google API also allows the user to edit Spreadsheets within the application. Utilizing this feature, it would be possible to create new flash cards and edit current ones upon "ContactHoldGesture".
+
If the user gets the flash card answer wrong or right, it would be useful to have some way of keeping track by the user's indication. The flash cards would thus have to be divided and kept in two lists (wrong or right).

Latest revision as of 15:41, 25 April 2010

gFlash

Description

What is gFlash?

gFlash is a GoogleDoc enabled Surface Application. It allows multiple users to individually log into their Gmail accounts using the Surface keyboard. It then accesses the user's GoogleDoc Spreadsheets and uploads them onto the Surface as moveable, flippable flash cards.


Why is gFlash Useful?

gFlash is a Surface learning tool that allows its users to upload self-created spreadsheets. Therefore, users are able to customize their content unlike other online or electronic drilling games. Also, it's environmentally friendly and hand-friendly. The user can cut down on time and trees by utilizing gFlash's electronic flash card abilities.


gFlash Abilities

Upon logging in, gFlash uploads the user's spreadsheets in a side list box (in this list box the user also has the option to log out). When the user taps desired spreadsheet, the worksheets of that spreadsheet are then loaded in the side list box (as well as a back button to send them back to the list of spreadsheets). Each worksheet is linked to a list of flash cards that will appear on screen when desired worksheet is tapped.

There are basic functionalities for the flash cards: "flip to front" and "flip to back" flip all the flash cards on screen to desired side, "stack" stacks all the flash cards in an pile in the middle of the screen.


Basic C# Tools Used in gFlash

In order for gFlash to work, the Google API .NET was used to upload information from and log into multiple accounts. In order for the flash cards on the Surface to appear as ScatterViewItems, a sub class inheriting from ScatterViewItem needed to be created to contain the basic information of the spreadsheets. Currently, this class only hold the properties "front", "back", "isShowing", and "isPeeking". These allow the program to know when and what is showing upon "ContactTapGesture" and "ContactHoldGesture"(for "isPeeking), which occurs only when the user taps a flash card, not when the card is being dragged and dropped on the page. Spreadsheets of each GoogleDoc account are loaded in a SurfaceListBox as SurfaceListBoxItem buttons linked to specific flash card sets of that Spreadsheet.

Screen Captures

Log In Page File:GFlashLogIn.PNG Uploaded Flash Card File:GFlashFront.PNG File:GFlashBack.PNG

Further Programming

Background of Flash Cards Currently in the code, FlashCard is a sub class of ScatterViewItem and the content is set to the content of Google Spreadsheet cells. Because the content is set to those strings, a picture background (typically created in Flashcard.Content) is not possible. Research into adding a property such as a background image in the FlashCard sub class is underway.


Adding/Deleting Flash Cards

Google API the editing of Google Spreadsheets within the application. It is possible through this method to create new flash cards and delete current ones.


Stacking

Currently flash cards can be stacked by a set position and orientation, allowing them to be removed easily from the stack. I would like to implement a library stack which allows the user to flip through the items in that stack (such as flash cards); however, because flashcard is a sub class of scatterview, it would have to be detached from the scatterview base class, attached to the librarystack base class, then detached and reattached to scatterview upon clicking a listboxitem such as "unstack".


Wrong/Right

If the user gets the flash card answer wrong or right, it would be useful to have some way of keeping track by the user's indication. The flash cards would thus have to be divided and kept in two lists (wrong or right).