Jump to content

Recommended Posts

I wrote this application over the last couple of days because a friend was complaining that Windows needed a Roll-up button that minimizes a window to it's titlebar, aside from regular minimize.

Posted Image

Posted Image

(Note: you must actually activate a window to see the button.)

More than that - this button can be right-clicked to display and change information about a window quickly.

The information includes the basics like HWnd, Title, State(using state values, not flags), Transparency, Position, Dimensions and Processname/PID.

Note: You can find the Exit option by right-clicking the button as well.

***Grabby Movement***

To change the horizontal placement you can click the "grabby" button and move the mouse until the buttons are placed where you want them and then click the grabby button again to set them there.

Current Script Version - 16

RollupPro_16.zip

Function Credits:

  • _ReduceMemory - w0uter
  • WinGetTrans* - Valik
  • _ProcessGetName - Process.au3 UDF (Erifash?, Wouter?)
  • _ProcessGetPriority - Process.au3 UDF
  • _Win_TBHeight - Zedna - (v12 and lower - Prog@ndy, WinAPI.au3, Structures.au3)
  • _ProcessSuspend/Resume - The Kandie Man
  • _WinAPI_GetAncestor - PaulIA - WinAPI.au3
  • _WinAPI_GetClassName - PaulIA - WinAPI.au3
  • _WinAPI_PtInRect - PaulIA - WinAPI.au3
  • _WinAPI_GetWindowRect* - PaulIA - WinAPI.au3
* notes a function was modified in operation slightly.

5-5-13 Edit: fixed posted images.

Edited by crashdemons

My Projects - WindowDarken (Darken except the active window) Yahsmosis Chat Client (Discontinued) StarShooter Game (Red alert! All hands to battlestations!) YMSG Protocol Support (Discontinued) Circular Keyboard and OSK example. (aka Iris KB) Target Screensaver Drive Toolbar Thingy Rollup Pro (Minimize-to-Titlebar & More!) 2D Launcher physics example Ascii Screenshot AutoIt3 Quine Example ("Is a Quine" is a Quine.) USB Lock (Another system keydrive - with a toast.)

Share this post


Link to post
Share on other sites

OK, so the button is in the wrong place. It hovers over the minimize button, which is annoying.

Right-click the button and hit "change titlebar offset"

then increase the negative value to a larger negative value.

By default it's -74 (just left of minimize on "XP Classic" Visual Style)

but you could make it like -90 or so to fit your visual style.

Also, once this is changed, it will be saved in an INI for later so you don't have to continually change it

Edited by crashdemons

My Projects - WindowDarken (Darken except the active window) Yahsmosis Chat Client (Discontinued) StarShooter Game (Red alert! All hands to battlestations!) YMSG Protocol Support (Discontinued) Circular Keyboard and OSK example. (aka Iris KB) Target Screensaver Drive Toolbar Thingy Rollup Pro (Minimize-to-Titlebar & More!) 2D Launcher physics example Ascii Screenshot AutoIt3 Quine Example ("Is a Quine" is a Quine.) USB Lock (Another system keydrive - with a toast.)

Share this post


Link to post
Share on other sites

OK :)

By the way, your images aren't displayed, could be college blocking them..

Sighs, everybody picks on the free host. :(

Do these work instead? - second host doesnt allow off-site linking to images and this forum wont allow images relayed by PHP.

You'll have to make due without images if you can't see them in the first post already.

Edited by crashdemons

My Projects - WindowDarken (Darken except the active window) Yahsmosis Chat Client (Discontinued) StarShooter Game (Red alert! All hands to battlestations!) YMSG Protocol Support (Discontinued) Circular Keyboard and OSK example. (aka Iris KB) Target Screensaver Drive Toolbar Thingy Rollup Pro (Minimize-to-Titlebar & More!) 2D Launcher physics example Ascii Screenshot AutoIt3 Quine Example ("Is a Quine" is a Quine.) USB Lock (Another system keydrive - with a toast.)

Share this post


Link to post
Share on other sites

UPDATE:

-When clicking HWnd or other non-action options that normally copied, '&' characters that were used to shortcut keys are no longer copied into the clipboard.

-a Debug MsgBox is no longer shown after changing the position of the window


My Projects - WindowDarken (Darken except the active window) Yahsmosis Chat Client (Discontinued) StarShooter Game (Red alert! All hands to battlestations!) YMSG Protocol Support (Discontinued) Circular Keyboard and OSK example. (aka Iris KB) Target Screensaver Drive Toolbar Thingy Rollup Pro (Minimize-to-Titlebar & More!) 2D Launcher physics example Ascii Screenshot AutoIt3 Quine Example ("Is a Quine" is a Quine.) USB Lock (Another system keydrive - with a toast.)

Share this post


Link to post
Share on other sites

Great!, But the button is at the wrong place and it looks old, (I got xp)

Posted Image

Need any more clarity?

Edited by crashdemons

My Projects - WindowDarken (Darken except the active window) Yahsmosis Chat Client (Discontinued) StarShooter Game (Red alert! All hands to battlestations!) YMSG Protocol Support (Discontinued) Circular Keyboard and OSK example. (aka Iris KB) Target Screensaver Drive Toolbar Thingy Rollup Pro (Minimize-to-Titlebar & More!) 2D Launcher physics example Ascii Screenshot AutoIt3 Quine Example ("Is a Quine" is a Quine.) USB Lock (Another system keydrive - with a toast.)

Share this post


Link to post
Share on other sites

Update 7:

Added Grabby-Button movement,

simply click the grabby button once to have the mouse carry it to a new horizontal position.

(note: you must click the grabby button again to set the position)

I edited this post but somehow it went back one edit...? - Guess I'll edit it again.

Update 8:

Added Boundary checking on grabby movement:

If you go over an edge, the button will dock on that side.

If you go over the center, the button will dock proportional to the side it's closest to.

this will prevent hassling about with numbers just to get the dang thing to dock on the side you put it on.

Edited by crashdemons

My Projects - WindowDarken (Darken except the active window) Yahsmosis Chat Client (Discontinued) StarShooter Game (Red alert! All hands to battlestations!) YMSG Protocol Support (Discontinued) Circular Keyboard and OSK example. (aka Iris KB) Target Screensaver Drive Toolbar Thingy Rollup Pro (Minimize-to-Titlebar & More!) 2D Launcher physics example Ascii Screenshot AutoIt3 Quine Example ("Is a Quine" is a Quine.) USB Lock (Another system keydrive - with a toast.)

Share this post


Link to post
Share on other sites

Sorry for not posting back immediately about Update 9, I kinda dozed off and well...

Anyway,

Update 9:

Corrects a boundary conflict issue where the offset was reset by condition 1 of Update 8 but still checked under Condition 2 unnecessarily.


My Projects - WindowDarken (Darken except the active window) Yahsmosis Chat Client (Discontinued) StarShooter Game (Red alert! All hands to battlestations!) YMSG Protocol Support (Discontinued) Circular Keyboard and OSK example. (aka Iris KB) Target Screensaver Drive Toolbar Thingy Rollup Pro (Minimize-to-Titlebar & More!) 2D Launcher physics example Ascii Screenshot AutoIt3 Quine Example ("Is a Quine" is a Quine.) USB Lock (Another system keydrive - with a toast.)

Share this post


Link to post
Share on other sites

If a window is maximized, the vertical arrow icon does not appear. Is this normal?

BTW: nice script!

Thanks,

-John

Yes, I made it so it wont appear in maximize or minimize states.

Something about changing the height of a maximum-height window just seems dangerous/wrong to me.

Additionally, if you maximized more than 1 window and rolled them all up, they'd get lost under one another :)


My Projects - WindowDarken (Darken except the active window) Yahsmosis Chat Client (Discontinued) StarShooter Game (Red alert! All hands to battlestations!) YMSG Protocol Support (Discontinued) Circular Keyboard and OSK example. (aka Iris KB) Target Screensaver Drive Toolbar Thingy Rollup Pro (Minimize-to-Titlebar & More!) 2D Launcher physics example Ascii Screenshot AutoIt3 Quine Example ("Is a Quine" is a Quine.) USB Lock (Another system keydrive - with a toast.)

Share this post


Link to post
Share on other sites

BTW - as long as there is an icon saved as @Tempdir&'\rollup.ico' Rollup pro wont check it twice

- you can substitute in any custom icon you want

- on a future update I plan to just to include and reference the icon file directly so it'll be easier to customize


My Projects - WindowDarken (Darken except the active window) Yahsmosis Chat Client (Discontinued) StarShooter Game (Red alert! All hands to battlestations!) YMSG Protocol Support (Discontinued) Circular Keyboard and OSK example. (aka Iris KB) Target Screensaver Drive Toolbar Thingy Rollup Pro (Minimize-to-Titlebar & More!) 2D Launcher physics example Ascii Screenshot AutoIt3 Quine Example ("Is a Quine" is a Quine.) USB Lock (Another system keydrive - with a toast.)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • By nacerbaaziz
      hello sirs, please i created a tool witch get the focused control in a window and play a audio file linked with this controls
      e.g buttons, checkBoxes, radios, comboboxes, and others
      i know that their is a function that give us the control focus but it return the classNN
      i want to get the class name to use it with a switch and
      because their are more than class e.g button tbutton timagebutton tnewButton...
      please can any one help me to get the class name not the classnn
      thanks in advance
    • By ThePoro
      Hi everyone.
      I want to ask about this : 
      I want it runs from 1 to 100 and It opens 10 firefox profiles then access youtube. After I close a firefox window, the loop runs and wait for another window close until loop ends
      I have a loop like this.
      Func launch() Local $from = Int(GUICtrlRead($input1)) Local $to = Int(GUICtrlRead($input2)) If $to <> "" Then While $from <= $to Local $profile = $to _RunDos("start firefox.exe -p " & $profile & " -no-remote youtube.com") $to=$to+1 WEnd Else Local $profile = $to _RunDos("start firefox.exe -p " & $profile & " -no-remote youtube.com") EndIf EndFunc Is there any solution?
      Thank you!
    • By nacerbaaziz
      Hello my friends
      Can we create a single context menu on more than one item?
      For example, a context menu includes standardized options on more than one control, such as buttons or check boxes
      to Create a context menu on one item am using this function
      GUICtrlCreateContextMenu ($ HWND)
      How to link it with more than one element please?
      or if we can't do that, please give me a solution
      so i tried to add an context menus to all the controls but the script will be long, for that if their are any solutions i hope to give it to me
      thanks in advanced
    • By Rhidlor
      I was wondering if there was a library or something which provides the capability to Send() to inactive windows, and I know what you're thinking, I could just use ControlSend(); the reason I can't use that in this situation is because I need to hold down keys for specific prolonged periods of time. Also activating the window, Send()ing then de-activating the window isn't really an option here, I need the target window to always be in the background. I've looked around the forums for an adequate amount of time and didn't find anything useful, perhaps because the threads were all 10 years old, nevertheless, if anyone has any suggestions they would be greatly appreciated.
      Thanks!
×
×
  • Create New...