Welcome Guest.   Make a donation to an author on the site September 20, 2014, 05:06:26 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 2011! Download 30+ 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 Teaser Update: ContactFX 0.0.2.0  (Read 19490 times)
J-Mac
Supporting Member
**
Posts: 2,864


see users location on a map View Profile Read user's biography. Give some DonationCredits to this forum member
« Reply #25 on: October 07, 2010, 01:13:06 PM »

Hi Perry.

Just gave this build a quick look. Still can't create an address book yet! So is anything created in the way of contacts lost? I imagine so for now. I guess then that importing of contacts is still a little ways off then.

In creating a contact I can only bring the four fields showing in the control pallet over: Formatted Name, Given Name, Family Name, and Additional Name. I have entered some Given and Family names - are they to represent First and Last names? Or something else? What is the Additional Name? And I initially thought that the Formatted Name field would be kind of a "Display As" field, automatically filled by the other name fields that are manually populated, but that doesn’t seem to be the case. Or at least not yet - perhaps this is simply something that isn't yet implemented?

Anyway I am not certain what can be done just yet with this. I am probably missing some information at this point. Is there more I need to read somewhere?

Thanks!

Jim
Logged

"I am getting so tired of slitting the throats of people who say that I am a violent psychopath."
Perry Mowbray
N.A.N.Y. Organizer
Moderator
*****
Posts: 1,807



Thoughtful Scribbles

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

Downloaded and running smoothly! What level of feedback would you like from this build?

i.e. only bugs for now? or also small stuff? or right down to typos?


Anything and everything is fine Tim. I generally take a build to work to test before uploading here, but you know how it goes....
Logged

Perry Mowbray
N.A.N.Y. Organizer
Moderator
*****
Posts: 1,807



Thoughtful Scribbles

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #27 on: October 07, 2010, 05:09:31 PM »

Just gave this build a quick look. Still can't create an address book yet! So is anything created in the way of contacts lost? I imagine so for now. I guess then that importing of contacts is still a little ways off then.

 embarassed That's right...

If you want I can bring Saving / Loading addressbooks forward... but I'm mainly working on the functionality in the Contact window at the moment.

And yes, importing contacts is a little way off  Wink

In creating a contact I can only bring the four fields showing in the control pallet over: Formatted Name, Given Name, Family Name, and Additional Name.

That's right. You should also be able to drag the parent field "Name" across and it'll add the three children.

I have entered some Given and Family names - are they to represent First and Last names? Or something else? What is the Additional Name?

I'm using VCard3 and Hcard2 as my basis.

Additional Name(s) are what I'd call middle names.

You can change the label to whatever you like (on an adhoc basis):




Soon you'll be able to change the default label (as well as add your own user controls): I've got this working but just need to add it to the start up events.

You could also change the string used in the language file (\Settings\Language\English.language.xml)

And I initially thought that the Formatted Name field would be kind of a "Display As" field, automatically filled by the other name fields that are manually populated, but that doesn’t seem to be the case. Or at least not yet - perhaps this is simply something that isn't yet implemented?

The Display As field is the one at the top. To edit you select "Edit" from the context menu:


The Formatted Name field is a defined HCard / VCard field, I was thinking that you may want to use something different from that as your Display As field?

As for automatic filling, there are two options:
  • Formatted Name currently has a default value of name.given & " " & name.family, which will be filled when added to the Contact window after the given name and family name are entered
  • Formatted Name could have a default source path of name.given & " " & name.family which means it would be updated automatically. I have not added this at the moment, but soon users will be able to override the default values with their own  smiley See linking in a previous post:
    This version demonstrates the linking abilities. I've written a blog post: ContactFX :: Field Linking, but briefly...

    Each field in ContactFX can, rather than hold static data, show data in another field which can be in the same contact, a different contact and, eventually, even a different addressbook file.

    The source string can be added to the field by using the Link Effect when dragging and dropping: (see attachment in previous post)
    or by typing directly into the text box: (see attachment in previous post)

Anyway I am not certain what can be done just yet with this. I am probably missing some information at this point. Is there more I need to read somewhere?

It's mainly testing functionality of the main panel at the moment smiley but this will form the basis of how most of the other panels will work (drag and drop / copy and past / edit / etc) ... I'm often not sure of the best way to do something until I start playing with it... and all comments from potential users is very helpful.

This is my tentative roadmap from the OP
Roadmap
This is the tentative roadmap that I'm working toward on my slow march to a 0.1 beta version  Wink
  • Version 0.0.2: Basic Window Framework - Main Panel
    • Name Fields (display name, first name, additional name, family name, formatted name)
    • Drag and Drop (Move / Copy / Link )
    • Copy & Paste
    • Portable Configuration
    • Command-line (-tray hides to tray on startup)
    • Language Files (see \Settings\Language\English.language.xml)
  • Version 0.0.3: Lists Panel
    • List panels
    • WebLink fields
  • Version 0.0.4: Tab Panel
    • Tab Pages
    • Address Fields (POB, Extended, Street, Locality, Region)
    • Categorization / Type Fields & Settings
  • Version 0.0.5: Notes Panel
    • Note Lists
    • Note Fields (Internal / External)
    • Tag Fields
  • Version 0.0.6: Integration Functionality
    • Command-line Options
    • FarrCfx
    • Addressbook Search / Filter
  • Version 0.0.7: Data Fields
    • Add remaining Data Fields
    • User Fields
    • User Field Editor
  • Version 0.0.8: File Functionality
    • Save / Import / Export
    • Upload to FTP
    • Backup
« Last Edit: October 07, 2010, 09:26:51 PM by Perry Mowbray » Logged

timns
Supporting Member
**
Posts: 1,209



Veni, vidi, debuggi

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

Ok, here goes in no particular order:

1. "Control Pallet" should be "Control Palette"
2. Some hints for the little blue icons (looks like maybe maximize, collapse, centre?)
3. When editing the main label in the purple area, the edit box is not high enough
4. Error message 'Contacts must have 1 User ID field: Currently there is ony 0."
(I was dragging some fields between 2 contact windows)
I then ended up with a contact with 2 family name labels, then it crashed.
6. Still calls itself version 0.0.1.13
7. Address Book is 2 words
8. If I minimize the windows I can't get them to restore

I really like the overall look of the app, and the ability to drag stuff around is pretty nice. Can you add a couple more fields as soon as contacts can be saved? I'll start keying a few real names in and see how it feels to use.
Logged

Perry Mowbray
N.A.N.Y. Organizer
Moderator
*****
Posts: 1,807



Thoughtful Scribbles

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

Thanks for this...

3. When editing the main label in the purple area, the edit box is not high enough

High enough? I know it's tight... I've got it on my list to make it wider. A lot of the labels are like that when you're editing them at them moment.

4. Error message 'Contacts must have 1 User ID field: Currently there is ony 0."
(I was dragging some fields between 2 contact windows)
I then ended up with a contact with 2 family name labels, then it crashed.

Did you drag out a UID? Fields are set up to have maximum and minimum numbers which are check before adding and saving. I thought I'd locked UID so it couldn't be dragged off??

6. Still calls itself version 0.0.1.13

I think I didn't change the download link in the OP, so if you downloaded from the Download link rather than the history you will have got 13 rather than 17  embarassed (fixed now)

8. If I minimize the windows I can't get them to restore

COOL!! That one I haven't seen before!! Thanks -- only an issue when in edit mode...

I really like the overall look of the app, and the ability to drag stuff around is pretty nice. Can you add a couple more fields as soon as contacts can be saved? I'll start keying a few real names in and see how it feels to use.

That's probably a good idea... I was going to get the rest of the panels done, but maybe it's more necessary to get the fields done...
Logged

Perry Mowbray
N.A.N.Y. Organizer
Moderator
*****
Posts: 1,807



Thoughtful Scribbles

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #30 on: October 13, 2010, 08:13:40 AM »

I've just uploaded 0.0.2.0 that should fix all reported bugs and finish the implementation of the main panel (though not all the fields).

This release includes a significant improvement in ContactFX functions, so I thought I better explain how they work...

Functions are defined within {} and must be prefaced with an "=" (like field links). Functions have the general form of { FunctionName 'optional constant' functionObject }. To use a function just type it into the appropriate text box, eg:
Formatted for Ruby with the GeSHI Syntax Highlighter [copy or print]
  1. ={UCASE "mowbray"}
would display as "MOWBRAY".

Functions generally comprise:
  • a function name: case insensitive
  • an optional function constant: defined within ''
  • a function object, that can be:
    • a string: defined within ""
    • a path to a field, eg: id#fieldnumber or id#fieldname
    • a function: defined within {}
    • an array of function objects: defined within []

Current Functions
Initialise:
Formatted for Ruby with the GeSHI Syntax Highlighter [copy or print]
  1. { INITIALISE name.additional }
If the text in the Additional Name field is "perry" the above function will return "P."

UCase:
Formatted for Ruby with the GeSHI Syntax Highlighter [copy or print]
  1. { UCASE 1#name.family }
If the text in the Family Name field of Contact #1 is "mowbray" the above function will return "MOWBRAY"

Join:
Formatted for Ruby with the GeSHI Syntax Highlighter [copy or print]
  1. { JOIN ', ' [ "me" , name.additional , { UCASE name.additional(2) } ] }
This is a conditional join: if the object being joined is non-blank then it is joined to the previous joined result with the constant. If the text in the first Additional Name is "myself" and the text in the second Additional Name field is "i" then the above function will return "me, myself, I"

Ternary:
Formatted for Ruby with the GeSHI Syntax Highlighter [copy or print]
  1. { name.additional ?? 'Additional Name is empty' }
Well, like a ternary... if the Object is blank then the constant is returned otherwise the Object is returned. For example: If the Additional Name field is empty then the above function will return the constant "Additional Name is empty".
If the Additional Name field has the text "Samuel" then the above function will return "Samuel".

Conditional Pad:
Formatted for Ruby with the GeSHI Syntax Highlighter [copy or print]
  1. { 'Mr. ' && name.family}

If the text in the Family Name field is empty the above function will return an empty string "".
If the Family Name field has the text "Mowbray" the above function will return "Mr. Mowbray"
Formatted for Ruby with the GeSHI Syntax Highlighter [copy or print]
  1. { name.family && ' esq.'}

If the text in the Family Name field is empty the above function will return an empty string "".
If the Family Name field has the text "Mowbray" the above function will return "Mowbray esq."


This userField: * JimsDisplayName.zip has a definition that will modify the default displayName field:
Formatted for XML with the GeSHI Syntax Highlighter [copy or print]
  1. <fielddefinition>
  2.  <name value="displayname" />
  3.  <source value="=  { { JOIN ' ' [ name.given , { INITIALISE name.additional } , { UCASE name.family } ] } ?? 'New Entry' }" />
  4. </fielddefinition>

When unzipped into the userFields subDirectory the displayName field display:
Given Name = "Perry"
Additional Name = ""
Family Name = "Mowbray"
Display Name = "Perry MOWBRAY"

Given Name = "Sandra"
Additional Name = "Jane"
Family Name = "Mowbray"
Display Name = "Sandra J. MOWBRAY"

The easiest way to link between contacts is to drag the field to be linked to, onto the the field to be linked from holding down the ALT key. Linked fields can be referenced by Contact.ID or Contact.GUID and Field.ID or Field.Name, although they are always displayed as Contact.ID#Field.ID.

Next stop... list Panel  Thmbsup
« Last Edit: October 13, 2010, 08:25:44 AM by Perry Mowbray » Logged

Perry Mowbray
N.A.N.Y. Organizer
Moderator
*****
Posts: 1,807



Thoughtful Scribbles

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #31 on: October 13, 2010, 08:33:19 AM »

Hey Jim:

And I initially thought that the Formatted Name field would be kind of a "Display As" field, automatically filled by the other name fields that are manually populated, but that doesn’t seem to be the case. Or at least not yet - perhaps this is simply something that isn't yet implemented?

Have a look at the new version and the displayName userField attached to this post (or in the OP):
That file will modify the displayName field to dynamically display an aggregation of other fields. Is that what you meant? The source string could also be added to the defaultvalue if you didn't want it to be dynamic (just filled at creation time). The same can be done with any field...
Logged

Perry Mowbray
N.A.N.Y. Organizer
Moderator
*****
Posts: 1,807



Thoughtful Scribbles

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

Can you add a couple more fields

You may like to have a look at the beginnings of userFields:
Quote

This will allow you to create as many fields for your own use as you like  Wink

Of course... I will be adding more to the programme....

Logged

J-Mac
Supporting Member
**
Posts: 2,864


see users location on a map View Profile Read user's biography. Give some DonationCredits to this forum member
« Reply #33 on: October 13, 2010, 09:43:24 PM »

Hi Perry.

Regarding Display_Name, that is it basically. However please realize that there should be a setting where one selects how they want their contact names to display: First_Last, Last_First, etc. And the ability to set it separately for each contact if desired. Otherwise you end up with contacts displayed like: "The White Company" displaying as "Company, White The"

Thanks!

Jim
Logged

"I am getting so tired of slitting the throats of people who say that I am a violent psychopath."
Perry Mowbray
N.A.N.Y. Organizer
Moderator
*****
Posts: 1,807



Thoughtful Scribbles

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #34 on: October 13, 2010, 10:02:20 PM »

Regarding Display_Name, that is it basically. However please realize that there should be a setting where one selects how they want their contact names to display: First_Last, Last_First, etc. And the ability to set it separately for each contact if desired. Otherwise you end up with contacts displayed like: "The White Company" displaying as "Company, White The"

You can edit the file yourself to what ever you like Jim. Take the file supplied and change the source value to suit. You can also edit the value in ContactFX on an adhoc basis.

You can also create a new one called displayLastFirst and another called displayFirstLast and even another called displayCompany which could all have different source and/or default values, etc.

When contact templates are done I presume there will be a company template with a displayName set up to suit.

Also Note: That there is no requirement to have a given name and a family name in the record: Companies don't have those. ( embarassed But I think I set Given Name to be required once -- that's a left over from testing the max / min settings that'll I'll have to delete ) ... I imagine that on companies there will only be formatted name.
« Last Edit: October 14, 2010, 08:26:50 PM by Perry Mowbray » Logged

oblivion
Supporting Member
**
Posts: 354


see users location on a map View Profile Read user's biography. Give some DonationCredits to this forum member
« Reply #35 on: December 04, 2010, 02:28:03 AM »

I've been trying to find a good contacts program to replace the one in my Psion 5mx -- and, so far, haven't found anything I like.

Needs:

portability (yes, I know that's an intention!)

connectability: I'd like to be able to import and export data between other places I might have contacts info now. Google Contacts would be useful, for instance.

Search: a single search field that just matches anything, anywhere.

Links: click on an email address will start an email client, for instance.

Birthdays.

Localisation (eg UK dates and address formats)

If it can run under WINE, that's a bonus!

I will test anything with enthusiasm!
Logged

-- bests, Tim

...this space unintentionally left blank.
Perry Mowbray
N.A.N.Y. Organizer
Moderator
*****
Posts: 1,807



Thoughtful Scribbles

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #36 on: December 08, 2010, 03:13:37 AM »

Thanks for your suggestions, most of which fit within what I'm working toward (albeit slowly  embarassed)
Logged

Perry Mowbray
N.A.N.Y. Organizer
Moderator
*****
Posts: 1,807



Thoughtful Scribbles

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

 embarassed  What is it with NANY and AddressBooks? ContactFX will not get past 2.0 for NANY 2011... which raises the question: Should it be Withdrawn or Unfinished or just plain left as a Pledge? I'll keep working on it ('cos I love it  Wink )...

Apologies to all those expecting something tonight... I did get some more time not long ago and hoping that I could get a reduced version done, but it was too much rush and too many other competing pressures...  was hopefully something more not too far in the future.
Logged

J-Mac
Supporting Member
**
Posts: 2,864


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

Perry,

I appreciate all the work you've done thus far! As for continued effort, my feeling is that you must decide what you can handle considering all other aspects of your life. I'll support you and understand whatever you decide.   smiley

Thanks!

Jim
Logged

"I am getting so tired of slitting the throats of people who say that I am a violent psychopath."
Perry Mowbray
N.A.N.Y. Organizer
Moderator
*****
Posts: 1,807



Thoughtful Scribbles

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

Thanks Jim... but I wanted ContactFX as much as anyone else: my eyes were too big for my stomach though  tellme
Logged

davcom
Charter Member
***
Posts: 17


View Profile Give some DonationCredits to this forum member
« Reply #40 on: January 24, 2011, 07:18:42 PM »

Perry,
I've been looking for a functionally well-designed Contact List for years and sad to say there are none, although many are well-coded for what they do. I include the bloated Outlook through to much more humble offerings. I shall be following your development with this as often as I can. Just a few comments that perhaps may find a good home with you and your coding.

Bottom-line question as always is "what and how do you want to use the info contained in your <contacts> list".

It must be QUICK and show me within low seconds all records that contain the numbers and addresses associated with the search string entered AS YOU TYPE.
Search data could be any characters from any field apart from perhaps a Notes field unless you can index it well enough (as Evernote does) not to lose any speed despite data amounts increasing.

Apart from sitting at the keyboard to perform maintenance, all my queries need to be answered in seconds for things like :

A. Whose number is this that I have in my hand,
B. Who else is at this number I have.
C. What is xyz's mobile, or work, or fax number, or street address, or postal address, (allow flexibility in fields/columns shown when shortlisting search string results found)
D. What group or category does this contact belong to. (I have 1300 contacts across both business, leisure and multiple club activities (with booking contacts within the club activities))

For me that means the default view should be a List View (even if that needs to be 2-line per record with NO pretty lines separating the 2nd line), not a Form View. Leave Form View for maintenance, or an ability to quickly flick to it for adding notes possibly ?

1. Must have a (preferably single) hotkey (like FARR does) to open the running program. MUST be able to be brought up very quickly and simply. Loses major usefulness if it does not.
2. MUST have as-you-type shortlisting for all or any fields in every record in the database
3. One-click to open window when in systray (as Evernote does)
4. Single toggle button to switch Form/List View (preferably a hotkey within the program once its window has the focus rather than moving a mouse to click a button)

Examples of the functionality and responsiveness required can be found in software such as Evernote and Everything.
I use List Views much more often to aid in data maintenance too, rather than Form View.
« Last Edit: January 25, 2011, 12:23:14 AM by davcom » 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.109s | Server load: 0.11 ]