Sign in to follow this  
Followers 0
eukalyptus

IconDock - Mac style Icon toolbar

33 posts in this topic




#3 ·  Posted (edited)

Great stuff eukalyptus :)

The art of GDI+ programming can be learned by your code :)

Br,

UEZ

PS: 5* from me

Edited by UEZ

Please don't send me any personal message and ask for support! I will not reply!

Selection of finest graphical examples at Codepen.io

The own fart smells best!
Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!
¯\_(ツ)_/¯  ٩(●̮̮̃•̃)۶ ٩(-̮̮̃-̃)۶ૐ

Share this post


Link to post
Share on other sites
:) very nice :P:)

Share this post


Link to post
Share on other sites

AWESOME!!! Could I add a few requests?

1. Allow files and shortcuts other than an executable to work on the toolbar. ie. URLs, shortcuts(lnk), word documents, etc and display the icon based on the file association.

2. Allow topmost on/off functionality to support hiding the toolbar behind a window. I know hiding the toolbar is an option but some people will forget it's there. We're not all Mac users...yet :unsure:

3. Support .ini file configuration. (Add functionality to point it to a folder to display icons from folder contents. Quicklaunch style.)

4. Make it pick the winning lottery numbers because you need to win because this thing is AMAZING! Great work!

Share this post


Link to post
Share on other sites

Wow !

Graphics are beautiful and the effects are amazing ! Posted Image

Thanks !


AutoIt 3.3.14.2 X86 - SciTE 3.6.0WIN 8.1 X64 - Other Example Scripts

Share this post


Link to post
Share on other sites

Amazing!

You're the man!!!

A great job indeed eukalyptus.

Cheers


Old Scriptology

Visual Ping 1.8 - Mass Ping Program with export to txt delimited.

Desktop 2 RGB and YMCK - Pick a color in the desktop and get the RGB and YMCK code.

Desktop 2 RGB - Pick a color in the desktop and get the RGB code.

ShootIT 1.0 - Screen Capture full and partial screen

[font="'Arial Black';"]Remember Remember The Fifth of November.[/font]

Share this post


Link to post
Share on other sites

Cool Job :unsure:

Share this post


Link to post
Share on other sites

#12 ·  Posted (edited)

Great Job!

suggestion: Please give the user-defined tooltips. Now point to any Icon to display the same tip("SHELL32.dll"), if following $aIcon = SHELL32.dll

_IconDock_IconAddFile($hIconDock_1, $aIcon, 1, "_EventFunction", $IconDock_LBUTTONUP)

_IconDock_IconAddFile($hIconDock_2, $aIcon, 2, "_EventFunction", $IconDock_LBUTTONUP)

_IconDock_IconAddFile($hIconDock_3, $aIcon, 3, "_EventFunction", $IconDock_LBUTTONUP)

_IconDock_IconAddFile($hIconDock_4, $aIcon, 4, "_EventFunction", $IconDock_LBUTTONUP)

Edited by happytc

Share this post


Link to post
Share on other sites

#13 ·  Posted (edited)

---

Edited by playlet

Share this post


Link to post
Share on other sites
:unsure::>;) wow !! Amazing job.

Share this post


Link to post
Share on other sites

very very very nice !

Share this post


Link to post
Share on other sites

click right key on the dockbar using following code, cannot correct to display the "Config window", why?

#include <GuiConstantsEx.au3>
#include <GuiConstants.au3>
#include <WindowsConstants.au3>
#Include <Misc.au3>
#include "IconDock.au3"
 
 
HotKeySet("{ESC}", "_Exit")
 
Global $iIconSizeMin = 48
Global $iIconSizeMax = 96
 
Global $aIcon[8] = [7]
$aIcon[1] = @WindowsDir & "\explorer.exe"
$aIcon[2] = @SystemDir & "\taskmgr.exe"
$aIcon[3] = @SystemDir & "\write.exe"
$aIcon[4] = @SystemDir & "\notepad.exe"
$aIcon[5] = @SystemDir & "\osk.exe"
$aIcon[6] = @SystemDir & "\charmap.exe"
$aIcon[7] = @SystemDir & "\mspaint.exe"
 
Global $hIconDock = _IconDock_Create(0, @DesktopHeight - $iIconSizeMax - $iIconSizeMin, @DesktopWidth, $iIconSizeMax + $iIconSizeMin, BitOR($IconDock_Align_Horizontal, $IconDock_Center), $IconDock_Up, $iIconSizeMin, $iIconSizeMax, True)
 
_IconDock_BeginUpdate($hIconDock)
 
For $i = 1 To $aIcon[0]
        _IconDock_IconAddFile($hIconDock, $aIcon[$i], 0, "_EventFunction", $IconDock_RBUTTONDOWN)
Next
_IconDock_EndUpdate($hIconDock)
 
 
While 1
        Sleep(100)
WEnd
 
 
 
Func _EventFunction($hID, $iIconIndex, $iEventMsg)
        Switch $hID
                Case $hIconDock
                        Switch $iEventMsg
                                Case $IconDock_RBUTTONDOWN
                                        Local $moved = DockMoveBar($hIconDock)
                                        If $moved = False Then ; If $moved = true the bar was moved - don't open options.
                                                DockConfig()
                                        EndIf
                        EndSwitch
        EndSwitch
EndFunc
 
Func DockConfig()
        Local $hwdDock, $HRadio, $VRadio, $OKButton, $CancelButton, $msg
                
        $hwdDock = GUICreate("Dock Config", 280, 150)
        
        GUICtrlCreateLabel("IconSizeMin:", 10, 13, 80, 20)
        
        GUICtrlCreateLabel("IconSizeMax:", 10, 43, 80, 20)
        
        GUICtrlCreateLabel("Orientation:", 10, 83, 80, 20)
        $HRadio = GUICtrlCreateRadio("Horizontal", 100, 80, 100, 20)
        $VRadio = GUICtrlCreateRadio("Vertical", 200, 80, 100, 20)
 
        $OKButton = GUICtrlCreateButton("OK", 50, 120, 50, 20)
        $CancelButton = GUICtrlCreateButton("Cancel", 160, 120, 50, 20)
        
        GUISetState()
;MsgBox(0,0,"0k")
        While True
                $msg = GUIGetMsg()
 
                Switch $msg
                        Case $GUI_EVENT_CLOSE, $CancelButton
                                ExitLoop
                        Case $OKButton
                                MsgBox(0,"pressed", "Pressed OK Button")
                                ExitLoop
                EndSwitch
 
                Sleep(20)
                
        WEnd
        GUIDelete($hwdDock)
EndFunc
 
 
Func DockMoveBar($hwdGuiBar)
        Local $PosDiff[2], $WinPos, $WinPos2, $MousePos, $dll, $moved
        
        $dll = DllOpen("user32.dll")
        
        While 1
                $MousePos = MouseGetPos()
                $WinPos = WinGetPos($hwdGuiBar)
                $PosDiff[0] = $WinPos[0] - $MousePos[0]
                $PosDiff[1] = $WinPos[1] - $MousePos[1]
 
                While _IsPressed("02", $dll)
                        $MousePos = MouseGetPos()
                        WinMove($hwdGuiBar, "", $MousePos[0] + $PosDiff[0], $MousePos[1] + $PosDiff[1])
                WEnd
                Sleep(10)
                ExitLoop
        WEnd
        
        $WinPos2 = WinGetPos($hwdGuiBar, "")
        
        If ($WinPos[0] < $WinPos2[0] - 3) Or ($WinPos[1] < $WinPos2[1] - 3) Or ($WinPos[0] > $WinPos2[0] + 3) Or ($WinPos[1] > $WinPos2[1] + 3) Then
                $moved = True ; If the window was moved, don't run program on return.
        Else
                $moved = False
        EndIf
        
        Sleep(10)
        Return $moved   
EndFunc
 
Func _Exit()
        _IconDock_Destroy($hIconDock)
        Exit
EndFunc

Share this post


Link to post
Share on other sites

But if un-annotate this line: ;MsgBox(0,0,"0k")

all is ok, It's really surprising!

Share this post


Link to post
Share on other sites

Wow ! Just wow!!


[center]MsgBox_Tipped: Eye candy msgboxes/inputboxes/loginboxes. | CreateBlankBox: Semi-transparent layers with borders and rounded corners.[/center]

Share this post


Link to post
Share on other sites

Wow, very nice. Thanks for share man, this will be very usefull. :unsure:


When the words fail... music speaks

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  
Followers 0