Related
I have a little project in mind, but would like some input from the pros to cut research time:
Is it possible to "wrap" a Today plugin dll with another, providing a "pass through" for operations (such as screen taps, etc)?
What I'm trying to accomplish is this: Add selectability and other one-handed d-pad operation to an older plugin that is not selectable.
What do you think?
it's possible but the problem is that the plugin have to keep track on what plugins it include and which handles it have to pass to them
could end up big and slow
Rudegar said:
it's possible but the problem is that the plugin have to keep track on what plugins it include and which handles it have to pass to them
could end up big and slow
Click to expand...
Click to collapse
This is specific to a single plugin - it would only keep track of one.
Perhaps plan B would be easier - a plugin that manipulates another plugin. Such that it would "appear" the older plugin was selected, etc. I guess I'd better go study some more...
Actually its really simple.
Any plug-in DLL exports a function called InitCustomItem. In this function the plug-in does all its initialization, and creates its window. The return value is the handle to this window which you can subclass to add functionality.
as for selection, there is a value in the registry for each plug-in (HKLM\Software\Microsoft\Today\Items) which controls whether the system passes selection events to the plug-in or not.
it has three settings:
0 - non selectable, item will be skipped by the system.
1 - Automatic, the system will paint the item and handle selection on / off
2 - Manual, the system will pass the selection event to the item and the item will take care of the rest. In this mode the return value of the WM_ACTION determines whether the selection is moving on. This is good for multiline plug-ins that don't want to give up focus when arrow keys are pressed.
levenum said:
Actually its really simple.
Any plug-in DLL exports a function called InitCustomItem. In this function the plug-in does all its initialization, and creates its window. The return value is the handle to this window which you can subclass to add functionality.
as for selection, there is a value in the registry for each plug-in (HKLM\Software\Microsoft\Today\Items) which controls whether the system passes selection events to the plug-in or not.
it has three settings:
0 - non selectable, item will be skipped by the system.
1 - Automatic, the system will paint the item and handle selection on / off
2 - Manual, the system will pass the selection event to the item and the item will take care of the rest. In this mode the return value of the WM_ACTION determines whether the selection is moving on. This is good for multiline plug-ins that don't want to give up focus when arrow keys are pressed.
Click to expand...
Click to collapse
Hey, thanks for the response! I've set the Selectability registry item for the older plugin, and it's ignoring it - that's what started me on this little project.
I'm a software developer by trade, but not with C++, so I don't want to waste people's time here asking a lot of dumb questions. If you could point me in the right direction on a couple of things, I'll go off and learn:
1. If all I have is a dll and nothing else (no .defs, etc), can I determine all of the functions it exports (other than InitCustomItem)?
2. Process check: My custom plugin's InitCustomItem would call old-plugin's InitCustomItem, snagging old-plug's hwnd. New-plugin would then initialize it's own window - transparent(?) and pass that hwnd back to windows. Also, my custom plugin would pass all messages to old-plugin, etc. Theoretically, old-plug would look and operate like normal?
If this is already written, just sent me the code!
Well I am afraid it will be difficult to do all this without C++. As far as WM based devices are concerned you need to use something that translates in to native code to create system components like the plugins son ,no .NET languages, and embedded VB doesn't do well on anything never that WM 2003 (not even SE), plus I am not sure if you can make DLLs with it at all.
To your questions:
1) There is a tool which comes with VS 6 called Dependency Walker. It shows you what functions a given DLL exports, what it imports from other DLLs and what DLLs it is link to. Woks on EXE files as well.
If you can't get that, download a demo of IDA 5. It's the most powerful disassembler for WM devices out there.
2) Not sure, I never tried anything like that. The thing is, the system resizes the plugins, on initialization (it controls height) and when screen rotation changes so if you pass back HWND for a window other than the one visible, it might cause some problems.
I think what you should do is learn about subclassing. It's when you replace the procedure of an existing window with your own (just replace the function, not create new window). You then get all the messages for that window, you can do what you want and call the original function when you done.
By the way, if you want to learn about writing plugins there is an article with code samples on this site: www.pocketpcdn.com and a lot of other interesting stuff.
Good luck.
What plugin is it? It might be easiest just to rewrite the plugin if you've got the code.
V
levenum said:
Well I am afraid it will be difficult to do all this without C++.
Click to expand...
Click to collapse
I should have been more clear - I am using C++, I'm just have to learn how to program with it first!
vijay555 said:
What plugin is it? It might be easiest just to rewrite the plugin if you've got the code.
V
Click to expand...
Click to collapse
I don't have the old-plugin source code. My little project is to add some sort of d-pad operation to the WeatherPanel plugin, which you're probably familiar with.
Progress: I've written and deployed my first little plugin - based on the source code samples available in the internet.
Next step: In my InitializeCustomItem, I thought I'd try to call WeatherPanel's InitializeCustomItem (instead of creating my own window). Thing is, I don't yet know how to properly link the WeatherPanel dll to my project. As expected, it only exports two functions: InitializeCustomItem and CustomItemOptionsDlgProc (I used dumpbin.exe)
I'll keep plugging away - any input would be appreciated.
Thanks for your help!
It's real easy:
Use LoadLibrary and GetProcAddress functions to call functions in other DLLs without linking them.
levenum said:
It's real easy:
Use LoadLibrary and GetProcAddress functions to call functions in other DLLs without linking them.
Click to expand...
Click to collapse
What a coincidence! My studying led me to the same functions.
From within my plugin's InitializeCustomItem, I was able to successfully load the dll with LoadLibrayl, GepProcAddress of its InitializeCustomeItem (at ordinal 240) and call it. But it whacks the Today screen so that none of the plugins load.
Next I thought I'd try FindWindow and EnumChildWindows to find it and all it's children. Then manipulate them by sending messages...
storyr said:
What a coincidence! My studying led me to the same functions.
From within my plugin's InitializeCustomItem, I was able to successfully load the dll with LoadLibrayl, GepProcAddress of its InitializeCustomeItem (at ordinal 240) and call it. But it whacks the Today screen so that none of the plugins load.
Next I thought I'd try FindWindow and EnumChildWindows to find it and all it's children. Then manipulate them by sending messages...
Click to expand...
Click to collapse
Update: So far, so good. As it turns out, EnumChildWindows doesn't work on the PPC, so I used GetWindow to find the plugin's handle. I can successfully send messages to it and initiate various actions.
Question: I'd like to visually indicate (on the old-plugin) what's being clicked (such as drawing a box around it). Is it possible to draw things outside of my own window?
It is, but it's tricky.
You can always use the GetDC function to retrieve the DC for another window and paint on it, but the problem is that unless you subclass the window you have no way of knowing when it repaints it self and all your changes are erased.
levenum said:
It is, but it's tricky.
You can always use the GetDC function to retrieve the DC for another window and paint on it, but the problem is that unless you subclass the window you have no way of knowing when it repaints it self and all your changes are erased.
Click to expand...
Click to collapse
I tried that exact thing (GetDC) and drew a rectangle in it, but it didn't do anything. I realized the reason was the WM_Paint event wasn't firing on old-plugin, and when it did, my stuff was erased (just like you said).
Next idea - open my own dialog window than overlays old-plug. The entire window needs to be transparent - except for the visual indicators that I position where I want. When the user ok's, I close the window and send the click to old-plugin...
Thanks again for keeping tabs on my progress..
No offence, but with all these rather advanced programming tricks you are attempting just to "sup up" an old weather plugin it looks to me like you would be better off just writing the whole thing from scratch.
It you are familiar with WinInet and / or sockets this should be pretty easy and it will look and work much better than the hack you are attempting now.
Plus you can make it exactly the way you like.
levenum said:
No offence, but with all these rather advanced programming tricks you are attempting just to "sup up" an old weather plugin it looks to me like you would be better off just writing the whole thing from scratch.
It you are familiar with WinInet and / or sockets this should be pretty easy and it will look and work much better than the hack you are attempting now.
Plus you can make it exactly the way you like.
Click to expand...
Click to collapse
No offence taken. I thought of that, but I figured this would be a good way to cut my teeth a little. Once I complete this little project, I may pursue that route...
Question: Do you have a favorite forum (or forums) besides this site that you use for your research/programming questions?
This is my favorite forum
But here are couple more sites I found very valuable:
www.pocketpcdn.com - They have tips and tricks with code examples arranged in categories like how to make MFC dialogs not full screen or the one I used in LVMTime to put the clock back on the taskbar.
www.codeproject.com - It's not specific to WM development but has tons of interesting stuff including entire sources.
You should also check out www.buzdev.net If you're not familiar with the great work of buzz_lightyear you should see some of the stuff he did for this forum like grab_it - the invisible ROM dumper.
OT
Just a quick OT question:
If I would move some of the plugin-dll's from \Windows to \Storage Card, would it be enough to change the adress within the corresponding item in the registry entry HKLM/Software/Microsoft/Today/Items ?
Of course I'm not talking about plugins like tasks a.s.o but rather third party plugins
Cheers
hrb
It won't work.
The problem is that the SD card is mounted too late so if you put the plugins on it they will not be loaded when device boots up.
You can move them to the extended ROM this way or to a folder other than windows but there is no way to move start-up stuff to SD.
Thanks for the help with this "little" project. After many hours, the product is out for beta testing. When it's released, I'll post more info...
Finished!
It's finished. The app is called WP-Pilot and it provides one-handed operation of WeatherPanel. If anyone's interested, it can be found here. Here's how it ended up:
There's a plugin (WP-PilotPlugin.dll) with an options dialog, and an executable (WP-Pilot.exe).
When the plugin gets selected, it looks for Weatherpanel. If it finds it, it fires off WP-Pilot.exe
WP-Pilot.exe opens. It does this stuff:
Look for WeatherPanel, and get it's screen coordinates.
Read the registry and determine which layout file WeatherPanel is using.
Open the layout file and read it: Record the coordinates of each "clickable" item found. This was a real PITA because of Unicode.
Sort the coordinates for left-to-right, top-to-bottom order.
Select the first coordinate and position a tiny window (10x10) at that x-y position.
Draw a "pointer" in the window (the type and color depends on what's selected in the options).
Show the window and process input:
[*]Left/right pressed - selected the next/previous coordinate and move the window to that location.
[*]Up/down pressed - close WP-Pilot and tell the plugin we're done.
[*]Center button pushed:
[*]Send a mouse click to the WeatherPanel plugin at the coordinates
[*]Close WP-Pilot and tell the plugin we're done.
Thanks again for your help!
10/16/08--
It is 12:00 central time (17:00 GMT I think) and I will close voting at 5:00pm Central Time (22:00 GMT) today. So that leaves you just 5 Hours to make your vote. I will try and post the winner up here later tonight, or you can check yourself at www.gudensoft.com.
Thanks!!
10/14/08--
First, thanks for all the great ideas. I would love to develop all of these if I could, but we have to decide on just one of the programs! So, Since I couldn't add a poll to this thread, I added it to HERE.
CLICK HERE TO VOTE!
I bet I know which will win, but who knows? The poll will end Thursday or Friday (depending on if it is a close race or not).
Thanks
Gudy
10/10/08--
Hey guys,
I want to know what cool program, functionality, or software you would like to see created. I am a .net programmer (among others) and would like some ideas of projects you would like to see. I would like to stay away from a graphic intense program and involved games, so think functionality, usefulness, fun, etc. If I get some good ideas, I will then add a poll, vote on the best one, then build it. I will release it under my donationware license which means it will be free. Right now I am finishing up my Golf Gps program (and will continue to support), but will start this project once we get it deceided. So Shoot me your ideas!
Gudy
cool a programmer who need ideas
I have proposed something here: http://forum.xda-developers.com/showthread.php?t=434925
though it would maybe not appear as a grateful program for a developper ( a toolkit for other programs), it could be a good way to have a large diffusion through many config panels in different programs
it was just an idea
Wishlist
Hi,
Maybe simple for .NET, but for me impossible to do (without performance/battery penaulty) with basic4ppc or mortscript. And thats all I can handle.
What I would like to have is a program that enables me to execute programs when specific events occur. I'd like to know when AC power gets connected/disconnected, when there is a change in screen orientation, and when a headset gets connected/disconnected and so on. Maybe even when an internet connection through WIFI is available/unavailable.
Also I'd like to know is a specific BT device is connectable/conneted. I'd like to know if a specific WIFI network is connectable/connected. I'd like to know if I'm at a specific location. All event driven, without a performance consuming programing loop or battery drain.
Yeah, all or even some of those options would make my digital mobile life so much easier
Good luck huntig for input, if you ever get bored contact me and make me happy
Cheers,
Cacti
le_cactus said:
Hi,
Maybe simple for .NET, but for me impossible to do (without performance/battery penaulty) with basic4ppc or mortscript. And thats all I can handle.
What I would like to have is a program that enables me to execute programs when specific events occur. I'd like to know when AC power gets connected/disconnected, when there is a change in screen orientation, and when a headset gets connected/disconnected and so on. Maybe even when an internet connection through WIFI is available/unavailable.
Also I'd like to know is a specific BT device is connectable/conneted. I'd like to know if a specific WIFI network is connectable/connected. I'd like to know if I'm at a specific location. All event driven, without a performance consuming programing loop or battery drain.
Yeah, all or even some of those options would make my digital mobile life so much easier
Good luck huntig for input, if you ever get bored contact me and make me happy
Cheers,
Cacti
Click to expand...
Click to collapse
Doable, handy, not a massive undertaking, I like it! Not sure I would go the .net route on something like this, as really a GUI is not required (except for settings maybe) and the overhead is large with .net. Certainly will add it to the list. Keep them coming!!
t0k0m0k0 said:
cool a programmer who need ideas
I have proposed something here: http://forum.xda-developers.com/showthread.php?t=434925
though it would maybe not appear as a grateful program for a developper ( a toolkit for other programs), it could be a good way to have a large diffusion through many config panels in different programs
it was just an idea
Click to expand...
Click to collapse
This would be pretty difficult unless all of developers used the same programming langauge/technique. The only real feasable way I see this working would be developers using a common set of graphics. That would be more of a graphic undertaking instead of programming. I do like the idea, but pretty hard to impliment.
Thanks
Gudy
I would love to see something like Launchy for launching apps and files etc. as well as quick search of various types online. I'm guessing the on the fly search would require too much processing power, but if it's doable it would be awesome.
http://www.launchy.net/
I'm interested in new ideas too. I also use B4PPC.
Here's a few ideas:
-A tamagotchi, really. I was about to try this out tonight but Paint hates me.
-An app launcher like PetitLaunch on PalmOS. It's something that can pop from any app (hardware button) and when you type in extra letters it filters which apps are shown. I got this started and I can give you the files if you want.
-Pursue the development for Tippy. The source is on Nicbou.com/downloads if you want it.
-A time clock. A friend of mine notes down how long he works to make sure he doesn't get screwed and it takes him several minutes every week. He doesn't have a Pocket PC but maybe someone would be interested in something that tracks the hours you work and calculate the salary. I almost did this too.
And don't forget to share the source! If you need any help with B4PPC I'm here
galt said:
I would love to see something like Launchy for launching apps and files etc. as well as quick search of various types online. I'm guessing the on the fly search would require too much processing power, but if it's doable it would be awesome.
http://www.launchy.net/
Click to expand...
Click to collapse
Sounds simular to the app launcher listed in the next post, seems like there is a theme going on here, you all need some sort of good app launcher.
Gudy
I'd like the Launchy features for search-on-the-fly off on board apps and file launching, but ever more for different site searches (google, maps, wikipedia, live, youtube, Amazon, etc).
N1c0_ds said:
I'm interested in new ideas too. I also use B4PPC.
Here's a few ideas:
-A tamagotchi, really. I was about to try this out tonight but Paint hates me.
-An app launcher like PetitLaunch on PalmOS. It's something that can pop from any app (hardware button) and when you type in extra letters it filters which apps are shown. I got this started and I can give you the files if you want.
-Pursue the development for Tippy. The source is on Nicbou.com/downloads if you want it.
-A time clock. A friend of mine notes down how long he works to make sure he doesn't get screwed and it takes him several minutes every week. He doesn't have a Pocket PC but maybe someone would be interested in something that tracks the hours you work and calculate the salary. I almost did this too.
And don't forget to share the source! If you need any help with B4PPC I'm here
Click to expand...
Click to collapse
I had to look up tamagotchi, either I am too old, or just out of the loop to know that 10 million of these things were sold! Wow! That could be fun, but would take a pretty fancy AI type system to really be fun.
A form of Tippy is already out there, 1-calc has some of the features built in already.
A time clock could be cool, maybe a stop watch type thing perhaps?
Never used B4PPC, I mainly use C# and Visual Studio. It looks like the old Visual Basic for desktops. And last but not least, depending on the project, I more than likely will release the source.
Thanks!!! Keep'em comin!
Gudy
File Explorer Needs Help
Has anyone wanted to see a preview image in explorer's folder??
I'm not talking about fexplorerext2. although it is a fantastic enhancement; it takes a long time to load the preview immages.
I have a better idea (well, actualy MS thought of it first)
THUMBS.DB
for every folder that has an image file, this dll is created to replace cache of images. this way ou do not have to load it everytime and scale them down for thumbnail view. it is already there specificaly for each folder.
This alows the explorer to show a preview of the first image in the folder (or last created/accessed)
This is whatt I think WinMo is lacking - windows. lol.
I do not care much for the tabbed browsing. it hurts my head. too much scroling and not enough info. Icons work better I think, and waste less space on an already small screen.
well, that's been on my wishlist for a very long time. a dll that ataches to the already existing explorer making it work better.
Thanks for workin g on something new
program that makes led lights flash when phone rings would be nice
Interesting...I will have to think about how to tackle that. It would basically take a new file explorer (like total commander). This might be a bit larger than I want to tackle, but will research it a bit before ruling it out.
GUdy
bedaweed said:
program that makes led lights flash when phone rings would be nice
Click to expand...
Click to collapse
This would be very difficult as not every device handles the leds the same. Also, not every device has the same leds (color, # of, etc). I think No2Chem has a int. driver, but think it is only for the titan. Would be cool though...
Gudy
a system-wide launcher dock program like that on the velocity 103 PPC..
here's the URL for the review and video of the app (and the phone)
-------------------------------------------------------------
a new top bar replacemeent/notification system much like the "android Notification Drawer" it can replace the bubble (multiple) notifications icon when you got multiple and simultaneous notifications.. and also make it finger friendly (unlike M2D, no need to go back to homescreen to check email/sms previes and also calendar events, calls, etc.. also unlike big taskbar - from the touch phones, this'll have previews)
video: http://www.youtube.com/watch?v=z7qbPa1O8Ys&eur (at the 2 minute mark) , http://www.youtube.com/watch?v=hy-YcGNyJds
mjg7876 said:
Interesting...I will have to think about how to tackle that. It would basically take a new file explorer (like total commander). This might be a bit larger than I want to tackle, but will research it a bit before ruling it out.
GUdy
Click to expand...
Click to collapse
Fexplorer2 is basically a dll that works with the original file explorer context menu. there is a small exe that overwrites the original explorer to make it think that the explorer"s context menu has already been opened.
in a way it maybe possible to write a new dll and two exe
EXE 1 to replace the file explorer
EXE 2 to make thumbs db
DLL (conte4xt menu that alows to view as thumbnails/list etc ; as well as launching the second exe to make a thumbsdb)
maybe you can get some help from Hou Ming, the guy that made that program before.
it would be cool if you could get some of the old emus like pocket gba and pocket snes with window 6.1 I know i would be happy.
le_cactus said:
... when AC power gets connected/disconnected, when there is a change in screen orientation, and when a headset gets connected/disconnected and ...
Click to expand...
Click to collapse
I have been looking for a program that would stop the music (S2P, Audio Manager, or WMP etc...) if during playback of the music the headset is removed. Or for instance, when the device is on vibrate and you connect headset, it automatically changes profile to normal or something.
Another one is when I dock my device (or connect AC basically), I'd like clock program (or home screen, or photo slideshow, etc...) to come up automatically.
A feature that I miss from my older phones is the ability to set them to beep every minute during a phone call.
Now these are very general and not specific features. If you have any questions, don't hesitate to contact me!
Thank you,
SiNAra
ytsejam_ said:
a system-wide launcher dock program like that on the velocity 103 PPC..
here's the URL for the review and video of the app (and the phone)
-------------------------------------------------------------
a new top bar replacemeent/notification system much like the "android Notification Drawer" it can replace the bubble (multiple) notifications icon when you got multiple and simultaneous notifications.. and also make it finger friendly (unlike M2D, no need to go back to homescreen to check email/sms previes and also calendar events, calls, etc.. also unlike big taskbar - from the touch phones, this'll have previews)
video: http://www.youtube.com/watch?v=z7qbPa1O8Ys&eur (at the 2 minute mark) , http://www.youtube.com/watch?v=hy-YcGNyJds
Click to expand...
Click to collapse
The launcher on the 103 looks a lot like manilla, I know it is diff, but to me it seems mainly by presentation, not functionality. I do however like the notification top bar like that on android. Not sure how difficult taking over the top bar would be. I will do some digging.
S.V.I said:
Fexplorer2 is basically a dll that works with the original file explorer context menu. there is a small exe that overwrites the original explorer to make it think that the explorer"s context menu has already been opened.
in a way it maybe possible to write a new dll and two exe
EXE 1 to replace the file explorer
EXE 2 to make thumbs db
DLL (conte4xt menu that alows to view as thumbnails/list etc ; as well as launching the second exe to make a thumbsdb)
maybe you can get some help from Hou Ming, the guy that made that program before.
Click to expand...
Click to collapse
Can you give me a link to this? The only thing I could find (quickly) was sketchy at best. Still seems a bit much, but would like to know more about this Fexplorer2 thing before nuking the idea.
Gudy
Hi.
I was playing a little bit using VS2008 and Windows Mobile 6 SDK to create my own mobile application in C#.
But what really is annoying is the missing ability of creating 'nice' UIs.
For example G-Alarm (http://forum.xda-developers.com/showthread.php?t=422362) looks much nicer then a 'simple app'.
How are those apps be done?
Or is it raw graphic programming?
Any tips appreciated.
Please get me on the road. ;-)
Regards,
AtzeX
You can use images to create nice UI's. You can make nice images with photoshop or paint.net
Sure, but that would mean, that the UI is static.
What about some dynamic, like buttons and the effects when hovering over them etc.?
Is this all done by combining different images?
Is there somewhere a sample-application demonstrating that technics?
Or is there any toolbox what they use?
AtzeX said:
Sure, but that would mean, that the UI is static.
What about some dynamic, like buttons and the effects when hovering over them etc.?
Is this all done by combining different images?
Is there somewhere a sample-application demonstrating that technics?
Or is there any toolbox what they use?
Click to expand...
Click to collapse
H-overs are usually just 2 pictures .
...not to forget the pressed state.
So, do I really have to become a graphic artist thatfore?
No other way/tricks/(common)libraries?
In what I've done, use a picturebox rather than a button, and then change the image on the mousedown/mouseup events.
If you like the button styles of a particular thing (e.g. the Diamond/Opal/whatevers volume control), I'd extract the image, resize it and you're good to go.
Obviously ask the relevant owners permission first!
Attached is the Jade volume control button (I have it in transparent, but it's a large file... I'll upload it somewhere else if wanted) which may be of use as a simple On/Off button.
l3v5y said:
In what I've done, use a picturebox rather than a button, and then change the image on the mousedown/mouseup events.
If you like the button styles of a particular thing (e.g. the Diamond/Opal/whatevers volume control), I'd extract the image, resize it and you're good to go.
Obviously ask the relevant owners permission first!
Attached is the Jade volume control button (I have it in transparent, but it's a large file... I'll upload it somewhere else if wanted) which may be of use as a simple On/Off button.
Click to expand...
Click to collapse
so they aren´t released yet ?!? OMG, xda is hacking out every piece of software but no complete diamond gfx-pack ?
would be really great, I´d like to modify them and use them for some own projects.
Thanks l3v5y!
But unfortunately I will have no time left in the next weeks, because I will be away.
But I will try and respond when I'm back.
Regards,
AtzeX
Is it possible to make pictures/pictureboxes transparent???
I want to embed png files containing transparency information
I tried so long but couldn`t find out....
thx
ya, welcome to the .net mobile world lol. I've been trying to come up with some nicer guis on my own for a few weeks now, with little luck due to poor documentation/examples and understanding of the gdi drawing capabilities.
if possible, please keep us (me) updated on what you find or code. there's just so little open source or documentation in the .net mobile world (it seems to me at least) for creating any controls (other than odl's) that try to move themselves away from the standard look and feel of the textboxes, comboboxes, etc.
I was wondering if the xFlib libraries could be used to create apps... http://www.xflib.net/
Then why would I want to use XFlib ???
XFlib has been designed following a few principles : completely free library, very simple to use, and with good enough performance to allow you to do your games without too much technical knowledge…
It all started when we, at the XFTeam, decided to do some PocketPC development. There were already tons of solutions out there, like using .Net, but pretty much everything was Windows-based, which was a problem for the Linux users That's where CEGCC came in to help : it provided us with a great free cross-platform compiler for ARM PocketPC !
We have been strongly influenced by GBA/NDS development, so the library was also designed with strong analogies to the old school 2D consoles : manage your sprites, bitmap layers, tiled backgrounds, text, etc…
Click to expand...
Click to collapse
Nice site for creating buttons:
http://cooltext.com/Buttons
Transparency and Custom controls
Transparency is a pain in the but with .net. The only way I was able to get it to work was by making unsafe system calls by add using "System.Runtime.InteropServices;"
and call Alphablend from the coredll.dll file.
[DllImport("coredll.dll")]
extern public static Int32 AlphaBlend(IntPtr hdcDest,
Int32 xDest,
Int32 yDest,
Int32 cxDest,
Int32 cyDest,
IntPtr hdcSrc,
Int32 xSrc,
Int32 ySrc,
Int32 cxSrc,
Int32 cySrc,
BlendFunction blendFunction);
Not only is it a pain but it seemed to slow down my animations significantly.
or using the native .NET GDI you can do this the following way:
this method olny makes an exact color transparent but you can't set transparency values.
System.Drawing.Imaging.ImageAttributes attr = new System.Drawing.Imaging.ImageAttributes();
// "this sets your transparent color, the color you want to disappear"
attr.SetColorKey(Color.White, Color.White);
e.DrawImage(bmp, dstRect, 0, 0, bmp.Width, bmp.Height, GraphicsUnit.Pixel, attr);
the code above is an incomplete segment that would display a bitmap named bmp with the exact color white gone.
I can post an example in C# if people want it. But basically for a unique look, I don't use any windows controls. I make a buffered picture the size of the display and bitblit the images off screen and switch them in like in a video game rendering. I draw how each control should look and then monitor mouse location and click locations to determine what control is being interacted with and what images to switch them out with.
I release a custom UI replacement program called FlipSlide here http://forum.xda-developers.com/showthread.php?t=385036 there is source code available from http://sourceforge.net/projects/flipslide/ for this that uses these techniques.
hope that helps somebody.
AtzeX said:
Hi.
I was playing a little bit using VS2008 and Windows Mobile 6 SDK to create my own mobile application in C#.
But what really is annoying is the missing ability of creating 'nice' UIs.
For example G-Alarm (http://forum.xda-developers.com/showthread.php?t=422362) looks much nicer then a 'simple app'.
How are those apps be done?
Or is it raw graphic programming?
Any tips appreciated.
Please get me on the road. ;-)
Regards,
AtzeX
Click to expand...
Click to collapse
You can read this article: Building Graphically Advanced Applications with the .NET Compact Framework 3.5
thx for your help chetstriker
i will download the sourcecode and try to figure it out...
Hi all
I am a software developer and I am interested in developing smartphone applications on my spare time (and I have a lot) for free.
What I need is ideas…. Meaning, me my self has HTC Diamond and all of my application needs is modest but I am sure that you guys probably have more needs then I do and …. My be you can help me help you … so bring on the ideas (… just not themes and all of this kind of applications).
Thanks
csharpcoder4u said:
Hi all
I am a software developer and I am interested in developing smartphone applications on my spare time (and I have a lot) for free.
What I need is ideas…. Meaning, me my self has HTC Diamond and all of my application needs is modest but I am sure that you guys probably have more needs then I do and …. My be you can help me help you … so bring on the ideas (… just not themes and all of this kind of applications).
Thanks
Click to expand...
Click to collapse
Very good.
Okay, I've got a request:
I need a little program, which is the same like BluePower which switches BT on when connecting to AC but a little bit more extended.
So, 2 things are very needed:
1. A popup which asks if BT should really switched on (YES/NO; Standard: YES)
2. This prog should recognize if a BT-device is connected so BT should stay on when loosing AC-Power
That's for now
-Lycox
- how about an application that converts any selected email or sms into an appointment
simple but very very usuful
photo uploader
hi, i'm looking for a program to upload, pictures/photo's/video to my own website. like, you make a picture and then you can select to upload it to your own specified website. maybe also the posebillety with gps position and some comments. don't know if it's possible.
pls think about it!
grtz heyk
hey i m looking for photoeditor for elfin can u made it
Really cool would be, to have an small app like g-profile, which for example turns on wi-fi on an fixed placed at an fixed time.
for example i come home, it recognizes this gsm singnal, and wi-fi turns on.
or i get to work, its not yet my breakt and it turns the volume to just vibra. than my break starts and volume turns up.
gprofile can do such thing but just with one reason, gsm OR time, i would need both
i want if you fancy making a simple but functional hard key program swapper so i can change the hardkeys setting easily to other programs.
thanks for the offer wish I could do this.
I wouldlike to log calls in contact notes like agendasfusion.
callcalendaris close but buggyand logsonly incalendar.
a weather app like weatherpanel where wallpaperis live radar
a calculator app with running tape, and a transparent keyboard
looks like youre gonna be busy!
i was thinkin recently of working with someone to make some palm pre-like apps
the fluidity of the apps on that device ive seen in preview vids and the wonderful use of the small screen real estate (no top and bottom bars, minimal buttons), is something that is almost necessary on screens like my htc touch (same screen size as the palm pre)
so, i would provide all the graphics for these apps, just need a developer
i think so far pocketcm contacts has contacts/sms covered.. very smooth scrolling, with a skin i can acheive the same simplicity and great use of fullscreen view on a small screen as i whippd up in this photoshop mockup:
i think what winmo needs is a good email interceptor app.. there are none that are skinnable to the extent of pocketcm contacts or as fluid, and then an image viewer (see palm pre screenshots of that app here -simple but very useful-:http://www.engadget.com/photos/palm-pre-official-ui-shots-1/1290333/ you can find videos all over) and a similar calendar app
most needed is the email app
if you could develop trust me.. you would have an insane following of obedient users
weve been looking for one for a long time, but its never come thru
if you make it, ill provide graphics!
think about it
htctoucher
What about a application, an actual good and working application that lets you create group distribution lists for email groups in your contacts similar to how the blackberry allows you to do it from their contact list and be able to use the group listing whether creating a new email or forwarding an email. I am shocked that this issue hasn't been addressed sooner.
dexstar said:
i want if you fancy making a simple but functional hard key program swapper so i can change the hardkeys setting easily to other programs.
Click to expand...
Click to collapse
Try http://ae.inc.ru its called AE Button plus and its free
Woah man ur gonna be real busy
I like to be simple so........how about an application that will turn a picture into the real thing, like sayyy; Jessica Alba
fatso485 said:
- how about an application that converts any selected email or sms into an appointment
simple but very very usuful
Click to expand...
Click to collapse
+1k
Complete lack of integration between calendar + contacts and email + contacts is very disheartening!
My problem is that I do a lot of presentations, and all the presentation pointer/remote apps out there cannot meet my needs in terms of simplicity. All of them require me to run a server app on my PC.
I have used one in Palm that emulates a bluetooth HID keyboard/mouse, meaning it can do anything that your mouse or keyboard can do. The app requires to have virtual keys for Ctrl, Alt, Del, Function keys.
Link to the BlueRemote software
http://www.palmgear.com/index.cfm?fuseaction=software.showsoftware&PartnerREF=&siteid=1&catid=16&area=software.category&searchtitle=Wireless%20%2F%20Networking%20%2F%20Communications&searchterm=&step=1&orderby=sales&direction=asc&userid=0&prodid=124035
Suggestion
fatso485 said:
- how about an application that converts any selected email or sms into an appointment
simple but very very usuful
Click to expand...
Click to collapse
Maybe a suggestion, in Microsoft Office, If we copy/paste or drag-drop email to Calender, then it becomes an appointment.
Maybe this could help you in some thinking...
ASh
Papi Jump
Hi!
My idea is to make a game, similar to Papi Jump (a great game for iPhone) - you can see the game on this link: http://www.youtube.com/watch?v=vQxltToeNXo . It's an arcade game - you control a jumping ball with tilting your device.
It would be great if could make this game work for Windows Mobile.
Since we're all tossing stuff into the "wishing well", I can add something too
An application that would scroll RSS feeds on Home screen in Manila.
Of course, such an app isn't hard to make, the RSS Hub saves its channels into simple files - the problem is how to incorporate it into Home screen.
Well, I got an idea for that as well! Recently a small program called Personalizer showed up that enables us to change the network provider name into anything we want - that would be the perfect place for RSS scroller to show up! And since there already exists a way to modify this data, I suppose it would be possible to use Personalizer as backdoor for the feeds to show up in that text filed!
Even if they wouldn't actually "scroll", I think they could be made to change every 4-5 seconds.
fatso485 said:
- how about an application that converts any selected email or sms into an appointment
simple but very very usuful
Click to expand...
Click to collapse
+2
Or how about a Config-Editor for FingerPoint? ( http://forum.xda-developers.com/showthread.php?t=499734 ) - so there's no more need to edit the XML Config File manually?
How about an application that reminds you to drink water and tracks how much water you have drank per day. As everyone should know, the average male should drink 3 to 5 liters of water everyday and ladies should drink 2 to 4 liters.
How about a litle app that:
1-Reminds you to drink
2-Allows you to input how much water you have drank (when reminded or manually)
In the long run, you could monitor how much water you consume on a monthly,qaurterly ,biannually and yearly basis.
Hello Everyone,
I'm a graphic designer.. and I (for some reason ) am so sure this is possible on an Android phone... but the question is.. is it worth their time? i hope my $20 dollars and other possible donators... can help answer that question!!
Here's The Concept: (sorry for the long essay)
I would like to use my android's touch screen to be my little helper when i'm on my graphic programs... either photoshop/illustrator.. even my html programs.. i would like a dedicated screen with Tools and Options that i usually use...
This could be done in many ways.... one would require a "server" application and displays the shortcuts according to the App in focus...
or...
You can make android as the HID thing (Sorry!! Thats as technical as i can get..)....so it sends "macros" to photoshop ... but this doesn't really require a server cuz HID thing shud be multi platform?? if i'm not mistaken...so instead of detecting.. there would be applications we choose which will show the appropriate buttons....
Here's one example: Photoshop
While one Photoshop, I would like Cuboid Buttons for Basic Tools(Marquee, Paint Brush, Eraser, Move tool..... ) on an array of screens and with fixed items like the "Undo" or "Layers" "Characters"... which will bring up the proper dialogue...
I'm willing to donate 20$ to the person who can do this ... i hope others can feel my frustration and want to help too... so we can get this going...
Plus.. there is a "Clingo" accessory for phones that can attach any device to any monitor!!! from the looks of it... it could very well work with my idea!!
Thank you for taking your time reading my big essay!!! (sorry)
I may not be a developer for android, but I know that if anyone does it, it'll cost them more than $20 of their time...
I think you should learn the key shortcuts or buy a keyboard with extended keys that you can program.
@DKuntz2 i know it will be more than 20 dollars... thats why i started my donation at 20 ... whoever is feeling like donating to this cause... can hopefully make it worth for the developer....
@jobarjo Yeah, I already know the keyboard shortcuts ... but theres alotta features on the photoshop that are not possible through a simple keyboard shortcut... and besides.. i only used Photoshop as an example, this can be implemented with Word Processors... Web Browsers.... Full screen Media player with controls on the side... I don't know theres alotta potential...
i just hope people find this 'donation' worthy as i do.... a guy can hope right?
It sounds like what you really need is the Optimus Maximus keyboard; http://www.artlebedev.com/everything/optimus/
Thanx.
but I am already familiar with the optimus..and that it can change the whole keyboard to pictures...anyways i just thought the guys would want this on their android phone.. rather than wasting $2400 US on that.!!!
I hope ill be able to make this on Google's App Inventor...
Peace.
solidkundi said:
I hope ill be able to make this on Google's App Inventor...
Click to expand...
Click to collapse
You can't.
You need a "server" application on the computer which you can make or interact with a GAI app.
You also may need to interact with Photoshop in a way because its not just sending keyboard shortcuts because some tools don't have that.
I am unsure if you need to make a photoshop plugin for that or you can call some functions in the photoshop.exe.(I don't even know how my 3DConnexion SpaceNavigator calls the functions and such in Photoshop)
Google apps doesn't allow this functionality and I am unsure if it ever will(and even if it will it won't be soon)
well that sucks doesn't it...
thanks for that.. i hope i'll be able to make something out of google inventor ... i have soo much ideas... but they're all either novelty or something very specific to me...
This would be really useful, but hard, the way I see it you could do it using HID:
An android App that communicates as a slave device to a desktop machine.
Could use bluetooth and pretend to be HID but you'd have to write the HID layer from scratch in java as Android only does HID as the master (and even then only in CM6)
This would send keypress events which may be enough for some apps, but generally you'd need to map those events to some other combination of actions, under windows a combination of http://www.autohotkey.net/ and http://www.autohotkey.net/~Micha/HIDsupport/Autohotkey.html may do the job.
Implementing HID under Android would be the had part (for me). The rest would need to be configured per-feature-per-app
I do know there are several keyboard applications availble so keyboard shortcuts and keypresses aren't really the problem.
I am just unsure how you would link into photoshop tools without key combos.
You can get for iphone, good idea saves a lot of time
If someone is skilled enough to edit this to something with a Tools gui or allowing to asign a picture and hotkey to a button on the screen and pass on the hotkey to the server..
http://code.google.com/p/remotedroid/
And maybe remove the mouse functionality or put it in a tab.
I think ... we can make an "Action" file.. for most of the commands... and then send the respective keystroke .... that could work also..... and like u said have tabs
but i wudn't need mouse in there...