Photoshop toolbar

Discussion in 'Artists' started by lblb, Feb 3, 2012.

Thread Status:
Not open for further replies.
  1. thatcomicsguy

    thatcomicsguy Pen Pro - Senior Member Senior Member

    Messages:
    3,286
    Likes Received:
    2,345
    Trophy Points:
    231
    Actually, I was thinking now more along the lines of a little form which comes up as another GUI when you hit a button, which shows a full layout of the bar with little spots where you can enter your preferred key strokes and other information. The same principle as in other programs which allow you to define your own keyboard commands.

    The AutoHotKey command Gui_submit can take this user data, convert it to the variables needed, and will even let you save the data. (There are bits of sample code on that linked page which show how it's all done.)

    Mind you, it looks like a biggish job, but it's clearly possible. It could be strapped right on top of the existing bar script.

    What do you think lblb? Worth taking a crack at?


    EDIT: I just took a quick look, thinking somebody must have already built something like this, and I came across an all-purpose GUI maker for AHK, called, "Smart GUI Creator"

    http://www.autohotkey.com/forum/topic775.html

    It's got a bit of a learning curve though; by no means intuitive. Still, it offers drag and dropping of buttons and such. I played around with it and found several neat features, but I'd have to read the manual to work out how to get it to do what we'd need.

    Either way, everything is possible here.
     
    Last edited by a moderator: May 18, 2015
  2. Steve B

    Steve B Moderator Moderator

    Messages:
    3,384
    Likes Received:
    565
    Trophy Points:
    181
    Ah, yes, that GUI does sound very cool. I'll admit that I simply don't have the time right now to learn something like that. I'm happy to be a tester and provide input on how things function and what might be the most useful setups though.

    Frankly, even that's taking up more time than it should for me, but it's a lot of fun, and I could see how this would be very very useful in the end. You guys are awesome.

    BTW, the mockup I drew up is now attached to my previous post on page 6. So you can sort of see what I was talking about there.
     
  3. lblb

    lblb Scribbler - Standard Member Senior Member

    Messages:
    1,198
    Likes Received:
    242
    Trophy Points:
    81
    thatcomicsguy,

    1) I was busy trying to figure out all the ArtRage stuff so I hadn’t had a chance before yesterday to look at the most recent version of your toolbar. Man, you did a fantastic job cleaning up and ordering the code!
    2) To make sense of all the different buttons, in the new file I uploaded yesterday I’ve started to change the labels. For example, now the PS buttons are named something like PSxy, where x and y are the row and column, respectively. Also, the states are now statexyz, where z is the state’s ever increasing number. I still may try to make it better but for now this has helped me a lot keeping track of it all. (And also, I’m not completely done changing the labels... it was getting late yesterday and I was fed up of looking at txt files!)
    3) What you thought of for a customization interface sounds like it could be great! Now the implementation may be more difficult... For now with toolbars of version 1.x, I would say that priority 1 is ironing out the basic stuff. Then I think priority 2 for toolbars 2.x would be to have them toggle automatically when the active program changes. And then for 3.x, it would be to come up with a way to make them easily customizable. The main reason for this order is the learning curve!
    I’ll think more about what you suggested (you really do have some great ideas!), but probably won’t have time to really try anything soon.
    The main difficulty I see is that the way it’s set up now, when you add a button, the button’s got to be hidden/shown at all kinds of places in the code. So coming up with a program that will do this reliably seems challenging for me for now. Although getting a systematic numbering system (kind of what I describe in 2) above) may go a long way in changing this.
    4) From all the fooling around that I did in the last few days, I think that an eventually better solution (for both customization and automatic toggling) could be to have different panels (i.e. different child gui’s) inside a parent gui. That’s doable but is still a bit out of my reach right now. Using something like that, going from one toolbar to the other would just involve switching between different child giu’s, instead of toggling individually each button through different states like the code is doing right now (and which really makes the code quite complex).
    5) I did look at Smart Gui Creator when I was starting to learn all this. It’s fantastic to shape up the general layout and has many great functions. However, from what I’ve seen, it just positions the different elements on the gui, i.e. you still have to open the ahk file and adjust the coding and actions of each button. But I’ll have to play with it a more.
    6) Something else I was thinking of trying: there is a toolbar out there called FunkyBar that has many of the features we want. I may just send an e-mail to the developer to see if he is willing to share the code. Although I’m guessing that it’s probably not a AHK script. And I know absolutely nothing about programming outside of AHK...
    7) I don’t know if you caught it among all the posts that we exchanged about the ArtRage stuff, but I came up with a way for buttons to keep sending commands as long as the button is pressed. I haven’t played with it too much yet but it works great. For example, by using a delay of about 70 ms between commands, it makes the zoom in/out buttons in Photoshop act like pretty cool automatic zoom buttons. See post #47.
    8) Also, it’s less interesting but it may be useful in terms of saving a little space: in post #55, I’ve come up with a way for buttons to send different commands depending on if you left- or right-click them. The coding is a bit unusual, but we can always discuss if you want to explore that more.

    Steve,

    1) I think the hide arrows problems that you had with the ArtRage toolbar are solved in the version of thatcomicsguy toolbar I uploaded yesterday (he solved that bug, not me.) So it shouldn’t be a problem to extend that to all other toolbars (and it's pretty easy to see in the coding what caused your problems).
    2) If that's something desirable, I think it would be easy to have the program become the activated window when you choose a program in the toolbar menu button.
    3) Thanks for the image and all the other info. Shouldn’t be too difficult to address the lasso problem. Keep sending ideas this way! It sure helps me learn about AHK!

    Now if I could just find some time to explore all these cool ideas!
     
  4. Steve B

    Steve B Moderator Moderator

    Messages:
    3,384
    Likes Received:
    565
    Trophy Points:
    181
    Oh, I agree- thatcomicguys toolbar has some nice features in Sai. I saved it on my desktop, because it's the only version of our set that currently really works in Sai. It's missing a number of features that you and had have been working on in Artrage though. It would be nice to pull the two together (said the guy not actually writing the script).

    I really like your menu idea, and the repeat button push ability (which will be great for Zoom as well as Resize in Sai). I also think we've been ironing out a lot of details about how the specific buttons work- the 70 ms delay between repeat button pushes, as well as the appropriate toggle on/off ability depending on the key. That sort of stuff.

    I agree that once we've really set the AHK script to work really smoothly in Artrage, I would imagine a lot of that could just get ported over to Sai/Firefox, etc. with some minor tweaks because of the way the programs work.

    One thing that we never did get ironed out in Sai (I think) is that if you decided to press F11 and go full screen, it was hiding the AHK toolbar. Of course, I could just not go Full Screen, but that's really a nice detail on a small 12" screen.

    Thatcomicsguy, did you iron that issue out?? I don't remember.

    Anyways, I probably should focus on Artrage for now. Well, lunch if over. Gotta head out.
     
  5. lblb

    lblb Scribbler - Standard Member Senior Member

    Messages:
    1,198
    Likes Received:
    242
    Trophy Points:
    81
    Steve, when I have time next, I'll try to put together a Sai/ArtRage toolbar so that you can use it and really test the dual toolbar concept and test out all the functions that we figured out previously. I'll probably leave out the secondary layer/controls panels for now, but when I have time it shouldn't be too complex to add them.
    This is indeed taking more time than I initially thought, but I'm not complaining: I'm having a lot of fun and my AHK knowledge is light years away from what it was before starting this!
     
  6. Steve B

    Steve B Moderator Moderator

    Messages:
    3,384
    Likes Received:
    565
    Trophy Points:
    181
    Cool. Glad to hear its fun. That's the part that worried me-- who'd want this to feel like work? Blegh.
     
  7. thatcomicsguy

    thatcomicsguy Pen Pro - Senior Member Senior Member

    Messages:
    3,286
    Likes Received:
    2,345
    Trophy Points:
    231
    @Steve B:

    I took a look at the tool bar sketch you offered. It covers a lot of ground.

    One thing I don't understand is what it offers, (in Artrage) over the native tool system. It seems to duplicate functions and features which are already optimized for stylus input.

    For Photoshop, there's no on-screen undo button, neither is there a way to access certain commands without two hands, which makes an on-screen toolbar useful for me. Also, I like to be able to get rid of all those screen-hungry pallets. SAI is similar in its awkward, canvas-wasting layout, so again a low-profile toolbar is useful. (My personal version is even a couple buttons smaller than the one I posted.)

    I don't use Artrage, but from what I've seen, it has a really well-engineered user interface. But then, maybe I'm missing something. So I'm just wondering if it's really that bad that it needs outside help from a DIY toolbar?

    Just curious. :)
     
  8. Steve B

    Steve B Moderator Moderator

    Messages:
    3,384
    Likes Received:
    565
    Trophy Points:
    181
    It's a reasonable question. Of the three programs, Artrage easily has the most tablet friendly GUI. Bar none. I really came into this process most concerned about getting around in Sai better. Even so, Artrage has it's issues.

    I've attached a jpeg of a screen shot while using Artrage, with various menus open. I don't normally work like that, but it can occassionally get crowded. OR, you spend a reasonable amount of time opening and closing them, moving your hand across the screen, etc. The tool selection and resizing process IS very easy with Artrage, but getting into Layers, making selections, etc and changing the stuff I've mentioned as wanting in a Layers Button Array in AHK is actually something of a pain, IMO. The issue? The GUI is really pen friendly, but not really user modifiable. Comparatively, Painter is a joke it's so messy, but it's also very customizable, with the ability to make buttons that do shortcuts to menu items, etc. That's very nice. Not so in Artrage.

    The idea behind the slighty expanded version of the AHK setup was to think up a way where I could easily access 90% of what I'd want without ever having to exit Full Screen mode. To me, that's worth giving up an inch on the right side of the screen. Being right handed, it's also more ergonomic to have everything to the upper and middle right, where I can easily and quickly tap things while working. Artrage, for example, has the tool picker and resizer in the bottom left, which isn't very helpful at all. You can "tear it off" the corner, rotate it, and put it in the upper right, but then a lot of stuff is sort of "upside down".

    The other thing is that Artrage binds a lot of stuff to modifier keys + pen dragging. This is very cool with a keyboard, but otherwise useless to me.

    SO, the usefulness of things like having a button for a contextual Color Picker that opens at the tip of my pen, the Resize + Drag option, the Zoom + Drag option, the straight line option, the Rotate with Drag option, etc. These are nice to have as a simple button without needing the big compass out. I actually like the big compass thingy, but it goes away in Full Screen, which is a shame. Artrage isn't really designed to take advantage of that. I wanted the buttons for the Layers stuff because I've been having to go into the menus every time I've wanted to Select Layer contents, then to Invert the Selection, etc. Ugh. Once I'd gotten that far, I figured it'd be nice just to have a few buttons for the tools I most often use, so I could paint with a 1-button pen (without Stroke It) and still able to switch tools on the fly, resize my eraser, etc. etc.

    The truth is that if I was only doing black and white line work, I wouldn't need anything more than the "main" ahk panel. But if I'm doing color work, the layer seletions, textures and stencils, and the blenders/brushes, etc. become much more important. Thus the desire to try and make AHK quickly and easily modifiable with the secondary Tool and Layer AHK Panels that one could "roll out" or hide, depending on if one-- a) had a 2-button pen, b) was doing black and white line work only, or c) was doing color work.

    Phew. I think that's the gist though. The loss of about a 1" wide area of space with the extra buttons just seemed worth the benefits of quick, customizable, and ergonomic movement between all the commands and tools I most commonly use. I don't think it'll be as essential as something like this is in Sai, but I think it'll help make things smoother.
     

    Attached Files:

    thatcomicsguy likes this.
  9. lblb

    lblb Scribbler - Standard Member Senior Member

    Messages:
    1,198
    Likes Received:
    242
    Trophy Points:
    81
    So what have we learned today? Here goes:

    1) Doing some AHK programming after a wine-happy dinner with friends is not very productive. It's funny, but not very productive.
    2) And apparently it may even cause the death of once-popular singing divas.
    3) The speed of the toolbar is barely affected by having more and more layouts. Which is good. However the loading time becomes much longer: with five different layouts in the Menu options, it takes about 10 seconds for the toolbar to appear once the ahk file is launched. But I guess this is kind of ok: I guess the idea with the toolbar is to start it once, then keep it around in the minimized state when not in use. I'm already thinking of ways to go around this limitation, but that will have to wait a bit.

    I've been working on a toolbar with five programs (for now they are Sai, PS, Art Rage, Sketchbook Pro and Firefox, but that can easily be modified). Even though I said earlier that I would work on a Sai/Art Rage dual toolbar, it's actually much more efficient for me to start with many layouts, then eliminate the unwanted ones later on. A few questions for Steve:

    - What state do you want the toolbar to start in? Art Rage?
    - I was looking at your mockup drawing. Would it be better to swap the Menu and Roll up/down buttons? This way, when you minimize it only the top row would be visible.
    - Would it be easier to use the toolbar if the Layers and Tools buttons had L and T on the buttons instead of arrows?
    - In what order do you want the programs to appear in the Menu?
    - Leaving the Layers and Tools subpanels out for now, can you tell me what buttons you would like on these very preliminary versions of the Sai and Sketchbook Pro toolbars?
    - Would you be willing (you can say no, I would certainly not be offended!) to create images for the buttons on the Layers subpanel? I don't really have any idea what the images should look like! Or maybe just text on the buttons (which I could easily do)?
    - In your mockup for Art Rage, the "straight line" button is equivalent to holding down Ctrl, right? In this case, would it be better for this button to be a simple Ctrl toggle button? If it's timed (or something like that) it would probably only be good for one line, and then you'd have to go and hit the button again for every straight line you want to draw. Maybe I'm wrong, but it seems that in most cases you won't just want to draw only one straight line... Can you think of a better system than a Ctrl toggle?
    - For Art Rage, since so many functions are associated with right-click, would it be better to have two different layouts for the two pens you have? For other programs also?
    - For Art Rage, where do you find the Hide Layers function (the one that has not hotkey associated with)? There are some ways in AutoHotkey to actually dig through menus and select items even if they don't have hotkeys. I'm not promising anything (and don't know yet how to do that!) but I could try a few things.
     
  10. thatcomicsguy

    thatcomicsguy Pen Pro - Senior Member Senior Member

    Messages:
    3,286
    Likes Received:
    2,345
    Trophy Points:
    231
    @Steve B:

    So it sounds like what you're saying is that once you get used to Artrage, the shortcomings in its GUI begin to make themselves (annoyingly) apparent.

    Do they even bother to ask artists what they need or do they just run on guess-work over at the big software houses, I wonder?

    Sheesh.

    It also sounds like the best thing for any program is lots and lots of user-programmable features. Windows, as an OS, would do well to incorporate a very user-friendly version of something similar to AHK in its basic function; let users make their own GUI systems with drag&drop ease, applicable to any program.

    Whatever. There's probably a reason that won't happen. And probably it's the sort of reason Steve Jobs would have been best able to explain, (with the benefit of some hefty reality-distortion, natch.)

    Thank-goodness for DIY people.
     
Thread Status:
Not open for further replies.

Share This Page