topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Tuesday April 23, 2024, 6:28 pm
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Markham [ switch to compact view ]

Pages: prev1 2 3 [4] 5 6 7 8 9 ... 15next
76
Circle Dock / Re: Crash with circledock parameters dock
« on: May 02, 2010, 10:20 AM »
I have found and fixed that problem. Please re-download and install over you existing version.



Mark

77
Circle Dock / Re: Auto-Rotate
« on: April 29, 2010, 01:42 AM »
I will look into this but promise nothing. I foresee several problems though this first of which is distraction: a constantly moving part of the screen is going to attract they eye. The second is speed related: the more Dock Items a dock contains, the longer it takes to paint the Dock. And thirdly it will be a drain on CPU resources - you certainly wouldn't want to enable such a feature on a Netbook!

If it does get included, it will be a version 2 enhancement.



Mark

78
Try clicking the right-mouse button on the Centre Button, Sarge! That's where the new options are (as well as in main settings). :greenclp:

79
Update:

Just added the ability to hide the Sidebar gadgets. This means one can now have a completely clean Desktop, should one so desire!

This option is greyed-out for XP users as there is, of course, no Sidebar for that OS.



Mark

80
Ummm... Sarge, I know you put a lot of work into this but hiding Desktop Icons is, in fact, a new feature in v1.56 and works in a very similar way to the "Hide Taskbar" functionality. In other words, you can set the defaults in the main settings dialog but have the option of toggling on/off using the Centre Button's context menu.

I have to say that this new feature nearly didn't make it. I've had it working for XP and Vista for some time but it wouldn't work under Windows 7 so I had to come up with a new method for that OS (which also, incidentally, works for Vista too but not XP).

I may also add the ability to toggle the Sidebar gadgets on/off as well - of course that won't apply for XP.



Mark

81
Well this Poll has been interesting as it shows that over half of you are, or will be, using Windows 7 with a bias towards the 64-bit version.

However, by far the largest numbers of downloads over the last few months have been by users with XP installed.

Both these conflicting facts will be taken into account in our future development work.



Mark

82
I have added the more useful part of what you've asked for. If you hold the CTRL key down whilst dragging one or more files and drop it/them on a Dock Item, that Item will be executed once (or more times) with the name of the file passed to it as a Command Line Parameter. This will only work for non-Folder targets and no attempt is made to check that the dropped file is of a type acceptable to the Dock Item or that the Dock Item processes Command Line Parameters.

Dock Items that are (disk-based) Folders currently do not accept dragged files when the CTRL key is held down.



Mark

83
Hi
perhaps i did not find de function, but apparently its not possible to drag n drop file on a docked app like a  normal shorcut, nor copy or transfert file by dropping them on on docked folder,
it will be perfect if it will work that way.
and i think , a very new way to fork with windows

I am not sure how useful that would be as the "docked app" would need to accept file name(s) as command line parameter(s) and, in reality, not many do. That would be the only way to achieve a simulated "fork" in Windows - this is not Unix! Similarly copying/moving files to Dock Items that happen to be filing system Folders is not possible.


Mark

84
Circle Dock / Re: Requests / Suggestions thread
« on: April 10, 2010, 11:35 PM »
Ah but the situation is actually somewhat different - and can be demonstrated with your little example. Start your example and move the window to a nice clear bit of desktop. Move the pointer outside the window and then click the middle mouse. Holding the middle button down, drag the pointer to somewhere inside your form and then release. What happens? Nothing, right?

The global handler is agnostic regarding the screen positions of any of Circle Dock's objects, it doesn't need to know because all it's looking for is the correct mouse button (and modifier keys down, if required) so that it can instruct the objects to display or hide themselves. Also hidden windows/objects don't receive mouse or key messages, so even if the mouse pointer happened to be over the screen position of the hidden dock when you press and hold the mouse button, that object would not receive the mouse down message, so the code in its handler would not be executed.

There's a big (and I mean BIG) difference between local and global event handlers. Visual Studio only allows for local handlers, be it for a text box or a form. Global handlers are only achievable by writing specialised hooking code and WndProcs.



Mark

85
Circle Dock / Re: Requests / Suggestions thread
« on: April 10, 2010, 01:56 PM »
You are probably right (and you certainly decide), but out of curiosity, what would happen if you violated that convention? Would Windows or other applications get confused, or is it the user you are concerned about?
It's simply a programming convention that Mouse and Key down events don't contain actions and whilst it's not a hard and fast rule it does make very good sense.

I also have to bear in mind the Windows UI "style guide" which dictates that the left mouse button is used for primary actions and the right button for displaying context menus. Therefore people expect to click the left button on a Dock Item to "execute" it and having that Dock Item execute when a middle button is released over it rather goes against that paradigm.

Circle Dock is modular and highly object-oriented. The display screen is treated as one object that responds to mouse visibility toggles whilst the Dock's background, Centre Button and each of the individual Dock Items are entirely separate objects and each object has its own mouse handling routines. And as the mouse handlers for Dock Items is already complicated enough, I really don't want to add to that.


Mark

86
Circle Dock / Re: Requests / Suggestions thread
« on: April 09, 2010, 12:20 PM »
It's an idea that doesn't fly for me, I'm afraid.

There's normally only a very few milliseconds between a MouseDown and a MouseUp so convention dictates that the MouseDown event is used to set (boolean) flags and actions occur in the MouseUp event handler. Triggering dock visibility is handled at the global (Windows OS) level, not at the application level.



Mark

87
Circle Dock / Re: Make Circle Dock invisible
« on: April 06, 2010, 01:56 AM »
If Circle Dock is loaded before any applications, set it's Z-Order to "Normal" otherwise "Always On Bottom".



Mark

88
Circle Dock / Re: Latest Additional analytics for Circle Dock
« on: April 05, 2010, 04:48 AM »
The figures from BizInformation don't say much on their own, but when you compare the results for Circle Dock with our two main competitors, Rocket Dock and Star Dock, a whole new story emerges:
Site World Rank External Links Daily Visitors PR Value
---------- ---------- -------------- -------------- -- -----
CircleDock      2998 21255 88580 4 $9.6M
StarDock      9669 410050 35045 6 $6.33M
RocketDock     12262 102765 13357 5 $2.66M

PR = Google Page Rank

Although both Rocket Dock and Star Dock have considerably more back-links and higher Page Ranks, Circle Dock still achieves a higher Global Ranking and has almost twice the number of daily visitors of both its competitors combined.


Mark

89
Circle Dock / Re: Latest Additional analytics for Circle Dock
« on: April 02, 2010, 02:15 PM »
What happened in March last year, Sarge, there was a peak in page views for some reason? Obviously getting version 1.x released and following that up with regular updates has played its part and would account for the 230% increase.

By comparison, the download site is current valued at over $81,000.


Mark

90
Circle Dock / Re: 1.5.5 Source
« on: March 31, 2010, 10:09 AM »
I want to take a look into the code and see about adapting this to a touch screen system.
This has already been done and Circle Dock is already compatible with touch screens. The addition of the "Toggle Button" by "DrWicked" completed this and I understand that Circle Dock is in use in touch screen kiosks in the US. Users of Tablet PCs can use and tailor the program to their needs using the I/O paradigms provided by that platform.

The source code is currently not available.



Mark

 

91
What you've described confirms that the global handler is working just fine. However, what is causing Circle Dock to lose the settings - the mouse button and modifiers - but only for you and The Sarge, is a complete mystery. If the problem was more widespread, then I'd be tempted to question the Windows memory manager role and that of dotNet's garbage collector.

You may wish to try the following - note "X Mouse Button Control" must not be loaded:

1. Start Circle Dock and configure the Mouse Toggle to be Ctrl+Middle Button (you could also use Alt and/or Shift).
2. Quit the settings dialog but leave Circle Dock running.
3. Start X Mouse Button Control and configure its middle button to send {Ctrl}{MMB}

Note: the above configuration should be set on the default Layer (Layer 0) and with "default" enabled. Do NOT select Circle Dock as it will not react to mouse messages sent to its Window Handle in quite the same way.

The middle button alone should toggle the visibility however the CD global handler should detect the "Ctrl" keystroke as well as the mouse click - and assumes that XMBC sends the following sequence of messages:

Key Down (Ctrl)
Mouse Down (Middle Button)
Mouse Up
Key Up

We know that XMBC, when configured to send keystrokes, will toggle visibilty consistently. However, that functionality is provided by the Net Runtime, I simply tell it which key(s) to monitor and it does the rest. It sends a message to the CD window when the correct hotkey sequence is keyed. Unfortunately there is no equivalent functionality for the mouse - or I would be using it!



Mark

92
There is one final thing I can do - and I've just added this, so it's not in the beta attached to the previous message. That is as follows:

User presses Mouse Toggle Button Down
Global Mouse Hander triggers MouseDown Event. This sets a flag according to what the Dock Visibility should be when that button is released. It is the boolean opposite of "DockIsVisible".

User Releases Mouse Toggle Button
Global Mouse Handler sends a Windows Message to Circle Dock instructing it to toggle visibility. Circle Dock should act on this immediately and reverse the setting of "DockIsVisible".

(NEW) Global Mouse Handler then triggers MouseUp Event. In this handler, Circle Dock checks to see if the Dock visibility was changed - the flag set in MouseDown should now have the same boolean value as "DockIsVisible" but if it doesn't, then it toggles the visibility.

This is very much a "belt and braces" approach.



Mark

93
You know, Sarge, this has to be a hardware problem allied to some Logitech mice. There's a user here in Cebu who has an HP/Compaq (widescreen) laptop running Windows 7 64-bit and a USB (HP) external mouse. He has absolutely none of the problems you and Worick are encountering. My wife uses a Dell Studio (1737) laptop, under Windows 7 64-bit, and it has a 3+ year old Logitech wireless mouse and that also works flawlessly with Circle Dock.

That said, there is one last thing we can try. Up to now, the global handler has been raising events within Circle Dock whenever a mouse activity is detected - such as you moving the mouse, mouse button down, mouse button up etc. I've made a minor modification such that when the button used to toggle visibility is released, a message is sent to Circle Dock's main message handler (its WndProc) and this in turn toggles the visibility. Different mechanism, same result.

I've kept in all the mouse event handlers, however, but now these simply report the mouse's status. I've also retained "keep alive" although you should not need that now. (Incidentally, the "keep alive" function monitors two aspects. It is triggered after 30 seconds of mouse and keyboard inactivity; it is also triggered once every 50 keystrokes unless there is mouse activity during those keystrokes.)

If this version still misbehaves for you, then I'm at a loss as what to do next.

Oh yes, I almost forgot: there are two circumstances where Circle Dock needs to restart itself following configuration changes made in the main settings dialog. The first is fairly obvious - change of UI language. The second is where the default Z-Order is changed. If you modify either of those settings, Circle Dock will automatically restart itself when you close the settings dialog (it's no longer necessary to press the big button on the languages page - the button itself is being removed).



Mark

94
Can I have some feedback please... I'd like to release this to the masses.

95
After a couple of lengthy Skype conversations with The Sarge, I've decided to put back the auto-heal ability which only cuts-in if Circle Dock is idle - meaning no mouse movements or clicks. The Sarge told me that, on his HP laptop (Win 7-64), although the global mouse handler was working correctly, he'd lose the ability to toggle the Dock after about 15 seconds or so of inactivity.

In the final release, the automatic healing ability will be a configurable option, defaulting to "off", as not all users will need to have it enabled.

Apparently the program is working fine on his desktop PC, also Win 7-64, so I'm wondering if this problem may be allied to laptops with external (Logitech) mice?

The attached beta (usual caveats apply) contains some changes which may help.


Mark

96
Circle Dock / Re: Requests / Suggestions thread
« on: March 25, 2010, 02:13 PM »
You can have multiple instances but each instance must be executed from its own folder: you therefore have to duplicate the entire Circle Dock folder tree for each instance you wish to have. This is for data security and to comply with the increased security introduced with Vista and beefed-up with Windows 7.

This is all explained in the help system.


Mark

97
Glad to hear you've got Circle Dock running on your Mac! The only way for a native OSX version would be a port to the Mono runtime and that, sir, is a major undertaking and may not even be achievable. Circle Dock is pretty much reliant on the Windows and Net Framework platforms.


Mark

98
same results. middle toggle still stops after a while. This time it has not came back though after some time.
Is the middle button still correctly reporting Mouse Down- Mouse Up?


Mark

99
did you change the toggle to middle up instead of middle down?

No. The convention I have always adopted when writing code to go inside key and mouse handlers is to use the downstroke to set flags and the upstroke to perform actions.


Mark

100
wow, took a couple of hours to get a first failure this time. When it did the toggle button label still correctly tracked mouse middle down and mouse middle up. No CD visibility toggle though. I could use the toggle button, screen edge, and the tray icon to toggle visibility. Middle mouse toggle function came back after about 1-2 min then went out again in around a minute then came back again, and has been out for about 10 minutes now.

I can say at all times the label reacted instantly and correctly to mouse middle down and up.

That's all good information, many thanks!

Your findings confirm that the problems with the global mouse handler have been fixed. But since you found that whilst mouse clicks were being reported, those for the middle button sometimes did not toggle the visibility. Since the reporting and the calls to toggle the visibility are in the same event handler:
       private void OnGlobalMouseUp(object sender, MouseEventExtArgs e)
        {
            ReportMouse(e, "Up");
            if ((e.Button == MouseToggleButton) &&
                (MouseModifier == DockSettings.Toggling.VisibilityMouseModifier))
            {
                ToggleVisiblity();
                BackgroundObject.Activate();
                CentreObject.Activate();
                e.Handled = DockSettings.Toggling.DontPassToggleToOtherApps;
            }
        }
it meant that either MouseToggleButton or MouseModifier, both of which are local variables, were being optimised-out of the resident image when Circle Dock is hidden and most of its memory image is swapped to Virtual Memory. The fact that this is intermittent supports this. I've now made those static variables to prevent them being swapped-out.

Today's beta contains those changes and there's now no longer any need to have the mouse toggle the Dock's visibility at a screen edge. There's a new option in Elements -> Toggle Button that turns on/off the mouse clicks/position reporting. I like this option so I'll probably keep it in for the release! If you see the new Toggle Button label, you'll notice it uses another nice change: multi-line item labels.

Again, the attached file is an English-only Windows 64-bit executable.


Mark

Pages: prev1 2 3 [4] 5 6 7 8 9 ... 15next