Welcome Guest.   Make a donation to an author on the site August 29, 2014, 09:22:39 PM  *

Please login or register.
Or did you miss your validation email?


Login with username and password (forgot your password?)
Why not become a lifetime supporting member of the site with a one-time donation of any amount? Your donation entitles you to a ton of additional benefits, including access to exclusive discounts and downloads, the ability to enter monthly free software drawings, and a single non-expiring license key for all of our programs.


You must sign up here before you can post and access some areas of the site. Registration is totally free and confidential.
 
The N.A.N.Y. Challenge 2010! Download 24 custom programs!
   
   Forum Home   Thread Marks Chat! Downloads Search Login Register  
Pages: Prev 1 [2]   Go Down
  Reply  |  New Topic  |  Print  
Author Topic: NANY 2011 Release: NANY Excuse Manager (v0.96 as of 12/30/10)  (Read 21884 times)
app103
That scary taskbar girl
Global Moderator
*****
Posts: 5,172



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #25 on: December 26, 2010, 01:23:53 AM »

App, what program did you create the icon with?  I don't know much about this, but I assume you set white as the transparent color, and that's what helps make it look good on the form's title bar?

I have never done my icons completely in an icon editor...always did the art in an app more suited to creating art and then importing it into the icon software. There was no setting of any color as transparent.

I used Paintshop Pro v7 to do the actual image, starting with a transparent background and building everything in layers on top of that, saving as a png (auto-merges layers, preserves transparent background), then importing the png into IcoFx

IcoFx is free, and you can use whatever art program you prefer (Photoshop, Gimp, Paintshop Pro, etc).
Logged

kyrathaba
N.A.N.Y. Organizer
Honorary Member
**
Posts: 3,010



while(! dead_horse){beat}

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #26 on: December 26, 2010, 07:41:49 AM »

Nice job!  Thmbsup  Thanks again  smiley
Logged

Win 7 Home Premium 64bit-SP1 AMD Athlon II X2 220 Socket AM3 (938) @ 2.1GHz 6GB RAM Firefox 26.0
_________________________________________________________________________________________

I'm fighting against patent trolls. Join me and tell your representative to support the #SHIELDAct: https://eff.org/r.b6JJ /via @EFF

My DC page: http://kyrathaba.dcmembers.com | My blog: http://williambryanmiller.com/ | Proofreading Service: http://bit.ly/1fQSqQP

kyrathaba
N.A.N.Y. Organizer
Honorary Member
**
Posts: 3,010



while(! dead_horse){beat}

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #27 on: December 26, 2010, 06:41:15 PM »

Okay, I just released v0.94, a fairly hefty update (adds about another 150 lines of code).  See the Version History of the OP for details, but this newest version includes the ability for the developer to log-in to his email account and selectively download any emails that have been sent by program users (presumably DC members) -- including their individual excuse files as email attachments.

Tested this with eight emails in my Inbox (3 of which matched criteria the program looks for).  Dowloaded 3 sets of email attachments (5 attachments per set), and copied them into a separate subdirectory for each emailer.

Quite pleased with this  cheesy
Logged

Win 7 Home Premium 64bit-SP1 AMD Athlon II X2 220 Socket AM3 (938) @ 2.1GHz 6GB RAM Firefox 26.0
_________________________________________________________________________________________

I'm fighting against patent trolls. Join me and tell your representative to support the #SHIELDAct: https://eff.org/r.b6JJ /via @EFF

My DC page: http://kyrathaba.dcmembers.com | My blog: http://williambryanmiller.com/ | Proofreading Service: http://bit.ly/1fQSqQP

kyrathaba
N.A.N.Y. Organizer
Honorary Member
**
Posts: 3,010



while(! dead_horse){beat}

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #28 on: December 27, 2010, 03:52:45 PM »

Version 0.95 doesn't really introduce any new functionality, so far as users would notice, but it's important in that it isolates what can be a moderately intensive foreach-loop (that retrieves and processes emails) into its own BackgroundWorker thread, so that the UI doesn't become "choppy"/unresponsive.

I'm also thankful to fodder and Ath for their help in another thread with some InnoSetup questions I had.  I'm learning a lot by working on this project, and that's what it's all about!

Version 0.96 will examine all downloaded attachments (which are the excuse files that the program's users have emailed to me), and will process them.  This will involve determining:

  • the overall number of excuse files downloaded
  • the total number of program users who have sent excuse files as email attachments
  • how many total excuse files each individual program user has sent
  • the total number of times each individual has sent an email

... that kind of stuff.  I'll use these excuse files to programmatically build a webpage and upload to my website, for everyone to enjoy.

I also plan to make the text boxes for "Excuse" and "Result" multiline-capable, so that those that need to type a bit more can do so.
« Last Edit: December 31, 2010, 06:56:04 PM by kyrathaba » Logged

Win 7 Home Premium 64bit-SP1 AMD Athlon II X2 220 Socket AM3 (938) @ 2.1GHz 6GB RAM Firefox 26.0
_________________________________________________________________________________________

I'm fighting against patent trolls. Join me and tell your representative to support the #SHIELDAct: https://eff.org/r.b6JJ /via @EFF

My DC page: http://kyrathaba.dcmembers.com | My blog: http://williambryanmiller.com/ | Proofreading Service: http://bit.ly/1fQSqQP

kyrathaba
N.A.N.Y. Organizer
Honorary Member
**
Posts: 3,010



while(! dead_horse){beat}

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #29 on: December 29, 2010, 05:15:08 PM »

I've about got NEM wrapped up.  I'll upload installer and screencast either tonight or tomorrow.
Logged

Win 7 Home Premium 64bit-SP1 AMD Athlon II X2 220 Socket AM3 (938) @ 2.1GHz 6GB RAM Firefox 26.0
_________________________________________________________________________________________

I'm fighting against patent trolls. Join me and tell your representative to support the #SHIELDAct: https://eff.org/r.b6JJ /via @EFF

My DC page: http://kyrathaba.dcmembers.com | My blog: http://williambryanmiller.com/ | Proofreading Service: http://bit.ly/1fQSqQP

kyrathaba
N.A.N.Y. Organizer
Honorary Member
**
Posts: 3,010



while(! dead_horse){beat}

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #30 on: December 30, 2010, 10:05:59 PM »

The OP has been edited to include links to screencasts demonstrating a few program features.  As I've stated in a previous post, I conceived "N.A.N.Y Excuse Manager" in a rather tongue-in-cheek fashion.  I don't expect very many DC members will actually use it.  But it's been a good programming workout for me, and has, in the process, provided me with a foundation upon which I believe I'll be able to build a Play-By-Email game.

Among the new areas I got into in this endeavor, I was able to get my mind around the .NET backgroundWorker object, which can run lengthy processes on a separate thread (so as not to lock-up the UI), while still updating the UI with progress updates.  I also got my hands dirty fooling with a FileSystemWatcher object.  It prevents any non-excuse file from being placed in the Excuses folder.  To be honest, it does this on the basis of filename extension.  It doesn't really scrutinize files at the binary level (although that wouldn't be difficult to code).

Anyway, I've thought of several ways that I should abstract this project's code a bit, so that it could be repurposed in a number of interesting ways.

If anyone thinks they could make use of the code's utility, I can share the code.
« Last Edit: December 31, 2010, 11:04:34 AM by kyrathaba » Logged

Win 7 Home Premium 64bit-SP1 AMD Athlon II X2 220 Socket AM3 (938) @ 2.1GHz 6GB RAM Firefox 26.0
_________________________________________________________________________________________

I'm fighting against patent trolls. Join me and tell your representative to support the #SHIELDAct: https://eff.org/r.b6JJ /via @EFF

My DC page: http://kyrathaba.dcmembers.com | My blog: http://williambryanmiller.com/ | Proofreading Service: http://bit.ly/1fQSqQP

kyrathaba
N.A.N.Y. Organizer
Honorary Member
**
Posts: 3,010



while(! dead_horse){beat}

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #31 on: December 31, 2010, 11:06:55 AM »

Quote
It doesn't really scrutinize files at the binary level (although that wouldn't be difficult to code).

Regarding my previous post, note the part I made bold and a hyperlink (the part I quote above).  It got to bothering me that my code just checked file extension, rather than checking a file at the binary level to see if it was of the same type as a custom-defined class.

So, I've updated my C# Errata to include a solution.  The entire posting is here.
Logged

Win 7 Home Premium 64bit-SP1 AMD Athlon II X2 220 Socket AM3 (938) @ 2.1GHz 6GB RAM Firefox 26.0
_________________________________________________________________________________________

I'm fighting against patent trolls. Join me and tell your representative to support the #SHIELDAct: https://eff.org/r.b6JJ /via @EFF

My DC page: http://kyrathaba.dcmembers.com | My blog: http://williambryanmiller.com/ | Proofreading Service: http://bit.ly/1fQSqQP

kyrathaba
N.A.N.Y. Organizer
Honorary Member
**
Posts: 3,010



while(! dead_horse){beat}

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #32 on: December 31, 2010, 11:17:16 AM »

Quote
Go do it the fancy way and use layered windows instead. UpdateLayeredWindow is the epic function you want. It's a pain to use, but you can get really pretty results with it. smiley

@worstje:  I wound up rolling-my-own (uncomment the line assigning an image to splash.BackgroundImage; of course, you have to embed an image resource in your application, first):

Formatted for C# with the GeSHI Syntax Highlighter [copy or print]
  1.       public Form1() {
  2.            InitializeComponent();
  3.            this.StartPosition = FormStartPosition.CenterScreen;
  4.        }
  5.  
  6.  
  7.        private void Form1_Load(object sender, EventArgs e) {
  8.  
  9.            Form splash = new Form();
  10.            splash.Size = this.Size;
  11.            splash.StartPosition = this.StartPosition; //same as Form1
  12.            splash.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
  13.            //splash.BackgroundImage = ExcuseManager.Properties.Resources.kyr_splash;
  14.  
  15.            this.Hide();    //hide our main form...
  16.            splash.Show();  //...and show splash screen
  17.  
  18.            System.Threading.Thread.Sleep(3000);
  19.            splash.Dispose(); //leaving Form1 visible
  20.  
  21.        }
« Last Edit: December 31, 2010, 06:59:44 PM by kyrathaba » Logged

Win 7 Home Premium 64bit-SP1 AMD Athlon II X2 220 Socket AM3 (938) @ 2.1GHz 6GB RAM Firefox 26.0
_________________________________________________________________________________________

I'm fighting against patent trolls. Join me and tell your representative to support the #SHIELDAct: https://eff.org/r.b6JJ /via @EFF

My DC page: http://kyrathaba.dcmembers.com | My blog: http://williambryanmiller.com/ | Proofreading Service: http://bit.ly/1fQSqQP

kyrathaba
N.A.N.Y. Organizer
Honorary Member
**
Posts: 3,010



while(! dead_horse){beat}

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #33 on: December 31, 2010, 06:10:55 PM »

ALL, best wishes for a wonderful New Year!  My family and I will be departing shortly for a New Year's Eve church service.

I've updated the OP considerably today.  The final N.A.N.Y. 2011 release version is v0.96q.  Yeah, I did a lot of revision work on v0.96, probably as much as v0.9 through v0.95 all combined.

Congratulations to all the folks who are submitting New Apps for the New Year!  I'm looking forward to seeing everyone's submission, and the reviews!  Thanks to Perry for all the time and energy he's spent coordinating things.
Logged

Win 7 Home Premium 64bit-SP1 AMD Athlon II X2 220 Socket AM3 (938) @ 2.1GHz 6GB RAM Firefox 26.0
_________________________________________________________________________________________

I'm fighting against patent trolls. Join me and tell your representative to support the #SHIELDAct: https://eff.org/r.b6JJ /via @EFF

My DC page: http://kyrathaba.dcmembers.com | My blog: http://williambryanmiller.com/ | Proofreading Service: http://bit.ly/1fQSqQP

mouser
First Author
Administrator
*****
Posts: 33,285



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #34 on: January 07, 2011, 05:41:24 PM »

such a strange program.. it might be interesting to see if you could put some of this code to use in a more general purpose application smiley
Logged
kyrathaba
N.A.N.Y. Organizer
Honorary Member
**
Posts: 3,010



while(! dead_horse){beat}

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #35 on: January 07, 2011, 07:43:07 PM »

Well, as I've said in some of my previous posts, I didn't really expect this program to be much-used by DCers.  It was pledged rather tongue-in-cheek (reading the program's Description).  That said, I've learned the following things while coding it, which certainly can (and hopefully will) be put to a useful application in the near future):

  • How to programmatically send and retrieve Gmail using C#
  • How to download/upload files programmatically using C#
  • How to make use of separate threads for intensive tasks, using C#
  • How to use a FileSystemWatcher object to monitor file changes, using C#

As I think I posted elsewhere, I'm hoping to use what I've learned to development a play-by-email game.  Had there been any interest shown, I'd have fully fleshed out the reporting features of the program, collating the excuses generated by DCers and maybe adding a vote-for-your-favorite feature.

So, I think I agree with you that it's a strange program, in that it probably isn't going to appeal much in its current incarnation.  I see it as a good foundational work for the following future applications:

  • a group novel-writing app, that keeps all group members in synch with what the others have written (includes version control)
  • as I've said, I have a couple ideas for play-by-email games
  • a few more ideas, still rather nebulous
Logged

Win 7 Home Premium 64bit-SP1 AMD Athlon II X2 220 Socket AM3 (938) @ 2.1GHz 6GB RAM Firefox 26.0
_________________________________________________________________________________________

I'm fighting against patent trolls. Join me and tell your representative to support the #SHIELDAct: https://eff.org/r.b6JJ /via @EFF

My DC page: http://kyrathaba.dcmembers.com | My blog: http://williambryanmiller.com/ | Proofreading Service: http://bit.ly/1fQSqQP

mouser
First Author
Administrator
*****
Posts: 33,285



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #36 on: January 07, 2011, 07:50:22 PM »

Quote
I see it as a good foundational work for the following future applications

yep -- those sound really interesting and cool, and i definitely think you'll find use for those functions.  looking forward to it.
Logged
TaoPhoenix
Supporting Member
**
Posts: 3,478



0 - 60 ... then back to 0 again!

see users location on a map View Profile Give some DonationCredits to this forum member
« Reply #37 on: December 14, 2011, 08:23:32 PM »

I'll upload an excuse. I can't program. Leeeeeech! : )
Logged
TaoPhoenix
Supporting Member
**
Posts: 3,478



0 - 60 ... then back to 0 again!

see users location on a map View Profile Give some DonationCredits to this forum member
« Reply #38 on: December 14, 2011, 08:27:43 PM »

I'll Upload an excuse.

":I can\'t program.excuse.
You cannot upload that type of file. The only allowed extensions are txt,jpg,gif,mpg,png,zip,rar,7z,ahk,fbs,mov,avi,mpg,rm,exe,mid,mp3,wav,grid,opml,wmv,tgz,gz,xml,ini,alias,wma,ogg. "

Doesn't take native excuses!


* I can't program.zip (0.36 KB - downloaded 50 times.)
Logged
Pages: Prev 1 [2]   Go Up
  Reply  |  New Topic  |  Print  
 
Jump to:  
   Forum Home   Thread Marks Chat! Downloads Search Login Register  

DonationCoder.com | About Us
DonationCoder.com Forum | Powered by SMF
[ Page time: 0.056s | Server load: 0.26 ]