Welcome to NeoOffice developer notes and announcements
NeoOffice
Developer notes and announcements
 
 

This website is an archive and is no longer active
NeoOffice announcements have moved to the NeoOffice News website


Support
· Forums
· NeoOffice Support
· NeoWiki


Announcements
· Twitter @NeoOffice


Downloads
· Download NeoOffice


  
NeoOffice :: View topic - Genesis of the new weapons
Genesis of the new weapons
 
   NeoOffice Forum Index -> NeoOffice Development
View previous topic :: View next topic  
Author Message
sardisson
Town Crier
Town Crier


Joined: Feb 01, 2004
Posts: 4588

PostPosted: Wed Apr 26, 2006 12:22 pm    Post subject:

Awesome!

OPENSTEP wrote:
Tabs tend to be at the end of my list as they're a bit odd for OS X. The real problem is that using those segmented controls like 10.3 introduced can make the OOo interface really confusing (think the tabs for switching between spreadsheets). Most likely I'll use an approach similar to Qt Aqua with 10.2 style pseudotabs.

Also, some of those dialogues have 2 or 3 lines of tabs (what idiot invented that awful Windows-ism); Apple's 10.3+ tab implementation was designed specifically to prevent that sort of interface disaster from appearing in Mac apps.

Smokey

_________________
"[...] whether the duck drinks hot chocolate or coffee is irrelevant." -- ovvldc and sardisson in the NeoWiki
Back to top
OPENSTEP
The One
The One


Joined: May 25, 2003
Posts: 4752
Location: Santa Barbara, CA

PostPosted: Wed Apr 26, 2006 7:30 pm    Post subject:

Bingo on the multi line tabs. It's similar to the "endless tab" too with the left/right arrows to move to more tabs in spreadsheets.

I do agree that it's good to prevent interface clutter and makes things a lot more simple. Unfortunately it makes it a pain in the neck to try and move over a crazy tab interface. I've had to do it at work too and it can get really annoying, particularly when the Windows designer is like "why did you change the name of my tab?"

ed
Back to top
OPENSTEP
The One
The One


Joined: May 25, 2003
Posts: 4752
Location: Santa Barbara, CA

PostPosted: Wed Apr 26, 2006 7:31 pm    Post subject:

Oh yeah, also see Opera for another example of what I'll hopefully accomplish. They too kept the real tabs for their browser tabs. Heck, even Safari doesn't use segmented controls for its browser tabs Smile

ed
Back to top
OPENSTEP
The One
The One


Joined: May 25, 2003
Posts: 4752
Location: Santa Barbara, CA

PostPosted: Fri Apr 28, 2006 1:33 am    Post subject: fuzkd scrollbars

(from the "let's shut up and code" dept.)

Well, I've started tackling the first "complex" control. FWIW, NWF has a definite split between simple controls that are really only one part plus text (e.g. a radio button) and compound controls that have lots of subparts (think tabs, scrollbars).

Anyway, after working around limitations in HITheme APIs, I finally managed to coerce them into computing correct bounds for Aqua scrollbars.

Bad news...

It appears OOo's designers decided to always assume the up arrow is at the top of vertical scrollbars and the left arrow is at the left of horizontal ones. Although they query all the subpart boundaries, no consideration seems to be given to the actual position of each subpart within the overall control.

Like the rest of OOo, it's documented about as well as the Gospel of Judas and has several differing interpretations (kde & luna are like black and white with respect to the flags they're checking), so who knows. I'll need to check further, but since NWF seems to be passing in the coordinates of the left arrow and up arrow subparts for the overall control, I assume I'll need to fix NWF's own world view like I did for menus.

Anyway, it's coming along, partial implementation in CVS, screenshot below (yes, it's wrong, but you can see the partial Aqua scrollbar thumbs starting at where the normal double arrow scrollbar controls should be):



Still working on it and will post more info as I find the cause and give NWF a good root canal. I suspect it needs a good dose of PART_ENTIRE_CONTROL in its bounds computation routines.

ed
Back to top
OPENSTEP
The One
The One


Joined: May 25, 2003
Posts: 4752
Location: Santa Barbara, CA

PostPosted: Fri Apr 28, 2006 1:36 am    Post subject:

Oh yeah, other sidenote: in the screenshot above, notice how Patrick fixed the background behind the curved part of the ComboBox controls for the font and size toolbar popups Smile

ed
Back to top
sardisson
Town Crier
Town Crier


Joined: Feb 01, 2004
Posts: 4588

PostPosted: Fri Apr 28, 2006 2:27 am    Post subject:

OPENSTEP wrote:
Oh yeah, other sidenote: in the screenshot above, notice how Patrick fixed the background behind the curved part of the ComboBox controls for the font and size toolbar popups Smile

ed

Yes, no more white glitches Smile

Rock on, Neo duo!

Smokey

_________________
"[...] whether the duck drinks hot chocolate or coffee is irrelevant." -- ovvldc and sardisson in the NeoWiki
Back to top
Kosice
Blue Pill


Joined: Apr 26, 2006
Posts: 1

PostPosted: Fri Apr 28, 2006 12:17 pm    Post subject:

Hopefully, the EAP is a success and this is giving you a shot in the arm to push this baby way above everyone wildest expectations
Very Happy Very Happy Very Happy
Back to top
OPENSTEP
The One
The One


Joined: May 25, 2003
Posts: 4752
Location: Santa Barbara, CA

PostPosted: Fri Apr 28, 2006 12:34 pm    Post subject:

I think it's working out well thus far, but things will just take time. At least with NWF, very few people have used the interfaces so there are still some bugs in the implementation and some platform-specific assumptions in the design (well, it's more that OS X is an exception with respect to some widgets, but regardless, the design isn't just quite flexible enough in portions).

If anything, the Aqua interface shoved into the NWF hole is the culmination of years of work, starting back with /C which proved it possible and, learning from its mistakes, Dan's crucial role in architecting NWF. The most important is all of the hard work Patrick and all of the testers done to make a solid foundation on which to build and all of the donations and folks in the EAP that are allowing that work to continue at a rapid pace. Remember, if it doesn't work it doesn't matter how pretty it looks Smile

That said, hopefully I'll solve the scrollbars tonight. The tracking and stuff is actually working (I eat my own dogfood) it's just the plot position that NWF is putting in the wrong place.

ed
Back to top
OPENSTEP
The One
The One


Joined: May 25, 2003
Posts: 4752
Location: Santa Barbara, CA

PostPosted: Fri Apr 28, 2006 8:43 pm    Post subject:

I made requisite corrections to the way VCL scrollbars use NWF for extracting part regions and implemented my new interface Smile The result...fully functional scrollbars! :



All hit testing is done. The outstanding bug is to map the VCL view size to appropriate values for the thumb size expected by HITheme. I solved the mapping before but don't have curve fitting tools with me.

There are also problems with them drawing active even if the window isn't in the background, and of course they aren't optimized yet...

Next will probably be the stupid little spinners for numerical text fields.

ed
Back to top
yoxi
Cipher


Joined: Sep 07, 2004
Posts: 1799
Location: Dawlish, Devon

PostPosted: Fri Apr 28, 2006 10:30 pm    Post subject:

Heroic!

Hmm... I wonder how these aqua mods will interact with ShapeShifter themes? (ducks quickly...)

- padmavyuha
Back to top
OPENSTEP
The One
The One


Joined: May 25, 2003
Posts: 4752
Location: Santa Barbara, CA

PostPosted: Fri Apr 28, 2006 10:45 pm    Post subject:

Well, I don't know at all how ShapeShifter works (and hadn't heard of it before, actually). At present, everything is drawn using HITheme and higher level APIs, so anything that shifts the control appearance at a low level (read, future OS X system updates!) will have no problem since these are all native widgets. The one I know how to do offhand is to flip to the graphite theme option in the Appearance system panel. Relaunch, and voila:



(I left the hilight color at blue, thus the selection in Navigator is still blue)

"Aqua" is not a programming interface or language...it is a look that is exposed through a variety of different interfaces including Swing, AWT, Carbon, Cocoa, HITheme, Appearance Manager, and anything else built on top of them (SWT, wxWidgets, Qt, etc.).

Others spew hot air. I bring you the real deal. Witness Aqua OOo. Annoying dancing banana

Oh, did I mention I fix bugs and can cook a mean taco as well?

ed


Last edited by OPENSTEP on Fri Apr 28, 2006 10:51 pm; edited 1 time in total
Back to top
sardisson
Town Crier
Town Crier


Joined: Feb 01, 2004
Posts: 4588

PostPosted: Fri Apr 28, 2006 10:49 pm    Post subject:

yoxi wrote:
Heroic!

That sums it up pretty nicely. Send that man some more PBR (and Patrick some of whatever powers his Neo-coding)!

When this lands publicly, people will really start whining and ranting Twisted Evil

Oh well. Their loss.

Smokey

_________________
"[...] whether the duck drinks hot chocolate or coffee is irrelevant." -- ovvldc and sardisson in the NeoWiki
Back to top
OPENSTEP
The One
The One


Joined: May 25, 2003
Posts: 4752
Location: Santa Barbara, CA

PostPosted: Fri Apr 28, 2006 10:53 pm    Post subject:

Well, really, it's their fault. They should've done their history research. The one thing that makes me productive is getting me really pissed off.

As always, if you see Tony S. in the streets, make offerings of myrrh and fruit at his feet for he has shaped the present in ways he probably never thought possible.

ed
Back to top
Guest






PostPosted: Fri Apr 28, 2006 10:55 pm    Post subject:

WOW! Shocked Very Happy

I can't wait to get my hands on this! Laughing
Back to top
OPENSTEP
The One
The One


Joined: May 25, 2003
Posts: 4752
Location: Santa Barbara, CA

PostPosted: Fri Apr 28, 2006 11:07 pm    Post subject:

Actually, you *should* wait...probably for some time. The native widget stuff leaks memory, makes for fun when they don't respond to mouse clicks correctly (I had no scrollbars in my local Neo for the last 3 days and just regained them a few hours ago), and can really slow down execution at times. Really, you should try profiling something that's continuously updating scrollbars somtime...Apple's code for drawing buttons and the like is really inefficient and assumes you're not drawing them thousands of times per second.

As I believe I said somewhere above, pretty screenshots does not a functinoal product make. I've got some /C screenshots living around as great living proof Smile

And really, don't forget that it's really 2.0 that makes this stuff possible. Yes, I did hack these things in before, but it was in such a way that it was utterly unmaintainable, especially for a team of just one or two people.

NWF helps, but it isn't a panacea. It needs its own improvements for it to be useful for OS X, just like the native menu framework. Hopefully I can do those in a maintainable way. Heck, I'd fix the interfaces within the OOo project, but they no longer see a need for my help. Really, though, Dan got it like 90% right on the first try, and that's amazing considering no one else has ever tried to use this interface in the way we've been.

ed
Back to top
Display posts from previous:   
   NeoOffice Forum Index -> NeoOffice Development All times are GMT - 7 Hours
Goto page Previous  1, 2, 3, 4, 5 ... 25, 26, 27  Next
Page 4 of 27

 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum

Powered by phpBB © 2001, 2005 phpBB Group

All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © Planamesa Inc.
NeoOffice is a registered trademark of Planamesa Inc. and may not be used without permission.
PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.