[MOD][SENSE2.5TAB] SenseUtil (Tab Control File Editor) [10 Aug 2011 New Release]

Search This thread

meltwater

Inactive Recognized Developer
Jan 28, 2009
2,070
325
Project Open
Compiled Cab file attached to this post.

Code-Plex Page (source available):
http://senseutil.codeplex.com
attachment.php


======================
Project Status
======================

Initial development is completed.
The application does all the items defined in the Manifest!

Ideas and feedback are very welcome, particularly for the GUI (which is more functional than anything else).

Graphics etc are welcome, then I can add graphical controls etc and state icons.
Added example shortcuts
Shortcuts for use with installing and uninstalling tabs. See Shortcuts section of the manual below.


Release 10th Aug 2011 (meltwater_SenseUtil (9433).cab) - Thanks to mike2nl for gathering the extra tab details and corrections!
+Added (shortcuts & resource files):
1a9fc010_manila \windows\HTC\today.mode9
2c417551_manila \windows\HTC\GGorizont\GGorizont.mode9
04ca8df7_manila \windows\HTC\GPSTracker\GPSTracker.mode9
34C172FA_manila \windows\HTC\Manilatv\favorites.mode9
037D6881_manila \windows\HTC\GameFifteen\GameFifteen.mode9
0C3A0700_manila \windows\HTC\programlauncher.mode9
2CAADFCD_manila \windows\HTC\manilaradio\manilaradio.mode9
+Corrected document tab shortcut
+Language title files (6f286a05_manila_en-us_titlefixed.txt is template for others)
+Language title files added to cab (although most require translations etc)

Code:
[B]Release 22nd Feb 2011 (meltwater_SenseUtil (6952).cab) - 680views[/B]
+ Added fix for "Unable to update file"
+ Using Release instead of Debug build

[B]Release 26th Jan 2011 (meltwater_SenseUtil (6328).cab) - 189views[/B]
Code is the same, but added CabFile to package (with Shortcuts) and HQ icon for application.
- Cab will always install to Device "\windows\SenseUtil" regardless of user selection.

[B]19 Jan 2010 (SenseUtil_6026.zip)[/B]
Changed default position to after home tab.
Added shortcuts for more tabs.

[B]18 Jan 2010 (SenseUtil_6007.zip)[/B]
Updated softreset message for commandline updates.

[B]17 Jan 2010 (SenseUtil_5973.zip)[/B]
------------------
Added shortcuts.
Added option to reset device following command-line modification of tab control file (with prompt so user can wait to see if sense restarts without reset).

[B]2 Dec 2010 (SenseUtil_5021.zip) - 246+140views[/B]
------------------
Initial Release
Cab (thanks to Captain_Throwback).

======================
Additional Work
======================

Missing Available Tabs:
===============

If there are any missing tabs from the available tabs list, then send me the details so I can generate a resource file.

Extra Features (To Do):
==========

At some point I will update the app to read the configuration keys (if available) and generate the file using the order defined there (plus re-generate the keys to keep disabled tabs disabled).

Graphics:
======

If anyone is interested, I can add icons to help determine the states of the tabs...just need some graphics!
Possible State Icons for tabs:
Tab Installed & Present - in the tab control file & on the device (Installed Fine)
Tab Not Installed & Present - not in the tab control file but on the device (i.e. Available to add)
Tab Installed & Not Present - in the tab control file but not on the device (!Warning State! Sense will probably fail to run)
Tab Not Installed & Not Present - not in the tab control file or in on the device

Also the icon could indicate if the source is from XML file or the tab control file (only applies to the installed ones - not installed ones will always be xml).


====================
User Manual
====================

I'll try to update this with new information as and when I get time, hopefully the app isn't too difficult to understand.

Control Sense Page:
============

This page controls sense...
attachment.php


[Start Sense]:
If sense is not selected in the Today Plugin, this adds and triggers sense to start.

[Stop Sense]:
If sense is running, or set in the Today Plugin to run, this will remove it and trigger it to close.

[Restart Sense]:
This will cause sense to restart (by removing and adding it from the Today Plugin).
Note: Any changes to your Tab Control File (26948339_manila) are ignored.

[Reset Sense]:
The same as [Restart Sense], but will also cause it to re-build by removing the ManilaFull.xml file.
Note: If you have changed your Tab Control File (26948339_manila) any changes will be re-built in this process.

[Full Reset Sense]:
The same as [Reset Sense], but will also delete the configuration registry keys (this is required when you add/remove tabs for them to initialise correctly and for them to show up in the Tab Re-arrange page within the Sense Settings Tab).
Note: Any tabs disabled via the Sense Settings Tab will be re-enabled!

[Soft Reset]:
This simply restarts your device, quite often sense will not re-start correctly without at least one reset.

Tab Control File [Update]:
If you have generated a new Tab Control File (26948339_manila), this option will replace your existing file (creating a timestamped backup within the SenseUtil folder) and [Full Reset Sense].

Tabs (Loaded) Page:
============

On start up, this page shows the contents of the Tab Control File (26948339_manila).
attachment.php


[Build]:
Once you have made adjustments to the list, you can build a new file (which you can then view using a suitable text editor and check if you wish).

Tab Source [#]:
This toggles the source of the tab data:
Default=Your original Tab Control File
File=The loaded xml resource file
Note:
If the tab is not available (the xml file does not exist) then the source will not change. Also if you delete and re-add a tab which was in your tab control file, it will not be able to be set back to Default - you will need to Reload the data fresh.

Remove [-]:
Removes the tab, the tab will no longer be installed.

Shift Up [^] and Shift Down [v]:
Allows you to adjust the default positions of the tabs.

Tabs (Available) Page:
============

This page will show you the tab's which are available (loaded from the Resource Folder xml files).
attachment.php


When you select an item, you will be able to see if the tab's keyfile is Present On Device or not, this provides an indication of if the files required for the tab are on the device
Note: Only the keyfile is checked - there will be additional files required for the tab/sense to function.
Various details about the tab are also available, if a custom tab links to the tab's development and release pages should be provided.

Add Tab [+]:
Allows you to add a tab to your Tab Control File, if the tab is not detected as Present On Device you will be warned that Sense probably will not start (you will need to install the correct tabs files on your device).

Add All [+All]:
This will add all the tabs which are detected as Present On Device but not currently in the Tab Control File.
Note:
Only the keyfile is checked - there will be additional files required for the tab/sense to function. So be sure you have correctly installed all the required files for a particular tab.


Settings Page:
============

Provides various options for the app.
attachment.php


Register to Today Softkey:
[Set Action/Contacts)]​

Only recommended if you use the app a lot as it provides an easy way to start up/control sense if it has not loaded.

[ ] Advanced View:
This allows you to see all the data which the app collects about the installed/available tabs and uses to do what it does. Useful for debugging issues with the resource files or problems with the app itself.

[Reload Files]:
This will read in your Tab Control File again, and reload all the resource Xml files (for the available tab list).
Note: Any changes you've made to your Tab Control File in the app will be discarded.


Command Line Options:
============

SenseUtil add 6B54437C_manila
- Adds the specified tab, leave other tabs as they are

SenseUtil renew
- Replaces all tab details with data from the xml files (leaves any not found in the xml files as they are)

SenseUtil addall
- Adds any tabs which are not in the tab control file but found on the device (checking for the key mode9 file), the other tabs are left as they are. New tabs are added at end before settings tab.

SenseUtil addallnew
- As above, but other tabs are replaced with details from the xml files (leaves any not found in the xml files as they are)

SenseUtil remove 6B54437C_manila
- Removes the tab if installed on the device

Shortcuts:
========

By using the shortcuts, it is assumed that SenseUtil is installed to device location:
"\Windows\SenseUtil\"

Code:
i.e For FbTab:
Add Shortcut:
54#"\Windows\SenseUtil\SenseUtil.exe" add 51B6F88A_manila

Remove Shortcut:
57#"\Windows\SenseUtil\SenseUtil.exe" remove 51B6F88A_manila

For other tabs, look up the xxxxxxxx_manila file in the resource section and replace 51B6F88A_manila (note: the 54# and 57# need not change since the length should remain the same). Or post a request and I'll upload suitable shortcuts!

Note:
1. Before using the shortcut you must install the correct files for the tab in the correct location (if files are not present the tab will not be added).
2. System may need Soft-Reset (turn off and on again) for sense to restart correctly (you will be prompted to wait and see if sense starts).
3. The order set by the settings tab will be reset by this process.


Code:
[SIZE="5"]===============================
Application Manifest - What I Planned To Achieve
===============================[/SIZE]
The plan is a simple program which reads the tab control file (file 26948339_manila) and allow you to add/remove tabs using a simple xml file to provide the correct info.

MoonNah's ([url]http://xdaforums.com/showthread.php?t=670116[/url]) B_L_Group_FixStartManila_2.5.cab is an excellent tool which simply re-generated the list based on the files it found within the windows dir, worked well except there was no indication that is was successful or what it had done.

I think it would be quite simple to extend the idea a little further by creating an app with a gui which then searched it's local folder for xml files.  The xml files will be named to match the key mode9 filename for each tab:

i.e. RSS Tab = \windows\htc\people\RssFeed.mode9 = 6B54437C_manila
[B]So there would be a xml file called 6B54437C_manila.xml which contains the data for the tab:[/B]
[CODE]<Page Order="X" Name="rssfeed.page" PackageName="HTC" Title="[[IDS_RSSTITLE]]">
	<ComponentReference Name="page" Mode9Path="HTC\People\RSSFeed.mode9" Component="SummaryAllPage" SmartComponent="true"/>
	<ComponentReference Name="icon_normal" Mode9Path="HTC\Manila\RssFeedicon.mode9" Component="RssFeed_Off"/>
	<ComponentReference Name="icon_selected" Mode9Path="HTC\Manila\RssFeedicon.mode9" Component="RssFeed_On"/>
	<ComponentReference Name="icon_preview" Mode9Path="HTC\Manila\RssFeedicon.mode9" Component="RssFeed_Preview"/>
</Page>

So the app would look for each of the xxxxxxxx_manila files in the windows directory and then allow the user to add/remove any tabs which are present on the system. This would also allow users to totally disable any "problem" tabs more effectively than via the config keys.

The xml files could also have a full list of required files (which could also be checked), perhaps a link to obtain the latest release, the app could then be released with xml files for all current tabs and any new ones so users can easily see what is available and obtain them.

The app would also handle the disabling and resetting of sense so that the changes are correctly made.

Also the app could support command line option to install a specific tab if present (not making any changes to the others), which can then be used by cab files.


Note: Software is able to set today screen softkeys for easy use, but a proper soft-key manager is available here if you decide you want to set them to something different:
http://xdaforums.com/showthread.php?t=388281

I will have a try at making the app myself but my time is very limited so any help will be greatly appreciated. But I do think that such a program would be very useful for those who have problems editing their tab control file (file 26948339_manila).

Let me know what you think?

======================
Language Title Fixes
======================

Custom Tabs (like RSSTab/Facebook Tab display IDS value on 1st run)
This is because the translation file used for the tab titles is separate to the tab's own language file.
I will update senseUtil to allow the users to update the files using a shortcut, but until I've completed and tested that, I've included a zip file of the required files.

CAB INSTALL:
Install meltwater_LangTitleUpdate_v01.cab. - 155views
Reset sense.

MANUAL INSTALL: - 149views
Unzip and copy the files into your devices \windows\ directory, and then reset sense.

Please let me know if you have any problems or if you have updates for the contained translations (I've only updated the ones I've already got translations for).
[/CODE]

======================
Language Title Fixes
======================

Custom Tabs (like RSSTab/Facebook Tab display IDS value on 1st run)
This is because the translation file used for the tab titles is separate to the tab's own language file.
I will update senseUtil to allow the users to update the files using a shortcut, but until I've completed and tested that, I've included a zip file of the required files.

Updated language files are contained within the SenseUtil cab file, please update the file language files and post them here (they will get included in the next cab).​
 

Attachments

  • SenseUtil.jpg
    SenseUtil.jpg
    32.2 KB · Views: 1,518
  • SettingsPage.Jpg
    SettingsPage.Jpg
    45 KB · Views: 9,646
  • ControlSensePage.Jpg
    ControlSensePage.Jpg
    55.6 KB · Views: 9,709
  • Tabs(Loaded)Page.Jpg
    Tabs(Loaded)Page.Jpg
    81.8 KB · Views: 9,779
  • Tabs(Available)Page.Jpg
    Tabs(Available)Page.Jpg
    86.4 KB · Views: 9,689
  • Lang_Titles(9433).zip
    182.2 KB · Views: 447
Last edited:

meltwater

Inactive Recognized Developer
Jan 28, 2009
2,070
325
Ok, I've created an outline project in CodePlex, I will start putting in some basic stuff and see how I get on.

Time is limited for me, so if someone else is interested in working on this too then they are welcome. The source is easy to download, and I will happily add you to the project if you wish to upload your progress directly.
 
  • Like
Reactions: Nitro_123

meltwater

Inactive Recognized Developer
Jan 28, 2009
2,070
325
1st Release!

Ok, I've put some starting stuff in (attempting to control sense).

Need some people to test it, I think there is an issue with starting sense again although not sure what. Soft-reset and it will comes back (assuming you've not changed anything else).

Sense Control Tab:

Start Sense - Clears the entry in the Today page for HTCSense
Stop Sense - Sets the entry in the Today page for HTCSense
Restart Sense - Does Stop and then Start with a delay in the middle.
Reset Sense - Same as Restart Sense but deletes the ManilaFull.xml file (which will cause sense to re-initialise - file will be regenerated)
Full Reset Sense - Same as Reset Sense but also clears the configuration keys (required when you add/remove a tab)

Settings Tab:
Allows you to register the app with the Today page softkeys (gives easy way to get sense running again!).
CAUTION: Only set to restore the defaults on my phone (LSoftkey=Action Page RSoftkey=Contacts).
Keys effected by this setting are:
HKCU\Software\Microsoft\Today\Keys\112
HKCU\Software\Microsoft\Today\Keys\113

Find the latest code in codeplex: http://senseutil.codeplex.com
 
Last edited:

Skrobel

Senior Member
Jan 14, 2010
829
64
Piaseczno
Tester :)

I can try to test the app if you want.
Using Jackos ROM with Sense 2.5.20181527.0
But I flash relatively often so I'm able to test it on some different versions.

Could you point me out what I should do now (what to download, what to pay attention on)?
 

meltwater

Inactive Recognized Developer
Jan 28, 2009
2,070
325
I can try to test the app if you want.
Using Jackos ROM with Sense 2.5.20181527.0
But I flash relatively often so I'm able to test it on some different versions.

Could you point me out what I should do now (what to download, what to pay attention on)?

Excellent!
So far it only has the basic sense control buttons in, so it would be help to check that they work correctly. My testing has shown that it sometimes has issues with starting sense, but that could be down to my sense setup (it's not very stable due to CHT and my own development work...).

At the moment, I seem to also have some issues with the softkey settings (but I'm happy I can continue testing that, issues with permissions etc I think).

From the codeplex changeset package (the zip file you download) you will only need the SenseUtil.exe (later on anything in the \Debug directory as files are added).

Hey meltwater!

I see you've gotten tired of manually updating people's Tab Control files :).

Great idea - I wish I had some programming knowledge so that I could help. Unfortunately I do not. How difficult would it be to learn? What software would I need?

Well more accurately... tired of some users...although having an easy way to reset sense etc will be very handy. Plus does seem to be the number 1 cause of issues.

It is a good as project as any to learn how to program on (nice mix of changing the registry, reading files and standard .net forms). You will need something like Visual Studio 2008 Professional though (you can get 90 day trials quite easy - let me know and I'll find you one).

I'm quite happy to help guide you (or anyone else interested) as far as I am able (although my code should not be taken as a prime example of how to code - it's not my trained area of programming).
 
  • Like
Reactions: BHS Interceptor

Skrobel

Senior Member
Jan 14, 2010
829
64
Piaseczno
OK, it's time for first impression :D

From the Sense control tab everything seems to be working cool. I tried each option in the first tab several times and Sense always started without problems.

I have one question though. After the first time I made a Full Reset (with the config keys) this button was inactive anymore. I recon that the keys are already deleted. But shouldn't they be redefined during Sense next start?

And I confirm the matter with softkeys. The first time I wanted to assign SenseUtil to right softkey, the "Unexpected error" appeared (right after I confirmed I was sure) and I had to kill the app. However the second time each left and right softkey worked.

But the Set (Action/Contacts) button never worked. There is always Unexpected error when I tap "OK" in the message box. Below I present the details of the error.

Code:
SenseUtil.exe
ObjectDisposedException


w System.ThrowHelper.ThrowObjectDisposedException(String objectName, ExceptionResource resource)
w Microsoft.Win32.RegistryKey.EnsureNotDisposed()
w Microsoft.Win32.RegistryKey.EnsureWriteable()
w Microsoft.Win32.RegistryKey.SetValue(String name, Object value, RegistryValueKind valueKind)
w SenseUtil.Settings.SetSoftKey(Int32 selkey, String text, String url, Boolean confirm)
w SenseUtil.SenseUtil.buttonRegDefaultSoftKey_Click(Object sender, EventArgs e)
w System.Windows.Forms.Control.OnClick(EventArgs e)
w System.Windows.Forms.Button.OnClick(EventArgs e)
w System.Windows.Forms.ButtonBase.WnProc(WM wm, Int32 wParam, Int32 lParam)
w System.Windows.Forms.Control._InternalWnProc(WM wm, Int32 wParam, Int32 lParam)
w Microsoft.AGL.Forms.EVL.EnterMainLoop(IntPtr hwnMain)
w System.Windows.Forms.Application.Run(Form fm)
w SenseUtil.Program.Main()


I hope this all helps. I would also like to learn programming, but it needs more time than I actually have... ;)
 

meltwater

Inactive Recognized Developer
Jan 28, 2009
2,070
325
OK, it's time for first impression :D

From the Sense control tab everything seems to be working cool. I tried each option in the first tab several times and Sense always started without problems.

I have one question though. After the first time I made a Full Reset (with the config keys) this button was inactive anymore. I recon that the keys are already deleted. But shouldn't they be redefined during Sense next start?

And I confirm the matter with softkeys. The first time I wanted to assign SenseUtil to right softkey, the "Unexpected error" appeared (right after I confirmed I was sure) and I had to kill the app. However the second time each left and right softkey worked.

But the Set (Action/Contacts) button never worked. There is always Unexpected error when I tap "OK" in the message box. Below I present the details of the error.

Code:
SenseUtil.exe
ObjectDisposedException


w System.ThrowHelper.ThrowObjectDisposedException(String objectName, ExceptionResource resource)
w Microsoft.Win32.RegistryKey.EnsureNotDisposed()
w Microsoft.Win32.RegistryKey.EnsureWriteable()
w Microsoft.Win32.RegistryKey.SetValue(String name, Object value, RegistryValueKind valueKind)
w SenseUtil.Settings.SetSoftKey(Int32 selkey, String text, String url, Boolean confirm)
w SenseUtil.SenseUtil.buttonRegDefaultSoftKey_Click(Object sender, EventArgs e)
w System.Windows.Forms.Control.OnClick(EventArgs e)
w System.Windows.Forms.Button.OnClick(EventArgs e)
w System.Windows.Forms.ButtonBase.WnProc(WM wm, Int32 wParam, Int32 lParam)
w System.Windows.Forms.Control._InternalWnProc(WM wm, Int32 wParam, Int32 lParam)
w Microsoft.AGL.Forms.EVL.EnterMainLoop(IntPtr hwnMain)
w System.Windows.Forms.Application.Run(Form fm)
w SenseUtil.Program.Main()


I hope this all helps. I would also like to learn programming, but it needs more time than I actually have... ;)

Good testing thank you!

The config keys are only generated when you rearrange the tabs, plus I only set the enable/disable of the buttons on start up of the app and following a press.

I think I've corrected the exception, but still not 100% sure about the keys (it is enough to make it work though).

Currently reading up on xml, long over-due I learned how to use it properly! :D Will have a new version in a few days hopefully.

Ok read through all the material I found on xml, (a good tutorial http://www.csharpkey.com/csharp/xml/Lesson01.htm) will now find out how much isn't supported in compact .net. Fortunately no real surprises, how I've been dealing with xml has been fine (although missed a few tricks). There's also some open source solutions around which I may look into (but for this it's probably fine keeping it simple, it's more suitable for the work I'm doing with RSS feeds).
 
Last edited:

meltwater

Inactive Recognized Developer
Jan 28, 2009
2,070
325
Ok, new release!

Just put in loading of the xml files which contain the tab information which can be added. Should give a good idea of how things will work!


Will add options to filter the list etc.
Will read the tab control file next, then see if I can add/remove tabs!
 

Skrobel

Senior Member
Jan 14, 2010
829
64
Piaseczno
Ok, new release!(...)

OK, I downloaded, unpacked, loaded on my phone and.... realized that I have Sense 2.1 currently so I won't test it at once.

But just for your info, the Stop/Start sense, and Restart works even with Sense 2.1.19202517.0

Of course in the "Tabs Loaded" I have nothing, and in "Tabs Available" everywhere I see Not Present On Device. I could only test the overall behaviour of the app but this hasn't changed much. Still the "Set" button gives me the unexpected error, so I'm useless this time.

As soon as I will flash something with Sense 2.5 I will test it immediately and report back (this unfortunately won't happen until at least tomorrow).

Sorry...
 

meltwater

Inactive Recognized Developer
Jan 28, 2009
2,070
325
OK, I downloaded, unpacked, loaded on my phone and.... realized that I have Sense 2.1 currently so I won't test it at once.

But just for your info, the Stop/Start sense, and Restart works even with Sense 2.1.19202517.0

Of course in the "Tabs Loaded" I have nothing, and in "Tabs Available" everywhere I see Not Present On Device. I could only test the overall behaviour of the app but this hasn't changed much. Still the "Set" button gives me the unexpected error, so I'm useless this time.

As soon as I will flash something with Sense 2.5 I will test it immediately and report back (this unfortunately won't happen until at least tomorrow).

Sorry...

If you still have 2.1 on, does it use the tab control file in the same way?
i.e. What is the 26948339_manila file like (can you post it?).

"Tabs Loaded" does nothing at the moment anyway, not reading the file yet. The update was to put in my current work in progress.

"Tabs available" I guess the filenames are different for sense 2.1, but can't see why we can't have a set of xml files for 2.1 as well if it works in a similar way. So far I've only created files for the ones on my system and a few which I've had before, I know there are a few missing to add.

Interesting the "set" button gives an exception, thought I'd covered that on my device (will look into it).

Cheers.
 

Captain_Throwback

Recognized Developer
If you still have 2.1 on, does it use the tab control file in the same way?
i.e. What is the 26948339_manila file like (can you post it?).

"Tabs Loaded" does nothing at the moment anyway, not reading the file yet. The update was to put in my current work in progress.

"Tabs available" I guess the filenames are different for sense 2.1, but can't see why we can't have a set of xml files for 2.1 as well if it works in a similar way. So far I've only created files for the ones on my system and a few which I've had before, I know there are a few missing to add.

Interesting the "set" button gives an exception, thought I'd covered that on my device (will look into it).

Cheers.
Here's the Tab Control file from Manila 2.1.1920.2517. It seems to contain similar information, but it contains a LOT more . . .

NOTE: This is from the VGA ported version, but I'm sure the differences are minor (if at all) . . .
 

Attachments

  • 26948339_manila.zip
    8.9 KB · Views: 23

meltwater

Inactive Recognized Developer
Jan 28, 2009
2,070
325
Here's the Tab Control file from Manila 2.1.1920.2517. It seems to contain similar information, but it contains a LOT more . . .

NOTE: This is from the VGA ported version, but I'm sure the differences are minor (if at all) . . .

I would guess that 2.1 does not have the _page.xml files, since that is what the manilafull.xml file looks like, a combination of the tab control and each of the related _page.xml files! Looks like the mode9 files don't include any of the path info beyond the HTC bit, hence why the filenames are probably different.

I'll not worry too much about it for now, interesting though.

Will upload my latest, simply because I'm calling it a night... Populated Tab(Installed) page with some data from the TabControl File - note the buttons will stay disabled (only put in for layout). Oh and the url links on the Tab(Available) aren't enabled yet either.

Update on codeplex now.
 
Last edited:

Skrobel

Senior Member
Jan 14, 2010
829
64
Piaseczno
This is my WVGA control file for comparison. I haven't heared about any custom tabs for Sense 2.1 so I didn't thought you would be interested in it at alll.
 

Attachments

  • 26948339_manila.zip
    9.3 KB · Views: 15

mike2nl

Senior Member
Jul 24, 2009
3,965
670
64
Near Utrecht
@meltwater:

sorry to say that, but i have all the time when i start the version 4851 an error popup. Please see the screenshot:
 

Attachments

  • Screen01_4851.jpg
    Screen01_4851.jpg
    22.2 KB · Views: 52

meltwater

Inactive Recognized Developer
Jan 28, 2009
2,070
325
@meltwater:

sorry to say that, but i have all the time when i start the version 4851 an error popup. Please see the screenshot:

See if the version before that works (since the exception is referring to InitialiseTabLists() which hasn't changed). I added a function before InitialiseTabLists() in the latest, which loads up the sense tab control file (but doesn't seem like it is that). Anyway, will check that there is suitable checking of things to avoid the exception, still building the basics.

Hopefully next time should be able to have a go at matching the tabs found in the file with the ones loaded, then generate a new file.

Cheers
 

mike2nl

Senior Member
Jul 24, 2009
3,965
670
64
Near Utrecht
See if the version before that works (since the exception is referring to InitialiseTabLists() which hasn't changed). I added a function before InitialiseTabLists() in the latest, which loads up the sense tab control file (but doesn't seem like it is that). Anyway, will check that there is suitable checking of things to avoid the exception, still building the basics.

Hopefully next time should be able to have a go at matching the tabs found in the file with the ones loaded, then generate a new file.

Cheers

No stress please i can wait ;), because i skinning the RSS tab.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 8
    Project Open
    Compiled Cab file attached to this post.

    Code-Plex Page (source available):
    http://senseutil.codeplex.com
    attachment.php


    ======================
    Project Status
    ======================

    Initial development is completed.
    The application does all the items defined in the Manifest!

    Ideas and feedback are very welcome, particularly for the GUI (which is more functional than anything else).

    Graphics etc are welcome, then I can add graphical controls etc and state icons.
    Added example shortcuts
    Shortcuts for use with installing and uninstalling tabs. See Shortcuts section of the manual below.


    Release 10th Aug 2011 (meltwater_SenseUtil (9433).cab) - Thanks to mike2nl for gathering the extra tab details and corrections!
    +Added (shortcuts & resource files):
    1a9fc010_manila \windows\HTC\today.mode9
    2c417551_manila \windows\HTC\GGorizont\GGorizont.mode9
    04ca8df7_manila \windows\HTC\GPSTracker\GPSTracker.mode9
    34C172FA_manila \windows\HTC\Manilatv\favorites.mode9
    037D6881_manila \windows\HTC\GameFifteen\GameFifteen.mode9
    0C3A0700_manila \windows\HTC\programlauncher.mode9
    2CAADFCD_manila \windows\HTC\manilaradio\manilaradio.mode9
    +Corrected document tab shortcut
    +Language title files (6f286a05_manila_en-us_titlefixed.txt is template for others)
    +Language title files added to cab (although most require translations etc)

    Code:
    [B]Release 22nd Feb 2011 (meltwater_SenseUtil (6952).cab) - 680views[/B]
    + Added fix for "Unable to update file"
    + Using Release instead of Debug build
    
    [B]Release 26th Jan 2011 (meltwater_SenseUtil (6328).cab) - 189views[/B]
    Code is the same, but added CabFile to package (with Shortcuts) and HQ icon for application.
    - Cab will always install to Device "\windows\SenseUtil" regardless of user selection.
    
    [B]19 Jan 2010 (SenseUtil_6026.zip)[/B]
    Changed default position to after home tab.
    Added shortcuts for more tabs.
    
    [B]18 Jan 2010 (SenseUtil_6007.zip)[/B]
    Updated softreset message for commandline updates.
    
    [B]17 Jan 2010 (SenseUtil_5973.zip)[/B]
    ------------------
    Added shortcuts.
    Added option to reset device following command-line modification of tab control file (with prompt so user can wait to see if sense restarts without reset).
    
    [B]2 Dec 2010 (SenseUtil_5021.zip) - 246+140views[/B]
    ------------------
    Initial Release
    Cab (thanks to Captain_Throwback).

    ======================
    Additional Work
    ======================

    Missing Available Tabs:
    ===============

    If there are any missing tabs from the available tabs list, then send me the details so I can generate a resource file.

    Extra Features (To Do):
    ==========

    At some point I will update the app to read the configuration keys (if available) and generate the file using the order defined there (plus re-generate the keys to keep disabled tabs disabled).

    Graphics:
    ======

    If anyone is interested, I can add icons to help determine the states of the tabs...just need some graphics!
    Possible State Icons for tabs:
    Tab Installed & Present - in the tab control file & on the device (Installed Fine)
    Tab Not Installed & Present - not in the tab control file but on the device (i.e. Available to add)
    Tab Installed & Not Present - in the tab control file but not on the device (!Warning State! Sense will probably fail to run)
    Tab Not Installed & Not Present - not in the tab control file or in on the device

    Also the icon could indicate if the source is from XML file or the tab control file (only applies to the installed ones - not installed ones will always be xml).


    ====================
    User Manual
    ====================

    I'll try to update this with new information as and when I get time, hopefully the app isn't too difficult to understand.

    Control Sense Page:
    ============

    This page controls sense...
    attachment.php


    [Start Sense]:
    If sense is not selected in the Today Plugin, this adds and triggers sense to start.

    [Stop Sense]:
    If sense is running, or set in the Today Plugin to run, this will remove it and trigger it to close.

    [Restart Sense]:
    This will cause sense to restart (by removing and adding it from the Today Plugin).
    Note: Any changes to your Tab Control File (26948339_manila) are ignored.

    [Reset Sense]:
    The same as [Restart Sense], but will also cause it to re-build by removing the ManilaFull.xml file.
    Note: If you have changed your Tab Control File (26948339_manila) any changes will be re-built in this process.

    [Full Reset Sense]:
    The same as [Reset Sense], but will also delete the configuration registry keys (this is required when you add/remove tabs for them to initialise correctly and for them to show up in the Tab Re-arrange page within the Sense Settings Tab).
    Note: Any tabs disabled via the Sense Settings Tab will be re-enabled!

    [Soft Reset]:
    This simply restarts your device, quite often sense will not re-start correctly without at least one reset.

    Tab Control File [Update]:
    If you have generated a new Tab Control File (26948339_manila), this option will replace your existing file (creating a timestamped backup within the SenseUtil folder) and [Full Reset Sense].

    Tabs (Loaded) Page:
    ============

    On start up, this page shows the contents of the Tab Control File (26948339_manila).
    attachment.php


    [Build]:
    Once you have made adjustments to the list, you can build a new file (which you can then view using a suitable text editor and check if you wish).

    Tab Source [#]:
    This toggles the source of the tab data:
    Default=Your original Tab Control File
    File=The loaded xml resource file
    Note:
    If the tab is not available (the xml file does not exist) then the source will not change. Also if you delete and re-add a tab which was in your tab control file, it will not be able to be set back to Default - you will need to Reload the data fresh.

    Remove [-]:
    Removes the tab, the tab will no longer be installed.

    Shift Up [^] and Shift Down [v]:
    Allows you to adjust the default positions of the tabs.

    Tabs (Available) Page:
    ============

    This page will show you the tab's which are available (loaded from the Resource Folder xml files).
    attachment.php


    When you select an item, you will be able to see if the tab's keyfile is Present On Device or not, this provides an indication of if the files required for the tab are on the device
    Note: Only the keyfile is checked - there will be additional files required for the tab/sense to function.
    Various details about the tab are also available, if a custom tab links to the tab's development and release pages should be provided.

    Add Tab [+]:
    Allows you to add a tab to your Tab Control File, if the tab is not detected as Present On Device you will be warned that Sense probably will not start (you will need to install the correct tabs files on your device).

    Add All [+All]:
    This will add all the tabs which are detected as Present On Device but not currently in the Tab Control File.
    Note:
    Only the keyfile is checked - there will be additional files required for the tab/sense to function. So be sure you have correctly installed all the required files for a particular tab.


    Settings Page:
    ============

    Provides various options for the app.
    attachment.php


    Register to Today Softkey:
    [Set Action/Contacts)]​

    Only recommended if you use the app a lot as it provides an easy way to start up/control sense if it has not loaded.

    [ ] Advanced View:
    This allows you to see all the data which the app collects about the installed/available tabs and uses to do what it does. Useful for debugging issues with the resource files or problems with the app itself.

    [Reload Files]:
    This will read in your Tab Control File again, and reload all the resource Xml files (for the available tab list).
    Note: Any changes you've made to your Tab Control File in the app will be discarded.


    Command Line Options:
    ============

    SenseUtil add 6B54437C_manila
    - Adds the specified tab, leave other tabs as they are

    SenseUtil renew
    - Replaces all tab details with data from the xml files (leaves any not found in the xml files as they are)

    SenseUtil addall
    - Adds any tabs which are not in the tab control file but found on the device (checking for the key mode9 file), the other tabs are left as they are. New tabs are added at end before settings tab.

    SenseUtil addallnew
    - As above, but other tabs are replaced with details from the xml files (leaves any not found in the xml files as they are)

    SenseUtil remove 6B54437C_manila
    - Removes the tab if installed on the device

    Shortcuts:
    ========

    By using the shortcuts, it is assumed that SenseUtil is installed to device location:
    "\Windows\SenseUtil\"

    Code:
    i.e For FbTab:
    Add Shortcut:
    54#"\Windows\SenseUtil\SenseUtil.exe" add 51B6F88A_manila
    
    Remove Shortcut:
    57#"\Windows\SenseUtil\SenseUtil.exe" remove 51B6F88A_manila

    For other tabs, look up the xxxxxxxx_manila file in the resource section and replace 51B6F88A_manila (note: the 54# and 57# need not change since the length should remain the same). Or post a request and I'll upload suitable shortcuts!

    Note:
    1. Before using the shortcut you must install the correct files for the tab in the correct location (if files are not present the tab will not be added).
    2. System may need Soft-Reset (turn off and on again) for sense to restart correctly (you will be prompted to wait and see if sense starts).
    3. The order set by the settings tab will be reset by this process.


    Code:
    [SIZE="5"]===============================
    Application Manifest - What I Planned To Achieve
    ===============================[/SIZE]
    The plan is a simple program which reads the tab control file (file 26948339_manila) and allow you to add/remove tabs using a simple xml file to provide the correct info.
    
    MoonNah's ([url]http://xdaforums.com/showthread.php?t=670116[/url]) B_L_Group_FixStartManila_2.5.cab is an excellent tool which simply re-generated the list based on the files it found within the windows dir, worked well except there was no indication that is was successful or what it had done.
    
    I think it would be quite simple to extend the idea a little further by creating an app with a gui which then searched it's local folder for xml files.  The xml files will be named to match the key mode9 filename for each tab:
    
    i.e. RSS Tab = \windows\htc\people\RssFeed.mode9 = 6B54437C_manila
    [B]So there would be a xml file called 6B54437C_manila.xml which contains the data for the tab:[/B]
    [CODE]<Page Order="X" Name="rssfeed.page" PackageName="HTC" Title="[[IDS_RSSTITLE]]">
    	<ComponentReference Name="page" Mode9Path="HTC\People\RSSFeed.mode9" Component="SummaryAllPage" SmartComponent="true"/>
    	<ComponentReference Name="icon_normal" Mode9Path="HTC\Manila\RssFeedicon.mode9" Component="RssFeed_Off"/>
    	<ComponentReference Name="icon_selected" Mode9Path="HTC\Manila\RssFeedicon.mode9" Component="RssFeed_On"/>
    	<ComponentReference Name="icon_preview" Mode9Path="HTC\Manila\RssFeedicon.mode9" Component="RssFeed_Preview"/>
    </Page>

    So the app would look for each of the xxxxxxxx_manila files in the windows directory and then allow the user to add/remove any tabs which are present on the system. This would also allow users to totally disable any "problem" tabs more effectively than via the config keys.

    The xml files could also have a full list of required files (which could also be checked), perhaps a link to obtain the latest release, the app could then be released with xml files for all current tabs and any new ones so users can easily see what is available and obtain them.

    The app would also handle the disabling and resetting of sense so that the changes are correctly made.

    Also the app could support command line option to install a specific tab if present (not making any changes to the others), which can then be used by cab files.


    Note: Software is able to set today screen softkeys for easy use, but a proper soft-key manager is available here if you decide you want to set them to something different:
    http://xdaforums.com/showthread.php?t=388281

    I will have a try at making the app myself but my time is very limited so any help will be greatly appreciated. But I do think that such a program would be very useful for those who have problems editing their tab control file (file 26948339_manila).

    Let me know what you think?

    ======================
    Language Title Fixes
    ======================

    Custom Tabs (like RSSTab/Facebook Tab display IDS value on 1st run)
    This is because the translation file used for the tab titles is separate to the tab's own language file.
    I will update senseUtil to allow the users to update the files using a shortcut, but until I've completed and tested that, I've included a zip file of the required files.

    CAB INSTALL:
    Install meltwater_LangTitleUpdate_v01.cab. - 155views
    Reset sense.

    MANUAL INSTALL: - 149views
    Unzip and copy the files into your devices \windows\ directory, and then reset sense.

    Please let me know if you have any problems or if you have updates for the contained translations (I've only updated the ones I've already got translations for).
    [/CODE]

    ======================
    Language Title Fixes
    ======================

    Custom Tabs (like RSSTab/Facebook Tab display IDS value on 1st run)
    This is because the translation file used for the tab titles is separate to the tab's own language file.
    I will update senseUtil to allow the users to update the files using a shortcut, but until I've completed and tested that, I've included a zip file of the required files.

    Updated language files are contained within the SenseUtil cab file, please update the file language files and post them here (they will get included in the next cab).​
    5
    Hi meltywater,

    so i has written, here my 1st additional tab for your amazing sense util app.

    The tab name is: Manila Today Page (short MTP) Links to thread(s): main thread, 2nd thread, google

    Our good old blezalex had have a very good idea a long time ago. I have all the source code from google and i have changed a lot things in the last two years to make it more stable. Also three new icoans are added.

    The best thing is, i have managed now to use your SenseUtil to add and remove the Manila Today Page. Yes it is done ;). I have tested it twice.

    I have made now a rar file with all in it. The new sense util cab, the manila today page cab and the three files for the MTP.

    Shortly i will start a thread for the manila today page applications. I have a lot of little apps for this. From RSS ;), FB ;), Twitter, Sun&Moon, Birthday, and.., and.., and.., and...

    The one who is interested to work with me togheter on this. Please PM me to talk about it. Or use skype, my name ther is: mike2nl

    And now have fun guys.

    1st Update - Shortcut - Remove Doc tab:
    there was an mistake in the manila file name (46EF5322_manilaa). Two times the letter a. This is fixed and tested.


    2nd Update - Game 15 tab:
    my next tab will be the game 15 tab from MoonNah. The very nice and old game. Then the GPS Tracker and GPS Horizont. Then i hope i can manage the Media Tab. But there are some more... ;):rolleyes::cool::eek:


    3rd and last update UPDATE in this positin here:
    because an error in my kitchen and the last missing test (to short on time, and i was sure), i had have some trouble with the files. A big Thank You to Chancer63 for the info. Now the right files are uploaded and you can download it at the bottom of this posting.

    Be sure that you use only these tab files, because the original one have allways the manila tab control file inside the cab. Or a special program that will overwrite the sense util action and you can damage the manila system. All this you do on your own risk (to have the law things done).

    To have a view of what is possible, please take a look here that all tabs are working. There will be more but my free time is to short to get all things shortly. I think the next are the both GPS tabs. The Tracker and the Horizont. I have also a version 4 of these files, but i have to test it before.

    All the original cabs are not my work. Every author has done a very good job to have the things running, and i will give them a very big Thank You for here work. What i have done is, to get the things working with sense util. Now all the tabs can be added and removed automaticly with the shortcut's. Also the graphics are new, because the amazing ROM from Laurentius26. I can upload the older and original graphics on request, if someone have the wish to use the old one. The original authors for the graphics are named in here cab files. I have added only my avatar name to show that the cab files are changed. OK, some little things i had to do that after i had reviewed the code, it was a little must for me :D. So please, don't be angry ;).
    3
    @meltwater:
    ..short update before more tabs are comming :D..

    Sense Util last version (mike_v4) which is working with all actual tabs will be shortly uploaded. Last thing i have to check is the internet tab. For people who will use OPera 10, why ever, the intenet is no longer needed. So i have to test this too. After that the next sense util upload will be done.
    3
    Hey mike and Melty,

    any news about the coolest utility ever?

    nice greets,

    seas

    Hi seas1,

    ther are allways news ;). I was away for 1 1/2 week for my day job. Here in the netherlands we stay shortly before the holliday time. That means we have more to do then ever. Uff, everybody will have his stuff clear and ready. Strange guys at all :D.

    But the news....
    I was busy with some things around the RSS tab beta 4 and the sense util. More tests with other tabs. But the most tabs are from sense self. So the color control is bad, because then also the defaul sense color in that tab is changed. I thinking about a way to control this in a different way.

    The thread for the working tabs, with the laurentius26 platiunum rom and sense util, must be up this weekend. But the muse hasn't kissed me at all :D.

    For more news i look to meltwater, but i know he is very, very busy. I hope these are enough newq things for the moment.
    3
    New version is now available:
    +Added (shortcuts & resource files):
    1a9fc010_manila \windows\HTC\today.mode9
    2c417551_manila \windows\HTC\GGorizont\GGorizont.mode9
    04ca8df7_manila \windows\HTC\GPSTracker\GPSTracker.mode9
    34C172FA_manila \windows\HTC\Manilatv\favorites.mode9
    037D6881_manila \windows\HTC\GameFifteen\GameFifteen.mode9
    0C3A0700_manila \windows\HTC\programlauncher.mode9
    2CAADFCD_manila \windows\HTC\manilaradio\manilaradio.mode9
    +Corrected document tab shortcut
    +Language title files (6f286a05_manila_en-us_titlefixed.txt is template for others)
    +Language title files added to cab (although most require translations etc)

    Really need additional translations for the tabs!
    Ideally if we get a good set of title translations, cooks will be able to use them as the standard set for their roms.