1 2 Previous Next 26 Replies Latest reply on Jan 18, 2007 3:53 PM by falazar

    Web Console: Context Menus and Navigation

    dmlloyd

      Tom noted to me that the context menus are confusing and annoying (I'm heavily paraphrasing here), and I happen to agree.

      His suggestion is to use the largely empty top area for navigation. I think that's a good idea, but I also think there needs to be a way to deal with the "two-dimensional" aspect of the jpdl domain model.

      What I mean is this: you can be working in the context of a process definition, a process instance, a task definition, and a task instance; in addition it may make sense to make a context based on the current token.

      Now bear with me here, it gets a bit confusing. Having a process instance implies a process definition. Having a task definition implies a process definition as well. Having a task instance implies both a process instance and a task definition. So, given the context of a task instance, one could navigate "up" to the task instance, or "up" to the process instance. And both make sense; if someone wants to examine the task definition for their task, they should be able to. And if someone wants to look at the process instance, maybe to see what all the tasks are on the process, that's a logical navigation direction as well.

      So what I propose is to have two rows of navigation that could look something like this (please forgive this dumb ugly mockup):

       Process "websale" version 1 ID 7 Process Instance ID 45
      
      
       Task "Collect Money" ID 12 Task Instance ID 56
      


      I can make it look a lot nicer than that though... I hope. :-)

      Opine at will.

        • 1. Re: Web Console: Context Menus and Navigation
          tom.baeyens

          i would put them all in one line, i think.

          • 2. Re: Web Console: Context Menus and Navigation
            tom.baeyens

            one more thing. in my environment, while testing the alpha2 release, the "More Info needed" button still doesn't work.

            no prob. i'm going to release anyway, but please have a look at it so that it's fixed by next release

            • 3. Re: Web Console: Context Menus and Navigation
              dmlloyd

              I fixed the problem. It was a combination of the transition buttons "forgetting" their transition between rendering and form submission, and some invalid transitions in the forms themselves. Also, the process instance summary page had a bug in it that caused you to get dumped into a broken screen under some conditions. Anyway the whole websale process works for me now. I do have some unrelated local changes, so let me know if anything is broken. I think I got it all.

              • 4. Re: Web Console: Context Menus and Navigation
                dmlloyd

                Putting all the context menu items on one line isn't going to work - there's just too much information to make it look nice.

                I think that the red "swoosh" is going to have to go. Just having the logo on the left side, I can make a nice heirarchy of horizontal menus that are above the "main" content area. I'd like to do it one of two ways: either have the high-level items across the top (process, process instance, task, task instance), with the next layer switching to the appropriate submenu on mouseover or click; or I can have one row per high-level item, with menu options extending to the right.

                Personally I think that DHTML menus are annoying because it is rare that they work properly in all browsers (and in this case, I'm willing to settle for IE and Firefox). But I'd rather do the two-level menu I described above than DHTML/javascript dropdown menus. Dropdown menus are difficult to implement correctly and can be very obnoxious for users.

                • 5. Re: Web Console: Context Menus and Navigation
                  tom.baeyens

                  actually i wouldn't use DHTML menu's either.

                  the idea that i had was that you just have one link per context menu. and that all the actions are in the page content. meaning that when you click on the task instance link, you get to see the task instance form + links like reassign and other task operations are available somewhere in that page.

                  • 6. Re: Web Console: Context Menus and Navigation
                    kukeltje

                    Hmm.. no dhtml menus? We use lots of them and never had any problems. I'd be happy to try something if there are some directions given.

                    One other remark, I (and I'm not alone in this) hate jumping items on the screen. e.g. the message that is displayed if you just save some form, makes the form jump down.

                    I agree with Tom that some page related actions are in the page. Reassign could be one of them that is accesible directly. Some of the others might be in a single dropdown menu (look at alfresco) or even a context-sensitive right mouse button. People are not realy used to that in webpages, but in the apps that I've encountered this, I got accustomed to it real quickly

                    • 7. Re: Web Console: Context Menus and Navigation
                      dmlloyd

                      Ok, maybe I have a solution that works for everyone.

                      On the left the menu items will look like:

                      Task: start
                      Definition View
                      Instance View
                      Process: simple
                      Definition View
                      Instance View
                      Main
                      System View
                      User "bert"
                      User View
                      Log Out

                      The indented items are menu items, and the other items are headings (they cannot be clicked).

                      This menu is always the same, nothing moving, disappearing, or reappearing. If no task is available, the corresponding menu items are disabled and the heading reads "No task available".

                      The views contain all the information and actions for the object it represents. The User View would have the things like the user task list (I heard someone refer to that as the user's "Inbox"; I like that notion) and group task list, and ultimately possibly some identity management stuff.

                      System View is all of the global information, including searching for processes and any other global maintenance.

                      Task Definition View can give information about a task definition, as well as statistical information or reports that are specific to a task definition.

                      Task Instance View would let someone work with a task instance, including updating the task form, reassigning the task, viewing comments, etc.

                      Process Definition View would give overall information about the process and any reports relevant on a process level.

                      Process Instance View would allow you to look at the process instance and its constituent tokens, to examine the state of a process and possibly to deliver signals to a token that is blocking on a node.

                      I modeled it up in the menu and content areas and it looks better, or at least I think so. Does this work for everyone?

                      • 8. Re: Web Console: Context Menus and Navigation
                        kukeltje

                        I would put the user view first, task second, process third and main last.

                        Besides that, is there some difference betweeen what is seen if you are in different roles (admin, participant, manager??)

                        • 9. Re: Web Console: Context Menus and Navigation
                          dmlloyd

                          No difference right now. However, I think it might be very reasonable to restrict the "participant" role to limited versions of each view (for example, User View might only contain the task lists, System View could only contain a process list, and Process Definition View might contain only the ability to view summary information and start the process running).

                          This is easily accomplished by using the standard disabled="#{identityBean.participant}" kind of mechanism on any component that is to be rendered inaccessable to a role. I've left that task as something that can be put off, because it is simpler to do. At some point (soon) I want to be able to say, "this is the functionality that will be in 3.2.0". If roles don't make it in, I see this as less detrimental than if key content is left out.

                          • 10. Re: Web Console: Context Menus and Navigation
                            kukeltje

                            could not agree more ;-)

                            • 11. Re: Web Console: Context Menus and Navigation
                              tom.baeyens

                              i would still would not use fixed context menus that are most of the time disabled.

                              i think that 4 links can be easily fitted on one line as the first line in the content.

                              but all arguments pro and con have been discussed. so you should just decide what you think is best and go ahead.

                              • 12. Re: Web Console: Context Menus and Navigation
                                kukeltje

                                Tom, I agree, I misinterpreted David's 'disabled'. MyFaces also has a 'rendered=true/false' which would do the job. You should not have lots of disabled menuitems if you are a regular user.

                                • 13. Re: Web Console: Context Menus and Navigation
                                  dmlloyd

                                  Yes, that is what I meant - though like I said, it's trivially easy to switch back and forth. They should only be visible if there is some chance that they would become active.

                                  • 14. Re: Web Console: Context Menus and Navigation
                                    dmlloyd

                                    I've committed the bulk of these changes. Currently searches look really ugly, but that's a temporary situation.

                                    Also the System View is pretty much turned off until the search changes are made. Because of this I've left some of the links as they were.

                                    As always, direct abuse to me via the forums.

                                    1 2 Previous Next