I'm not sure how I would implement that in code. Once you do things like that, you need to make backup file lists and start worrying about missing files etc.
If your looking for suggestions, here's mine:
The first time the program is ran, it generates a list of files
The program loads in the icons in the order given by the list file
If it runs across a missing file, it removes the file from the list, and resaves the list.
If an icon is moved, it reorders the list, and saves the new copy.
If the program is started, and a file is found that is not on the list, it adds it to the list (or there could be an add icon option in the menu)
I'm not sure how I would implement that in code. Once you do things like that, you need to make backup file lists and start worrying about missing files etc.
If your looking for suggestions, here's mine:
The first time the program is ran, it generates a list of files
The program loads in the icons in the order given by the list file
If it runs across a missing file, it removes the file from the list, and resaves the list.
If an icon is moved, it reorders the list, and saves the new copy.
If the program is started, and a file is found that is not on the list, it adds it to the list (or there could be an add icon option in the menu)
I was thinking something similar, but it would mean cheacking every file against the whole list, which might start to get a bit slow if there are lots of files.
Have an ini file with an extra 'flag ' called 'changed='
> iMenu runs & check flag.
>> If '0' read/display icons 'as is' in the ini
>> If someone deletes icons/change order then change the flag to '1'.
Next time iMenu runs and checks, it see '1' and so does a scan & updates the ini (a small popup like 'Changes detected - Rescan in progress. Please wait' would'nt go amiss)
You could also add a 'manual update' option that the user can use at the time they do any alterations (another pop-up like 'Must do 'Manual Rescan' after all alterations are done otherwise iMenu will do one on next startup' - this only pops up on only the first alteration done, any further alterations & the message doesn't pop up)
Only thing I can see is if new programs are added. How will iMenu know to scan?
- Unless it's mentioned in a readme that IF new apps are added, you MUST do a manual scan to update the layout
This way iMenu will only 'slow down' reading the ini if changes are made
--------
As for 'reading the ini' - Perhaps you could also have iMenu read only a portion of the ini (yet another option like 'Precache=')
Let it remember what page it was on (another ini option like 'Page=') and only read the ini for the previous 'Precache=' pages,current page & next 'Precache=' pages
User can alter 'Precache=' themselves & see the tradeoff:
Either a 'slow' iMenu startup (where it reads the whole ini file), yet fast 'page flipping' OR
Fast start up (where it only 'reads' so many pages) and slow page flipping (where it read the ini each time there's a pageflip)
[Not sure how you would make iMenu ignore reading ini if you precache all pages on loading up though]
Code:
[Options]
Changed=0;Has the list been changed 0=No,1=Yes (Rescan required)
Page=1; Last page veiwed
Precache=1; Read the previous/nest number of 'pages', If '0' then read the whole lot but don't read ini again on 'page flipping'
[Bottom]; these are the 4 icons that always show along the bottom
Shortcut01=DS_game.nds
Shortcut02=NDSGBA.plg
Shortcut03=iReader.plg
Shortcut04=Moonshl2.nds
[Page01]
Icon01=lmp-ng.nds
Icon02=Stillalive.nds
:
Icon08=DSVideo.nds
[Page02]
Icon01=/HBApps/Colors.nds
Icon02=/HBGame/vgh.nds
Icon03=
:
Icon08=
(note: since Page02/Icon03 is empty it is ignored by iMenu, & everything after this is also ignored, since Page02/Icon02 must be the last icon in the list)
If you don't like the [pagexx] sectioned areas you could have just one single list (so above would be Icon01-Icon10; since Icon11 onwards are empty) - the only problem there is that you'll need to read the list in multiples of '8' on each page flip.
Ooopps & while typing this just seen a small problem.....How do you know where the end of the list is so that you can 'precache' the 8 icons BEFORE 'page1', in case you're already on page1 & want to go 'left'
i would use this but like others have said, i want easy fast transition and not have to remake plugins
so that would make or break for me
_dstwoplug for me
One thing I'm interested in is the source. Will you release it? I just recently started to get into coding (only HTML yet, to become familiar with programming), and I'd love to see it.
I don't really have problems with the current DSTWO menu, but I have to agree with the rest: this does at least look better.
I'll prolly compare it with the official firmware when you release this and stick with whatever is more intuitive to me.
But nice work so far
Come on now.... both Stormwave's 'linker' and this came out virtually a day apart. They had no communication between each other, so never knew who was doing what
This is a DS_game 'replacement', while the Linker is just a work-around for those who'd like to have their Homebrew elsewhere than the '/_dstwoplug/' folder
If Spinal does include the ability to run HB from elsewhere (save the hassle of using the PC program to hack the linker for each program) all fine and dandy. But if not - at least there's something else to use for those who'd want/need it - it's all about choice
Personnally, I couldn't care less - yes it would be nice to have HB in a folder other than the plugin one (I usually have this folder attributes set to 'hidden', just to keep things looking 'neat') but if it doesn't appear in iMenu, I won't complain
Personally I'd much rather prefer a DSi menu clone, but I definitely like the direction DSTWO homebrew is heading. I just wish the sections of the DSTWO weren't so bloody separated. It's strange to have this menu that leads into another menu type-thing. I'd rather have my DSTWO load, then have my NDS files, GBA files and other Homebrew files displayed right where I can get to them without having to go through menu after menu.
That's just me, though. Personal preferences, heh. I definitely love the work you put into your menus though, I've been following your codes for a while. Great work on this one so far!
Just wondering, are you going to implement the icon moving system that the iPod/iPhone/iPad has? I'm talking about when you hold an app for 2-3 seconds, all the icons start shaking (you can change the effect) and you can drag around the icons.
Also, what about custom backgrounds? Are you allowing those too?
Just wondering, are you going to implement the icon moving system that the iPod/iPhone/iPad has? I'm talking about when you hold an app for 2-3 seconds, all the icons start shaking (you can change the effect) and you can drag around the icons.
Also, what about custom backgrounds? Are you allowing those too?
Custom backgrounds - yes 100%
Arranging icons - currently no, potentially yes, depending on how much work is required to keep track of the moved icons when reading the plugins folder.
I got my hands on the iMenu beta a made a video if you guys are interested.
Link if video doesn't show http://www.youtube.com/watch?v=DyNxndHsCY8
ur doin it wrong, like this:
CODE[youtube]DyNxndHsCY8[/youtube]
Sony made a shocking announcement today, revealing that the company plans to move away from physical game releases in the future. Citing claims of how the industry is...
Remember when you could get an Xbox Series S for $300? Those were the days. Microsoft has today announced the latest in their console price hikes, seeing their...
Last month we got confirmation of a new model of Switch 2 to better comply with upcoming EU regulations. With the legislation set to come into effect in February of...
The end has come for the PlayStation 3 and the PlayStation Vita. After supporting the PSN Store on the PS3 and PS Vita since 2006 and 2011 respectively, Sony has...
Tired of waiting for Game Freak to bring Pokemon Emerald to modern platforms? We've got you covered with a brand new port in the works. Currently available on GitHub...
In this time of economic uncertainty and rampant price hikes, the Steam sales stand as our final bastions of affordability for those opting to avoid the seas. The...
Apple have today announced price increases, primarily focused on their MacBook and iPad lines. These increases have already come into effect, with both prices and the...
For fans of Sinnoh, the pickings are slim. If you want the best experience you're left deciding between the updated region in Platinum, or the somewhat controversial...
The Switch 2 has been out for a year now, but you shouldn't count the original system out yet! Released a few days ago, popular PS2 emulator NetherSX2 has found its...
Ocarina of Time is back in style as the upcoming Switch 2 remake looms on the horizon. But what's a fan of the game to do over the next few months? If you've been...
Sony made a shocking announcement today, revealing that the company plans to move away from physical game releases in the future. Citing claims of how the industry is...
Remember when you could get an Xbox Series S for $300? Those were the days. Microsoft has today announced the latest in their console price hikes, seeing their...
Last month we got confirmation of a new model of Switch 2 to better comply with upcoming EU regulations. With the legislation set to come into effect in February of...
The end has come for the PlayStation 3 and the PlayStation Vita. After supporting the PSN Store on the PS3 and PS Vita since 2006 and 2011 respectively, Sony has...
Ocarina of Time is back in style as the upcoming Switch 2 remake looms on the horizon. But what's a fan of the game to do over the next few months? If you've been...
Tired of waiting for Game Freak to bring Pokemon Emerald to modern platforms? We've got you covered with a brand new port in the works. Currently available on GitHub...
Apple have today announced price increases, primarily focused on their MacBook and iPad lines. These increases have already come into effect, with both prices and the...
In this time of economic uncertainty and rampant price hikes, the Steam sales stand as our final bastions of affordability for those opting to avoid the seas. The...
Amidst news of layoffs and cancellations in the wake of Xbox's larger changes, Bethesda has today come out with a statement discussing their active projects. In this...
Announced today during the Octopath Traveler 8th Anniversary live stream, it's been confirmed that both the first game and its sequel will be launching on the Switch...