Alt-commands in namespace – call me confused

Posted on

I’m going through the lab at the end of Chapter 3 of Victor’s book – a recap of the steps until now are basically thus:

Create new project, tell the project to include an image in its solution, open the solution into the workspace and  convert it to a 3d object, then rename it to 3DImage.

What Blend automatically does when renaming it, is apply an underscore at the beginning of the name and after the attempt to ‘correct’ this, it reverts back to _3DImage.

In my previous experiences with blend(its actually been a few months since I’d played around in Blend, so I’m truely beginning to wonder if I’m mixing this functionality up with something else), the use of the underscore (_) before any letter or number has been a nice way to allow for the UI to apply an alt shortcut (hotkey).

For example, if I were creating my own browser (if you ever decide to go through some of the more introductory C# development tutorials provided with Visual Studios, the creation of an internet browsing application is something you’ll likely go through.  Visual studios makes it pretty simple to accomplish this type of application), I’d set the menus “File” “Edit” “View” “History” etc. to have hotkeys for those who are interesting in accessing these menus with their keyboard instead of mouse.  To do so, I’d name them “_File” “_Edit” “_View” “Hi_story”, etc.

This will result in the menus appearing in the application as such:

File  Edit  View  History

These would make each item accessible by holding the alt-key down while hitting whichever character is underlined.

So its interesting that Blend is automatically placing an underscore at the beginning of the name.  Alternatively, I recall in the process of designing an interface (which I’m redesigning, but will eventually have available here on Facing Blend) having troubles whenever using a number in my namespace.  It wouldn’t build the application.  However, when replacing the number for the word (1 replaced for One), it would build.

Perhaps this is blend’s self-protection?

Closing textblocks inside open tags

Posted on

From my experience, I always kick myself every time I do something like the following:

<TextBlock Text="Bogus Text" />

The reason I kick myself is that I find by closing a tag like this, I’m essentially shooting myself in the foot before I get very far.  If I close a tag now, within the same line as I open it, I run the risk of having to break it out, and then do a </TextBlock> later.

Yes, this is just an additional step, but if I have a whole lot of conditions within this, I’ll find myself losing my place very quickly.  Instead, I’ll seperate the command – for just in case.  It sets up the markup for future additions.

Example:

<TextBlock Text="Bogus Text">
</TextBlock>

Preparing for the future saves you on time later.  Oh – reasons I mention this – again, from Victor’s book.  He’s having you create, just to test the application to verify that Visual Studios created it without flaws, a simple Text Block with “FOO” as the text.  Yes, it’s there just to test the application and verify that its functional.  However, if you’re in the habit of always always creating things for the future, you hardly ever have to think about what you’re doing when performing something as simple as the creation of a textblock.  Those habits tend to pay off in the long run.  If you do things “the lazy way” most of the time, and properly only when the time calls for it, you’re likely to accidentally slip into your lazy mode and have to correct yourself every single time you put the fingers to the keyboard.

Need I mention this “right way now” mindset applies to every other aspect of life?

*throws hands up*

Posted on

Creating a UI – not sure if this is how others do it, but the way I work is to have the overal base set on 1 page.  Give it the look and feel that it needs in the end or at least on a very basic level.

“This goes here, its about this size, it needs to have an element that is this size next to something like this with this radius, with this type of a menu to the side.  Oh, need the the little arrow thing indicating a drop-down.  etc.”

There’s more to it, like the orientation of how its put together – is it going to expand downward when “adding” a new item?  Ok, then stack panel, is it sticking here no matter what?  How is that button going to look when its hovered over, active, or inactive?

All of these thing are the beginnings of something more… whole.  Once they’re together at least in a rudimentary sort of form, custom controlling the… (insert word of choice) out of it until there’s almost othing left on the original screen.

From there – its detailed creation time.  Inactive, mouse-over, and active alike.  Personally, I like to also make these things “work” – as in, opening Visual Studios and getting the custom control to behave when running my mouse over it and clicking.

Makes it so that when I present it to the client, it may not actually… transmit, record, and display data, but at least the UI is somewhat interactive.

Problems come in though – Hitting F5 from Blend to run the program and if the tiniest thing is off, it either won’t load or… it will but –  *growls*

One might say that there is a very very nice use of “white space”.

HTML on coffee, monster energy drink, with lots of vegetables

Posted on

What is the title talking about?

XAML

There are many impressions of the experience from being a XHTML CSS Raster-based web designer to moving onward and upward to more User Experience technologies that I’ve skipped along the way.  Now that I have a blogging system in place that allows for more easy publication, I’m going to try to fill in the blanks.

So my first impression of XAML once I really got my feet wet was a strong familiarity.  XAML is like someone took HTML and fed it lots and lots of vegetables, gave it training on the track, music lessons, and then packed it full of coffee and monster energy drinks.  By the end of the day, you have the result of something more akin to Hal Milton, the hyperactive thoroughly intense, highly sarcastic and witty guy who works at the Sony Online Entertainment office leading the team creating the new PS3/PC game, The Agency.

Yes, I’m comparing XAML to Hal.

For those who have no clue what I’m talking about, but do know coding and markup enough to be reading this blog – I want you to take HTML, couple the base of HTML with some AJAX and wrap in lovely lovely CSS, and move back to the world of pretty formating, and you have XAML – sort of.  You could also say that its like flash only way slicker and easier.

For the HTML CSS markup designer, your wrist was slapped for using capitol letters.  Your elbow was flicked REALLY hard for using the enter key too often for spacing, and the back of your head popped for tabbing each child element out to make it easier to see… all in the name of quicker load times and most likely a UNIX based server.

XAML is going to – at first – appear to be fingernails on a chalkboard after these web standards have been beaten into you.

CamelCase naming (capitolizations, no spaces, no underscores unless creating an alt command, no numbers… what?!) schemes, tabbing to indicate parent and children (if you don’t, it won’t even run – and I mean run as in the application form of “run”) – aka ORGANIZATION and the app.xaml being your friend for those who are comfortable with CSS.

Moving backwards so we can move forward – you start out with Page.xaml as your root and App.xaml for sharable elements.  They may not be shared w/ anything else, but for organizational purposes, the same way that you would have your html set up as “index.html” and “style.css” – XAML brings you “Page.xaml” and “App.xaml”.  So you put your structures in place within your Page.xaml and tell the structure to look at some name which has the visual atributes defined within App.xaml.

The awesome part about xaml is that you are able to do a whole heck of a lot more.  We’re not working with raster-based (bitmap/pixel based) images (unless you want to).  We’re working with vector based shapes.  This gives a whole lot more flexibility in the visual attributes, what they do, how opaque they are, gradient scales, their x-y coordinate placing, and also allows one to do key frame animations.

Much like Flash, the versatility of silverlight utilizing XAML is only hindered by your abilities to be creative.

Puts me in a warm happy place.

OMG gimme more screen!

Posted on

Just a short mention of 1 thing that drives me absolutely nuts.

Yes – vector based UI is pretty cool, but dangit!  I want the dang thing to get smaller when I change my resolution so I can have more screen space!

Solution?  Dual monitors.  Menus on the right, screen on the left. 

Problem?  Why the heck must there be an absolute paramount NEED for dual monitors just to have some dang space.  I want all of my menus for quick use AND enough space to work with.

Summary: I want to have my pie and eat it too.

*Click* Rant off.

Purpose and direction

Posted on

The plan was to release everything along with this blog in conjunction with a spiffy purely xaml based site and the site was designed by me and made “alive” by my good friend David – but the last few years I’ve done a whole lot of consultation work, and not a lot of original pieces – and that is leaving the portfolio section bare in a very extreme way.

So until I have more content to put there – it isn’t going up. It stinks and will likely drive David up the wall while he waits for it to go up, but sometimes life happens and things just don’t go according to plan.

So in the mean time, I’m going to use this blog as sort of a catalogue for myself to quick reference as well as possibly help others who are diving head-first into using the expression tools. For someone like me, who has known the world of design and UI through notepad and photoshop – there are a lot of things that some people take for granted who are already “in the world” that I’m poking my head into, so if you’re already there and I’m blogging about things that you do in your sleep, its quite possible that this blog is not targeted at you.