|
Okay, I've kinda merged everyone's suggestions into the following.
My goal is to have everything visible regarding the configuration of the layers. So, I've redesigned the left side as follows (it's really too bad I can't FTP to my web site from work).
+- Layers -------------------+
| |
| +------------------------+ |
| | V B 1 (Woodland Tan) | |
| | V B 2 (No Color) | |
| | ... | |
| +------------------------+ |
| [Flip] [Mirror] [Restore] |
| Blur [000]^ [x] Visible |
| |
| Environment Colors |
| +------------------------+ |
| | list of colors that | |
| | match picture | |
| +------------------------+ |
| Other Palette Colors |
| +------------------------+ |
| | Colors not matched | |
| | from selected paint | |
| | color palette | |
| +------------------------+ |
| |
+----------------------------+
Initially, only the first listbox will be enabled.
The first list box contains a list of layers and each layer is preceded by a pair of icons indicating whether the layer is visible (the "V"), and whether it's blurred (the "B"). The selected color (if any) is indicated in parenthesis after the layer name. When a layer is selected in the list, the controls underneath will be enabled.
Under the list box is a row of buttons that allows the user to flip/mirror/reset the selected layer.
Next are the controls that allow the user to control blur and visibility.
Finally, the user can select the color from either of the two color listboxes.
Notes:
I'm anticipating that many of the guys that will be using the app won't be familiar (or at least not *as* familiar) with the various paint programs' handling of layers as all of us are. For that reason, I figure trying to emulate that kind of interface would take too long for the anticipated return regarding ease of use. Making things roll up/down and disappearing unexpectedly kinda bothers me, and IMHO disrupts usage flow to some degree.
Opinions, suggestions, ideas are now being fielded.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
|
|
|
|
|
That looks sensible. Everything is visible but contextualised via selection. I guess you'll always have reasonable real-estate down the left so using show/hide or pop-outs isn't needed.
Panic, Chaos, Destruction. My work here is done.
Drink. Get drunk. Fall over - P O'H
OK, I will win to day or my name isn't Ethel Crudacre! - DD Ethel Crudacre
I cannot live by bread alone. Bacon and ketchup are needed as well. - Trollslayer
Have a bit more patience with newbies. Of course some of them act dumb - they're often *students*, for heaven's sake - Terry Pratchett
|
|
|
|
|
John Simmons / outlaw programmer wrote: I'm anticipating that many of the guys that will be using the app won't be familiar (or at least not *as* familiar) with the various paint programs' handling of layers as all of us are.
Good point. I honestly didn't think of this initially. I do like your redesign layout though.
Just along for the ride.
"the meat from that butcher is just the dogs danglies, absolutely amazing cuts of beef." - DaveAuld (2011) "No, that is just the earthly manifestation of the Great God Retardon." - Nagy Vilmos (2011)
|
|
|
|
|
I forget what technology you are using but if its something like WPF you could have the colour selection on a rollout from the main listbox item. might be too fiddly though, would have to play with it to tell
as it is, how are you enforcing the behaviour of selecting 1 colour from 2 lists? and would a colour pallette of some sort not be more approprriate?
Pedis ex oris
Quidquid latine dictum sit, altum sonatur
|
|
|
|
|
GParkings wrote: I forget what technology you are using
It's WinForms.
GParkings wrote: as it is, how are you enforcing the behaviour of selecting 1 colour from 2
lists? and would a colour palette of some sort not be more appropriate?
I pass the entire list of available colors to the form. Each color item has a flag that indicates whether it was an environmental match. All environmentally matched colors go in the first color listbox, and the rest go in the bottom one. When one is selected from either listbox, the other listbox's selected item is cleared.
I want the user to be more apt to select from the environmental matches (that's the whole point of the app, afterall), so it's placed above the remaining colors listbox.
I've got it pretty much wired up at this point, and it's a lot cleaner than what I tried to do before.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
|
|
|
|
|
I've been trying to come up with a form that performs the following function:
The user selects a pattern which consists of one to six image layer files. Each files consists of a single-color area on a transparent background, and are overlaid on top of each other (in a specific order). What the user will be able to do:
0) Select a replacement color for the non-transparent portion on an image-by-image basis.
1) Blur an image (with a numeric value indicating the amount of blur to apply)
2) Select a layer to be used or not
3) Flip the image vertically
4) Mirror the image horizontally
5) The composited image is updated as the user changes settings.
Right now, I have this form[^].
The idea is that the user assigns a color by right-clicking each of the layer panels on the left side. the checkbox next to each of the layer panels is used to indicate which layer is affected by the three buttons (Flip, Mirror, and Restore).
When the user right-clicks on a layer panel, a borderless form that holds a listbox of available colors is displayed at the mouse position, and when selected, the color is displayed on the layer panel in the label that currently reads "No Color", and the name of the selected color will also be displayed in that label.
I toyed with using a listview instead of the layer panels, but the association between the listbox and a color selector was even more klunky than what I have now.
Opinions, options, suggestions are now being entertained.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
|
|
|
|
|
What you are effectively doing here is mirror the way that a graphics program such as Fireworks or Photoshop behaves. If you take a look at those applications, and have a play around with the way that Layers works, you'll get the general idea. Basically, you'd separate the layer out from the action, so you might end up with the following idea(mocked out in line art):
+-------------------------+
| Title |
| Layer 6 |
| Layer 5 |
| Layer 4 |
| Layer 3 |
| Layer 2 |
| Layer 1 |
+-------------------------+
| Add layer Remove layer |
+-------------------------+ I would make this a floating panel. Then, when the user selects a layer from this list, and a separate panel just details the options once; these options being tied to the selected layer.
|
|
|
|
|
I thought about that, but I don't have to allow removal/adding of a layer. The number of layers possible is 1 to 6, and the number of layer panels will refelct the available layers (if there are only 5 layer images, only 5 layer panels will be displayed.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
|
|
|
|
|
http://www.codeproject.com/Messages/4037183/Design-Quandary-v2.aspx[^]
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
|
|
|
|
|
Sorry, just got back from lunch. Anyway, what you have got there seems a reasonable compromise.
|
|
|
|
|
If I am understanding your question correctly...
You could try emulating the "standard" layer UI from most photo editing software (i.e. photoshop or PSP). Each layer is an item in your list and each layer can access the same set of properties and attributes.
[edit] This UI style for layers hasn't really changed because it uses very little real estate. IMO, your current app, is using way to much space up on the left for the configuration controls.
[edit 2] I just noticed that your Blur setting is not a slider control. A slider control is better for image apps because it allows the user to visualize the change difference better then entering in numbers only.
Just along for the ride.
"the meat from that butcher is just the dogs danglies, absolutely amazing cuts of beef." - DaveAuld (2011) "No, that is just the earthly manifestation of the Great God Retardon." - Nagy Vilmos (2011)
modified 28-Sep-11 6:44am.
|
|
|
|
|
Great minds, and all that.
|
|
|
|
|
Back at you. Didn't see your post till after I submitted mine.
Just along for the ride.
"the meat from that butcher is just the dogs danglies, absolutely amazing cuts of beef." - DaveAuld (2011) "No, that is just the earthly manifestation of the Great God Retardon." - Nagy Vilmos (2011)
|
|
|
|
|
Slacker007 wrote: This UI style for layers hasn't really changed because it uses very little
real estate. IMO, your current app, is using way to much space up on the left
for the configuration controls.
I agree that it takes up a lot of room. That's why I asked this qeustion.
Slacker007 wrote: I just noticed that your Blur setting is not a slider control. A slider
control is better for image apps because it allows the user to visualize the
change difference better then entering in numbers only.
I was thinking about an up/down control, but yeah, I agree.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
|
|
|
|
|
John Simmons / outlaw programmer wrote: up/down control,
That would work as well.
Can't wait to see the full app when you have finished.
Just along for the ride.
"the meat from that butcher is just the dogs danglies, absolutely amazing cuts of beef." - DaveAuld (2011) "No, that is just the earthly manifestation of the Great God Retardon." - Nagy Vilmos (2011)
|
|
|
|
|
http://www.codeproject.com/Messages/4037183/Design-Quandary-v2.aspx[^]
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
|
|
|
|
|
First thing that springs to mind is that you are repeating the same collection of controls multiple times.
I would have a listbox of layers and have the colour/visibility/blur property controls only once, populated depending on the layer selection in the listbox.
This would also allow multi selection of layers or operations such as mirroring
Pedis ex oris
Quidquid latine dictum sit, altum sonatur
|
|
|
|
|
http://www.codeproject.com/Messages/4037183/Design-Quandary-v2.aspx[^]
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
|
|
|
|
|
As with Pete and Slacker, separate the selection of the layer from the action and no action is available unless a layer is selected.
I also wonder if you can visually show the blur with the colour in the layer selection, maybe dither out the border based on the blur?
Does the blur need a checkbox AND a value, shirley if it's blank / zero there is no blur?
Using a Pete UI:
+-------------------------------------------------------------------------------------+
| Hide a Gun v [] x |
+-------------------------------------------------------------------------------------+
| Layer: ----+ |Weapon v| |Pattern v| |
| 0. Blue | +-------------------------------------------------------------------+ | |
| *1. Red | | | |
| 2. White | | | |
| 3. --- | | | |
| 4. --- | | | |
| 5. --- | | ,--------------, | |
| 6. --- | | L.,------, ,--' | |
| -----------+ | ______/(______( (________,------==========. | |
| | (###========\_________--===-----=======================| | |
| Visible x | ,',""""\ ,-+-_ __,___,____,____,____,___| | |
| Blur 17 | |=| \ \ )_) ( )__,____,____,____,____| | |
| | |=| \ \ | | )====) `:__ | | |
| | |__\ \ \_) | /====/ \ | | |
| | `----' /====/ \[JW]| | |
| | Flip | | `-._/ :____| | |
| | Mirror | | | |
| | Restore | | | |
| | | |
| +-------------------------------------------------------------------+ |
| | Reset | | Cancel | | Okay | |
+-------------------------------------------------------------------------------------+
Panic, Chaos, Destruction. My work here is done.
Drink. Get drunk. Fall over - P O'H
OK, I will win to day or my name isn't Ethel Crudacre! - DD Ethel Crudacre
I cannot live by bread alone. Bacon and ketchup are needed as well. - Trollslayer
Have a bit more patience with newbies. Of course some of them act dumb - they're often *students*, for heaven's sake - Terry Pratchett
|
|
|
|
|
ASCII Art is a paint, ain't it?
http://www.codeproject.com/Messages/4037183/Design-Quandary-v2.aspx[^]
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
|
|
|
|
|
My first thought ... before reading the other responses to this message ... was that the end-user should add "layers" via a menu, or other UI element, until the limit is reached. Which might leave more room for UI ?
But, if it is important to you that all six possible layers be presented, then an alternative to going the route of emulating "layers" in PhotoShop, or whatever, might be to use an "Outlook" style "TaskBar" control, where one, selected, layer ui expands full-size, and the others are in their "collapsed state."
This type of control is so easy to simulate in WinForms, just using contained panels inside a panel, docking, and a mousedown event for all contained panels that adjusts their vertical sizes.
It seems to me that having a series of checkboxes that control only whether the "layer" has the possible transformations (Flip, Mirror) applied to it is kind of "counter-intuitive." I think I'd either move those checkboxes inside the layer UI's, and title them 'Allow Transform' or come up with ?
Having a 'Restore' button next to the graphic transform buttons also doesn't feel quite right to me; what about putting that next to the 'Save' button ? I should disclaim this suggestion by saying I don't really know if 'Restore' applies only to 'undoing' the last transform, or more 'global' application state.
best, Bill
"Beauty is in the eye of the beholder, and it may be necessary from time to time to give a stupid or misinformed beholder a black eye." Miss Piggy"
|
|
|
|
|
http://www.codeproject.com/Messages/4037183/Design-Quandary-v2.aspx[^]
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
|
|
|
|
|
Hi,
We are studying the implications of upgraing our software for use on Windows 7. We currently support XP only. We provide bespoke software that acts as cash register for a certain industry. None of our customers has their cashregister connected to the internet, a situation that will not change much in the forseable future. We distribute all our software by CD. Say we register a certificate suitable for signing, and sign our binaries. How does Windows 7 check the certificate, and whether or not it is revoked without an internet connection.
Is there another way of avoiding the anoying warning boxes.
Regards,
Bram van Kampen.
Bram van Kampen
|
|
|
|
|
There are so many books/standards on how to document architecture. But I am not aware of any book/standard on how to document (detailed) design.
Example:
The architect creates on documentation for "OurServerComponent" with all the high-level views according to any standard ( e.g. IEEE1471).
But where and how do I have to document the low-level-design of my own 5 classes?
modified 24-Sep-11 13:00pm.
|
|
|
|
|
Visual Studio class diagram, Rational Rose, UML diagramming tool...not sure if that is what you are after
CodingYoshi
Artificial Intelligence is no match for Human Stupidity.
|
|
|
|
|