yashsingh1/xdaforums huggingface dataset:
[Windows Mobile Development and Hacking General] kane159:
and also the ClockDisplay.mscr doesent work for me :(... help please..

=====edit======

OK....I remove the red dot for temporarily

work , but not looking good :(
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
ASt the very top of the cpr, what's the HomeNav width? Titanium usaully has it for screen (240x268). If it is, reduce to like (45x268). This area can not cover your buttons. If it does it'll take priority.
[Windows Mobile Development and Hacking General] kane159:
here is mine in NeoAnalog.cpr file

<TitaniumListView ID="HomeNav" Width="45" Height="268" Clip="False" Columns="1" Rows="100" ItemWidth="45" ItemHeight="39">

and this is my full cpr...

can you help me to check out what's wrong :o

thank you

by the way , all the buttom's function work :D
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
In this string,

<ControlSequence ID="ButtonDownSequence" [COLOR="#0000ff"]FramesPerSecond="15"[/COLOR] Loop="True" [COLOR="Blue"]LoopCount="4"[/COLOR] Clip="False">

Play with the values in Blue. You device must be animating it too fast so the color doesn't show through. Try say a loopcount of 20.
[Windows Mobile Development and Hacking General] kane159:
I try to say a loopcount of 100 and the green dot still doesent show out :(

but the red circle stay for a very long time....very strange....if I use transparent to replace the red dot it works
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
Hum, that's weird..., maybe it's the build you're using?!?

Also, try switching the placement of the controlsequence. Like this,

<Button ID="Phone" Width="66" Height="38" Top="-5" Left="50" Clip="False" >
[COLOR="Green"]<Layer ID="ButtonUpLayer" Clip="False">
<Image ID="ButtonUp" Width="66" Height="38" Visible="True" Opacity="1.0" ScalingAlgorithm="TriLinear" Source="\Neo\Neo_ButtonUp.png"/>
</Layer>[/COLOR]
[COLOR="Blue"] <ControlSequence ID="ButtonDownSequence" FramesPerSecond="15" Loop="True" LoopCount="4" Clip="False">
<Image ID="ButtonDown" Top="-4" Left="-4" Width="74" Height="46" Opacity="1.0" ScalingAlgorithm="TriLinear" Source="\Neo\Neo_ButtonDown.png" />
</ControlSequence>[/COLOR]
<Image ID="PhoneImage" Left="3" Top="3" Width="32" Height="32" ScaleStyle="Stretch" Source="\Neo\Neo_Call_Log.png" />
</Button>

EDIT: Reduce the loopcount to 4 again. It's not an animation length thing. It is that for some reason the build you are using isn't removing the "ButtonUp" layer as it should. So that image is always showing. By changing the order of the 2 layers, you are making the animation image show "on top of the buttom up image.
[Windows Mobile Development and Hacking General] kane159:
ohh my god :eek:

works :D:D:D

find the problem :)
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
LOL, yeah, the order of the code within a layer effects how images/text stack. The lowest code goes over any code above that. Never thought about it with the buttons as on my Device/ROM, it removes the button up image. For some reason your Device/ROM doesn't do that. ::shruggs:

CONGRATS :-D

EDIT: Going to work on a "Glass" Button now and try the get the "Glass to appear over the ICON/TEXT. Will post screen shots and code if it works.
[Windows Mobile Development and Hacking General] kane159:
Thanks :-D

now~~maybe I need some help :D

I will lke to replace my start menu by using your work :D

any one knows how to cut a folder to another place by using MortScript?

and also I need to know how to change the buttoms picture and text friendly ;)
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
Showaco made a Start Menu reorganizer tool if that's what you mean. As for the Pictures, just make sure the red/green/blue dots are there and the script will still work. They must stay inplace. The script is looking for a specific pixel in that dot to be a specific color. If you change the color or remove the dot, the script needs to have the color_code# value changed to what ever color pixel is there.

Example, it's looking for the pixel that is yellow.

Download & Zoom in to see it.
[Windows Mobile Development and Hacking General] kane159:
Misunderstanding :eek: :eek:

what I mean is I would like to replace my start by a plugin :D of using the Add Buttons Binded work :)

and I would like to know how to change the picture and text friendly
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
The Image shown is the Last image shown on in the button code. Just remove that code and add your icons to the page layout as normal. The text fonts is also part of the CPR. Control Freak is the font I'm using. If you want Tahoma, just replace it.

As for the Start Menu, I'm sure it's possible. Just need to mess with the Start Menu cpr's. In StartMenu_Gridscene_(Resolution).cpr. Try changing the height/width of the <Gridview ID="Start Menu Items List" to say, 1 by 1. That'll clear up the screen for any custom code you put in it. The key is than linking stuff though scripts & than the real start menu won't be accessible, so i suggest only do Portrait or landscape, not both. So while working you still have a way to get to it.
[Windows Mobile Development and Hacking General] kane159:
is that mean that is impossible to mapping the picture by reg key?

because it's too complicated to write something into the cpr file :(

and any other people's file in start menu is not the same....

so if I made it it just for personal :(

I wish can let other people to use it
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
You could share it, just make a script that adds the apps to the bindings. For example, my buttons are scripted to find said pixel and then launch a app linked in a registry value. Now you make a menu script that will write those registry values the button is binded to by searching for the exe's/ink's or give the user a gui to add them. It's not hard, just a lot of work. Maybe to much work for that matter. But, it'd be possible I'd say to make the start menu look like the old one or what ever you want by doing so.
[Windows Mobile Development and Hacking General] kane159:
oops I just find a way to do that :D

I'll make it like Manila 2(3)D

do you know how to delete a file by using MortScript??

please teach me , then I can make it today ;)

I'll put on the preview later :D
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
I believe it's

Delete=("{File Path}","{File Name}")

or maybe

Delete=File("{File Path}","{File Name}")

WITH QUOTES

I maybe wrong though lol.

Example:

Delete=("Starage Card\TestFile","TestFile.txt")
[Windows Mobile Development and Hacking General] nposix:
How do i start the apps when i click on the buttons???

Nothing happens when i press the buttons, only change from red to green dot....

Am i missing something here??? pls advise....tq
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
You're WQVGA, the pixels the Script is looking for is different on your device. I have not set it up for WQVGA. Open the CMultiClock.mscr & add the values to WQVGA. It'll take some math to figure out where the pixel now is on your screen. The values are x = across & y = down from the upper left corner of the screen.
[Windows Mobile Development and Hacking General] kane159:
here is the preview :D

help me for the color code please :)

the txt is "this" cpr

here is my idea ,push the buttom and each buttom write a reg key in

"HKLM","Software\Microsoft\CHome\CMywork\Settings","color_code"

each is

( 1 )( 2 )( 3 )

( 4)( 5 )( 6 )

( 7 )( 8 )( 9 )

(10 )(11 )(12 )

and the original b(number)_link is add.mscr

add for needing some help for the script code

SetMessageFont(14,Tahoma)
color_code=Regread("HKLM","Software\Microsoft\CHome\CMywork\Settings","color_code")
select=SelectFile("Application",FALSE,"*.lnk","",SystemPath("ProgramsMenu"))
selectapp=FileBase(select)
Name=Input("Application Name","",FALSE,FALSE,selectapp)
oldicon=RegRead("HKLM","Software\Microsoft\CHome\CMywork\Page"&color_code,"Image"&color_code)
If (oldicon ne "\Program Files\CMywork\Add.png")
Delete(oldicon)
EndIf
icon=SelectFile("Program Icon",FALSE,"*.png","",SystemPath("ScriptPath")\"icon")
iconname=FileBase(icon)&".png"
Copy(icon,SystemPath("ScriptPath")\"NewIcon\"&iconname,TRUE)
RegWriteString("HKLM","Software\Microsoft\CHome\CMywork\Page"color_code,"Image"&color_code,"\Program Files\CMywork\NewIcon\"&iconname)
RegWriteString("HKLM","Software\Microsoft\CHome\CMywork\Page"&color_code,"b1_link",select)
RegWriteString("HKLM","Software\Microsoft\CHome\CMywork\Page"color_code,"b"&color_code&"_Text",Name)
RegWriteDword("HKLM","Software\Microsoft\CHome\CMywork","Updated","0")
Sleep(500)
RegWriteDword("HKLM","Software\Microsoft\CHome\CMywork","Updated","1")

how can I choose the link in \windows\start menu\program :confused:
[Windows Mobile Development and Hacking General] twolf:
drkfngthdragnlrd, it looks like you are on a good path, if you need anything let me know.

:)

PS: Remenber to add the 2 arrow buttons, so that it can have multiple pages.
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
Yeah, just realised the stock arrows are buttons. I'm going to redo them, the blue dots activate the code & can also be used for the pages. Activate per page. I'm going to work on the arrows tomorrow.

@ Kane,

I'll look at your code tomorrow & get bak to you. Taking a break right now.
[Windows Mobile Development and Hacking General] nposix:
Hi drkfngthdragnlrd,

Not sure why the apps still doesn't launch..

My CMultiClock.mscr attached.
[Windows Mobile Development and Hacking General] chriscsh:
just finish the new version & under testing :D

the button function seem work great

thanks drkfngthdragnlrd ;)
[Windows Mobile Development and Hacking General] kane159:
OK alfa one comes :D

will release cab file later :D
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
Looking good, sorry i haven't been able to get to your problem yet, been busy as hell. This is all becoming a full time job lol.

Once again, looking very nice. I am sure people will love it.
[Windows Mobile Development and Hacking General] kane159:
release now :D

check here http://xdaforums.com/showthread.php?p=4141417#post4141417

and by the way , what is your NeoTitanium Rev1.0a change from 1.0 ??
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
Added the Green/Red Dot Animation Fix that fixed the buttons on your device.
[Windows Mobile Development and Hacking General] nposix:
I have fixed it. now it's working... thanks
[Windows Mobile Development and Hacking General] kane159:
beta 1 release :D

check this link

http://xdaforums.com/showthread.php?t=537237
[Windows Mobile Development and Hacking General] kane159:
[next update preview]

:D

just wait for TWolf's transparent button to work for color code :D

now just have one pic :)
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
BTW, I just found an entry noted in the CHome DLL. It has SKButtons listed as a form resource. Need to hack a bit more. I think this may be a way to have working buttons without scripts & pixel color codes. ::Hopeful::
[Windows Mobile Development and Hacking General] MichelDiamond:
I think Microsoft is never safe from you :)

Any new conclusions to your find?

When this would work... would be great - thanks for all
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
Well I noticed that;

OnInitComplete
OnAction
OnBeginGesture
OnSelect
OnDoubleSelect
OnHold
OnPan
OnScroll
OnEndGesture

can be added to any layer/image/text from the looks of it. The Lockscreen CPR has it in a <layer> section of code. Now to figure out how to bind it or what ever to a function/app/contact/etc.

I am not good at writing the code, but I can rip almost anything apart & figure out how it works. Been a natural ability of mine since I was a kid. Most kids would break a toy & whine or what ever. I'd take it apart & fix it lol.

Plus, it helps I am a System/Network Admin. So, I understand how to edit the Registry.
[Windows Mobile Development and Hacking General] MichelDiamond:
Yeah - I'm quite similar to your behaviour - if I want to understand something, then I'm searching and asking (that's perhaps the difference between us both) - until I find it out. So I like to organize projects and of course coding and developing new ideas.

Perhaps you have overseen my Post in this Thread -> *Post #52*

The proposal is now confirmed - where you can find an "OnInitComplete" you will find more Event-Handlers - and I think "OnAction" is a good way to look.

Perhaps you still had the correct parameters in "OnInitComplete" - but it couldn't be seen because of the wrong point of time, when it was triggered.

To find out, which Parameters in which form could be overgiven... we have some languages, and the "nearest" is C#

Here is a very good description of the Parameteres - perhaps it works quite analog for the Forms in Titanium:

*On-Action-Description*

(There's only one thing to consider - a tab on a button in a Panel is also a tab on the panel itself. The Button is only derived from the Panel - and the "On...whatever"-method shouldn't call the parent-class after it)

Perhaps you see because of the C#-Documentation a possible call?

I think at least a call into a .dll entry point could probably works. Or a Registry-Key with the ".exe" as String...
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
Oh I did miss your post #52. I'll look into this. I been trying for days now to get it working without colored buttons/scripts. Hopefully your insight will give me something that works.

EDIT: Ok, well first you need to look at the CPR's for Lockscreen/PINScreen/CallScreen/Etc. This is where I found the button/"On...Whatever" codes. Almost all of them use at least one part of this. The only one that does is the Start Menu as it's launch commands are pre-determined.

As for image limits, I never ran into this problem. I've been able to add as many images as I want. I've never had an image not show. My version of CMultiClock has like 19-20 images alone without counting the button animations, which count for 6 more images. I did notice cmhome.dll only supports Image1-10/Text1-10/&Icon1-10, but I never use those pre defined ID's. I always name them according to what they are. The only issue I have is the Button Up Image won't display as it's in a custom layer although the Button Down will, because it's a Control Sequence. I found 2 ways around this. Put the whole Button section code outside of the <Layer ID="Page"....></Layer> section of the layouts & hard code (source="{Image URL}") them in the CPR's or doing the following also works;

<Text ID="SKButtons1Text" Left="45" Top="-96" Width="195" Height="15" FontFamily="Control Freak" FontSize="10" FontStyle="Regular" Wrap="True" HorizontalAlignment="Center" Trimming="EllipsisCharacter" Text="Power" ></Text>
<Image ID="SKButtons1Image" Left="45" Top="-111" Width="195" Height="186" Opacity="1.0" ScalingAlgorithm="TriLinear" Source="\Neo\ButtonGlass_Up.png" OnSelect="AppLaunch:\Windows\Powerexe.exe" />
<Button ID="SKButtons1" Left="45" Top="-111" Width="195" Height="186" Clip="False" >
<Layer ID="ButtonUpLayer" Clip="False">
</Layer>
<ControlSequence ID="ButtonDownSequence" FramesPerSecond="5" Loop="True" LoopCount="4" Clip="False">
<Image ID="Sequence00" Width="195" Height="186" Opacity="1.0" ScalingAlgorithm="TriLinear" Source="\Neo\ButtonGlass_Down.png" />
</ControlSequence>
</Button>

Then, it'll read that image & text outside the Button Layer from the registry & only Button Down needs the source hard coding.

EDIT2: The Button events are OnButtonDown/OnButtonUp. Those are the only 2 specified under CResourceButton. This is all found inside cmhome.dll. Attached a txt copy of extracted text inside the dll.

[COLOR="#0000ff"]CResourceSlider[/COLOR]
OnSlideRightFinal
OnSlideLeftFinal
OnPress
OnMoving
[COLOR="Blue"]CResourceButton[/COLOR]
OnButtonDown
OnButtonUp

I also found these events elsewhere in the dll.

[COLOR="#0000ff"]CResourceWithEvents[/COLOR]
CControl
QA_DataSnap
SOFTWARE\MICROSOFT\CONFETTIPLUS\UIAL
ColorOpacity
SizeY
SizeX
ID
OnInitComplete
OnAction
OnBeginGesture
OnSelect
OnDoubleSelect
OnHold
OnPan
OnScroll
OnEndGesture
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
Another thing I just though about.

HKLM:Software\Microsoft\Today\Items\"Windows Default"

Selectibility=0

This tells WinMo weither or not Titanium is Selectible.

[HKEY_LOCAL_MACHINE\Software\Microsoft\Today\Items\YOURCUSTOMITEMNAME]
"Selectability"=dword:2

If the value of Selectability is zero or does not exist, then the plug-in cannot be selected, and it never receives any notifications.

If the value of Selectability is equal to one, then the Today screen manages the selection of the item automatically, and does not send any notification messages to the plug-in.

If the value of Selectability is equal to two, as shown above, then the Today screen uses the API described below to track the selection of the current item.
Receiving the Selection Focus

When the user navigates to a Today screen item using the keypad, the plug-in will receive a WM_TODAYCUSTOM_RECEIVEDSELECTION message. Also, regardless of the value of Selectability, it will receive a WM_ERASEBKGND and a WM_PAINT message so that it can redraw its content.

Sending the TODAYM_DRAWWATERMARK message to the parent window will always draw an unselected background — unless the Today screen item is selected and its Selectability value is one, in which case a highlighted background will be drawn. This means that when the value of Selectability is one, no code changes are required to draw the correct background; but if the value is two, the plug-in must draw the background itself. It should use the TODAYCOLOR_HIGHLIGHT color (0x10000022) for its background and the TODAYCOLOR_HIGHLIGHTEDTEXT color (0x10000023) for its foreground — both of which can be found via the TODAYM_GETCOLOR message.

WM_TODAYCUSTOM_RECEIVEDSELECTION is defined as (WM_USER + 244). The parameter wParam will be set to the virtual key code used to navigate to this item (i.e., either VK_DOWN or VK_UP); lParam is not used. If the plug-in accepts the selection change, then it should return TRUE; otherwise, the Today screen will pass the selection along to the next item. For example:

MSDN Documentation on Today Plugins.
[Windows Mobile Development and Hacking General] MichelDiamond:
Good informations - thank you.

Because of the limitation - some Plugins are not useful to define something before the layout-Sequence.

If you could - would you have a look at JMLToday *klick* and try to add more than 21 Text-Items or 21 Graphic-items in a Layout-Section of a .plg... you will see... the first one will dissapear. And no idea why. Would be cool, if you'd have a look (also to know, that jmltoday runs in your NeoTitanium, too).

But now this for the buttons... i get crazy.. very much possibilities to try.. almost too much... perhaps we should find some limits to know where it's useful to try.

The "OnButtonDown"... better is "OnButtonUp" - because this must be the event-handler, when somebody tabs on a button ("Down" could be too short - "Up" means he pressed and released the button).

Now it's the question, if the event-handler is implicit in the code, or the event must be triggered and catched by an own event-handler.

When I see your code with "... OnSelect="AppLaunch:\Windows\Powerexe.exe" "

...there must be an implicit event-handling.

The messages like WM... they must be catched - but you have one error in reasoning - because you think, that the Button only understands the 2 Messages ( OnButtonUp / Down)

That's to 99,9% false - because a Button is derived from his "father" - and I think it must be "CResourceElement" - and because of inheritance a Button can handle all, what his "father" and "grandfather" can. only special methods for a ressource are to find next to any specific ressource.

(and so a CRessourceButton should handle all events which you said)

And the same with SKButtons... like from your textfile:

CForm

CResourceForm

WindowTimeout

IdSKDefault

IdSK2

IdSK1

SKButtons

so I think that SKButtons are derived from CForm.

I had a look into my visual c++-help ... a normal CButton triggered by OnButtonUP/Down only with 2 Parameters - and unsigned integer (to know something about the way of pressing) and a CPoint (Coordinate, where it was pressed). I don't think, that could help.

But "OnAction" is easier - and in Background we have the MFC in WinMo, but the language is on level to c# - and theres:

*klick to onAction*

Somewhere in the Registry must this event be seen... and there you can catch it.

And I always see, that there could be a keyword to start - because it has an alias... have you ever seen the keyword "invoke" in the CPRs?

Because - something like "Invoke:\Windows\Powerexe.exe" ... thats perhaps possible...

I see so much possibilities... and with no knowledge about the syntax... it's a big riddle...

and perhaps it's really useful to set the Selectibility on "2"...

I will also have a closer look... but I hope some informations could be precious for you.
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
I'll look into what you've said. Also, MS Visual Studio comes with Remote Spy. It can be used to connect to a synced device. I've been doing that since my last post. What I have noticed is that any click on screen that isn't the softkey/startmenu/actionurl just comes back as "unknown". Also the Start Menu is Buttons. It finds LButtonDown/Up among other events per "click" on the start menu.

Screen Shot of Start Menu Events (Ignore the text stuff, it must be a script from a plugin running);

EDIT: Nevermind, was looking at the wrong "window" or what ever. CHome aka Titanium is send LBUTTONDOWN/UP on button press.

EDIT2: The LBUTTONs aren't the buttons I made. It's buttondown/up as if a click was a button. I can click anywhere on screen & get that message.

EDIT3: Ok, LButton is it reading screen presses as a left mouse button click. It also reads double clicks. It seems to be the today screen reading it. I see no events pointing torwards CHome. The CHome_SlidingPanel_Today isn't showing any messages what so ever. Titanium is CHome aka Sliding Panels.
[Windows Mobile Development and Hacking General] MichelDiamond:
:) Have you seen the wparam during WM_LBUTTONDOWN? :) it's not zero... it's a Boolean... and I bet the lparam is the Handle of the button...

and a Handle can receive and send actions... with the right syntax...

I think, if it's possible to identify the handle of the button... one step forward.

And to aks with a script... with the first press, you can get the number of the handle (MOUSEMOVE)... and with this handle you could check, if it's pressed or call direct... (UP)

Or you could get at least the position, where it was pressed.

... mmh... perhaps you don't need the position... you only have to know, that the Button was clicked...

and MortScript e.g. can handle positions... it can retrieve the click position... and it can click onto a special position...

I write it in Metacode:

ClickPosition-> check & save

ClickPosition changed?

-> yes:

if (is wparam=TRUE)

I know this button -> call .exe

(Calibration: Mortscript clicks on each point of display)

How can I get the wparam without spy++ of the last WM_LBUTTONDOWN event?

In which registry key can I find the current resolution?
[Windows Mobile Development and Hacking General] drkfngthdragnlrd:
Ok, I got a bit lost there. The lparram seems to me to be the position of exactly where you clicked onscreen. I don't even have a button onscreen & it still gives me that. It I click hold & move, I get MouseMove a ton of times each time the lparam changes but last mouse move and buttonup have the same lparam. I've also gotten LButtonDBLCLK. As for the wparam I have no clue. Resolution is HKLM:Drivers\Display\Primary\

CxScreen = 240

CyScreen = 320