FacebookTwitter
Hatrack River Forum   
my profile login | search | faq | forum home

  next oldest topic   next newest topic
» Hatrack River Forum » Active Forums » Books, Films, Food and Culture » *Hypercard/Hypermedia Framework for .Net

   
Author Topic: *Hypercard/Hypermedia Framework for .Net
IanO
Member
Member # 186

 - posted      Profile for IanO   Email IanO         Edit/Delete Post 
I've recently received a request for a software project that would allow the user to input information in a very visual way. Basically, when the user visits a particular physical location to monitor its machinery, he needs to record many pieces of data about that machinery- pressure, temperature, etc. Looks to be about 30 different schematics. The idea is, the user would use a tablet and pull up the schematic type for what he is looking at. He'd input the name and then click on various places in the schematic and then input the data. At the end of the day, he'd upload the data to some central repository (or output it as an excel spreadsheet).

Now I know I can write the whole thing from scratch. Thing is, my time is rather limited. So I've been trying to think about the easiest way to do this (or if it'd take more time than I have, then I'd pass). And what came to my mind was the old Hypercard program that I used to have on my Mac Plus. As I recall, you could take a visual image and then place 'hot spots' with actions associated with those spots- like entering text. Seems close to what I'd want, though each 'card' would be a template, rather than 'writing' on the actual card.

But this seems like such a useful thing (and relatively simple enough), that I'm sure that toolkits for this stuff already exist. But having trouble figuring out how to look. Anyone know of any Hypercard-like toolkits for the .net framework that would work for something like this? Or any suggestion for another way this might be implemented? I'm trying to also keep in mind that schematics may change (they're done in autocad), so I'd have to include some way of creating/editing these templates. I feel like there is some simple solution I am missing.

Thanks

Posts: 1346 | Registered: Jun 1999  |  IP: Logged | Report this post to a Moderator
Scott R
Member
Member # 567

 - posted      Profile for Scott R   Email Scott R         Edit/Delete Post 
I think something similar can be programmed for image files on a web page.

Tom Davidson's plastic castle website is (I think) a good implementation of this function.

Posts: 14554 | Registered: Dec 1999  |  IP: Logged | Report this post to a Moderator
TomDavidson
Member
Member # 124

 - posted      Profile for TomDavidson   Email TomDavidson         Edit/Delete Post 
You can define "hot spots" on an image pretty easily in Windows Forms. The only "difficult" part you're going to face is having to define different hot spots for different types of images. If you've really got 30 schematics, that might be a pain in the butt.

My homepage uses HTML image maps. I wouldn't recommend that approach, but you could do it that way. If you really wanted to build this as a web application in ASP, I'd recommend the ImageButton object.

Posts: 37449 | Registered: May 1999  |  IP: Logged | Report this post to a Moderator
IanO
Member
Member # 186

 - posted      Profile for IanO   Email IanO         Edit/Delete Post 
Yeah, thought of HTML image maps. But I don't want to do this as a webapp. These tablets are gonna be bare bones, so their running IIS is not really gonna happen. Moreover, seems like a lot of overhead. And designing new schematic templates would not be a piece of cake.

I was thinking of that kind of 'hot-spot' functionality, though. Click on a specific spot and a small pop-up dialog appears where the info is inputed (and probably stored in some sort of XML db). Then, the data can be exported in numerous ways. Was thinking that you could then define new hotspots with specific attributes. Ok (just thinking)....so a background relational db with schematic-metadata: hotspot types, attributes belonging to such hotspots, schematic image locations, name, etc). Then an xml file for each instance of a schematic- name, shematic kind (referenced from the meta-data), hot-spot locations, data.

Lot of details missing here, but not too bad. Biggest part, I suppose, I'm looking for is an engine to drive the interface- like Hypercard. The rest is just implementation....

Posts: 1346 | Registered: Jun 1999  |  IP: Logged | Report this post to a Moderator
TomDavidson
Member
Member # 124

 - posted      Profile for TomDavidson   Email TomDavidson         Edit/Delete Post 
Like I said, Windows Forms will do the hotspot functionality you need. If you can give it coordinates for a clickable area, it can make that area into a drawing region with an accessible OnClick event handler.
Posts: 37449 | Registered: May 1999  |  IP: Logged | Report this post to a Moderator
IanO
Member
Member # 186

 - posted      Profile for IanO   Email IanO         Edit/Delete Post 
duh. you said win forms. I was thinking asp.net forms. That could work. Only downside is that I'd have to manually create a win form for each schematic. Would make maintenance and creation much more difficult and I'd have to be the one to do it. But it's a place to start, I think.
Posts: 1346 | Registered: Jun 1999  |  IP: Logged | Report this post to a Moderator
ricree101
Member
Member # 7749

 - posted      Profile for ricree101   Email ricree101         Edit/Delete Post 
I don't see why you would need to create a new form for each schematic. For example, you could write up an xml file that had the list of schematics, where each node had one image and multiple regions. Then just write up some code to dynamically build the form for you based on which schematic is currently being viewed.
Posts: 2437 | Registered: Apr 2005  |  IP: Logged | Report this post to a Moderator
TomDavidson
Member
Member # 124

 - posted      Profile for TomDavidson   Email TomDavidson         Edit/Delete Post 
*nod* Exactly.
You'd need a backend that lists the following:

SCHEMATIC TABLE
1) The image for each schematic (to use as background on the form)
2) Name for each schematic
3) Any security settings peculiar to the schematic

SCHEMATIC TO HOTSPOT JOIN TABLE
1) A join table providing a one-to-many relationship between the schematic and its hotspots.

HOTSPOT TABLE
1) Data backend target for each hotspot
2) Unique name for the hotspot
3) The defined region for each hotspot
4) Caption for each hotspot
5) Data type for each hotspot
6) Validation and/or default cell contents

Given those three tables, you can dynamically redraw the form every time the underlying schematic is changed by doing a foreach() on the Schematic-Hotspot Join Table for the new schematic and instantiating the new hotspots in their appropriate location.

Posts: 37449 | Registered: May 1999  |  IP: Logged | Report this post to a Moderator
IanO
Member
Member # 186

 - posted      Profile for IanO   Email IanO         Edit/Delete Post 
That's exactly it. And it wouldn't be too hard to do. I wrote a drag-drop drawing program a few years ago that could be relatively easily modified to do something like this already. Don't know why I didn't think of it before.

Awesome. Thanks guys. I really appreciate it.

Posts: 1346 | Registered: Jun 1999  |  IP: Logged | Report this post to a Moderator
manji
Member
Member # 11600

 - posted      Profile for manji           Edit/Delete Post 
Did anyone else get all excited reading this thread? I wish I was doing something like this at work.
Posts: 339 | Registered: Apr 2008  |  IP: Logged | Report this post to a Moderator
scifibum
Member
Member # 7625

 - posted      Profile for scifibum   Email scifibum         Edit/Delete Post 
Sounds like a pretty fun project. Of course, my software development experience is limited to little personal- or team-use things that have no error handling and don't conform to any actual standards, so my 'fun' approach to the dev probably wouldn't result in a suitable software product. [Smile]
Posts: 4287 | Registered: Mar 2005  |  IP: Logged | Report this post to a Moderator
   

   Close Topic   Feature Topic   Move Topic   Delete Topic next oldest topic   next newest topic
 - Printer-friendly view of this topic
Hop To:


Contact Us | Hatrack River Home Page

Copyright © 2008 Hatrack River Enterprises Inc. All rights reserved.
Reproduction in whole or in part without permission is prohibited.


Powered by Infopop Corporation
UBB.classic™ 6.7.2