Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Developing U++ » U++ TheIDE and Library: Releases and ChangeLogs » Linux improvements
Linux improvements [message #13244] Tue, 25 December 2007 19:33 Go to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
* GTK chameleon MenuBar and ToolBar look much more native

* U++ CtrlLayoutOKCancel swaps OK and Cancel buttons (GTK UI guidelines are inverse to Windows) if they are the same size.

* Configuration files ("ConfigFile") are put under .upp directory instead directly to root
Re: Linux improvements [message #13248 is a reply to message #13244] Wed, 26 December 2007 00:03 Go to previous messageGo to next message
mdelfede is currently offline  mdelfede
Messages: 1307
Registered: September 2007
Ultimate Contributor
luzr wrote on Tue, 25 December 2007 19:33


...........
* Configuration files ("ConfigFile") are put under .upp directory instead directly to root



Uhmmmm... I don't like too much that one.
I have upp (devel) in ~/sources/uppdev, so theide don't find config anymore.
In Linux is usual to keep config files on a per-user basis in its home dir as before.

IMHO, the best would be (as sometimes in windows) to keep configs on the dir where app resides (I know, now Linux purists will shoot me Smile ), pity that on unix there's no reliable way (AFAIK) to find the path where app resides and, more, usually that path is owned by root, so not writeable.

At the end, the best way would be :

1) Keep theide executable in /usr/bin
2) Keep upp sources somewhere in /opt/upp
3) Keep MyApps (and user files...) somewhere inside user home dir
4) Config files should stay on user home dir.

On an user view, on first ide run cfg files, samples, maybe references AND MyApps folders should be copied somewhere in user home path, maybe asking user where.
There also should be the possibility to run thede with different config files, in order to keep the ability to run more versions of theide.

The *best* would be a common (user) cfg file containing more profiles. For example :
<default>
test
stable
devel
myprofile1
myprofile2

Each giving different configs. You could then run
theide

with default profile; or
theide -p myprofile1

with 'myprofile1' configs.

There should also be some profile manager on theide itself.
It looks (maybe) complicated, but it's done for example in AutoCAD and it works quite well.

That could be done both on windows and Linux sides.

Ciao

Max

EDIT : Now I've seen how it works and it's not bad at all Smile
Cfg files are kept as before with executable names (ide, theide, ecc...), but without initial dot (.) and in ~/.upp, so
~/.upp/ide
~/.upp/theide

instead of
~/.ide
~/.theide

as before.
That's similar of what I meant, besides the lack of ability to give a profile when executable is run.

I'll put a little howto in next svn update.

Ciao

Max

[Updated on: Wed, 26 December 2007 00:34]

Report message to a moderator

Re: Linux improvements [message #13252 is a reply to message #13248] Wed, 26 December 2007 11:16 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
mdelfede wrote on Tue, 25 December 2007 18:03

luzr wrote on Tue, 25 December 2007 19:33


...........
* Configuration files ("ConfigFile") are put under .upp directory instead directly to root



Uhmmmm... I don't like too much that one.
I have upp (devel) in ~/sources/uppdev, so theide don't find config anymore.
In Linux is usual to keep config files on a per-user basis in its home dir as before.



Sorry for deficient description. But "root" and ".upp" I have of course meant "~" and "~/.upp".

Quote:


IMHO, the best would be (as sometimes in windows) to keep configs on the dir where app resides (I know, now Linux purists will shoot me Smile ), pity that on unix there's no reliable way (AFAIK) to find the path where app resides and, more, usually that path is owned by root, so not writeable.



Actually, GetExeDirFile already works in Linux. But just as you say, this is not a good idea, if nothing else because of read-only....

Quote:


1) Keep theide executable in /usr/bin
2) Keep upp sources somewhere in /opt/upp
3) Keep MyApps (and user files...) somewhere inside user home dir



Actually, that change was meant about config files only, was not theide specific. It was dealing with general complaing about poluting ~ with many upp app config ".folders".

Mirek

P.S.: OK, next time I will read the whole message before replying Smile

[Updated on: Wed, 26 December 2007 11:17]

Report message to a moderator

Re: Linux improvements [message #13256 is a reply to message #13252] Wed, 26 December 2007 11:57 Go to previous messageGo to next message
mdelfede is currently offline  mdelfede
Messages: 1307
Registered: September 2007
Ultimate Contributor
luzr wrote on Wed, 26 December 2007 11:16


P.S.: OK, next time I will read the whole message before replying Smile


... and I'll do some tests before posting Smile
Things are better now than before, with all configs grouped on a single ~/.upp folder.
The only thng is still missing is a way to force theide to use a particular config. Getting it from the executable name is a bit limiting.

Ciao

Max
Re: Linux improvements [message #13260 is a reply to message #13256] Wed, 26 December 2007 14:18 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
mdelfede wrote on Wed, 26 December 2007 05:57

luzr wrote on Wed, 26 December 2007 11:16


P.S.: OK, next time I will read the whole message before replying Smile


... and I'll do some tests before posting Smile
Things are better now than before, with all configs grouped on a single ~/.upp folder.
The only thng is still missing is a way to force theide to use a particular config. Getting it from the executable name is a bit limiting.

Ciao

Max



Actually, using current U++ library, it is already possible to use SetAppName to achieve this.

I will think about activating this feature soon....

Mirek
Re: Linux improvements [message #13261 is a reply to message #13244] Wed, 26 December 2007 14:50 Go to previous messageGo to next message
gertwin is currently offline  gertwin
Messages: 25
Registered: May 2007
Location: Netherlands
Promising Member
Just a minor thing, i compiled this morning the latest svn version.
The menus are looking more like the originals from the QtCurve style (from kde-look) but the text color makes it hard to read.

index.php?t=getfile&id=901&private=0

Combo boxes are looking much better compared to the 2007.1 release!
B.t.w. under the "standard gtk look" Clearlooks everthing looks fine.

Another thing that is of more importance is that the OpenGL widget is shifted to the top left of the application window covering menus and toolbars. The size of the OpenGL control is correct but its place is shifted.
This is not visible in the OpenGL example, i can post a simple program that shows this behavior if you want.

Gertwin
Re: Linux improvements [message #13263 is a reply to message #13261] Wed, 26 December 2007 20:54 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
Thanks!

BTW, any tips where to get and how to install QtCurve in Ubuntu? Smile

Mirek
Re: Linux improvements [message #13268 is a reply to message #13263] Thu, 27 December 2007 09:58 Go to previous messageGo to next message
gertwin is currently offline  gertwin
Messages: 25
Registered: May 2007
Location: Netherlands
Promising Member
I don't know if ubuntu has a package for QtCurve, i use zenwalk.
I compiled it from the source http://www.kde-look.org/content/show.php/QtCurve+(KDE4%2C+KDE3%2C+%26+Gtk2+Theme)?content=40492

Maybe this http://packages.ubuntu.com/gutsy/kde/qtcurve wil help.

Gertwin
Re: Linux improvements [message #13269 is a reply to message #13268] Thu, 27 December 2007 11:23 Go to previous messageGo to next message
gertwin is currently offline  gertwin
Messages: 25
Registered: May 2007
Location: Netherlands
Promising Member
Here is a screenshot of the OpenGL widget in a TopWindow with a menubar.

index.php?t=getfile&id=902&private=0

Gertwin
Re: Linux improvements [message #13270 is a reply to message #13269] Thu, 27 December 2007 11:25 Go to previous messageGo to next message
gertwin is currently offline  gertwin
Messages: 25
Registered: May 2007
Location: Netherlands
Promising Member
And the source of the test program.

Gertwin
Re: Linux improvements [message #13272 is a reply to message #13261] Thu, 27 December 2007 18:14 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
QtCurve fixed.

Quick fix:

CtrlLib/ChGtk.cpp 826

	if(!popup) {
		gtk_widget_style_get(bar, "shadow_type", &shadowtype, NULL);
		GtkWidget *item = gtk_menu_item_new();
		gtk_menu_shell_append(GTK_MENU_SHELL(bar), item);
		gtk_widget_realize(item);
		popup = gtk_menu_new();
		gtk_menu_item_set_submenu(GTK_MENU_ITEM(item), popup);
		gtk_widget_realize(popup);
		GTK_MENU_SHELL(bar)->active = true;
	}


(Some day I will make those doubled scrollbar arrows work too Smile

Mirek
Re: Linux improvements [message #13273 is a reply to message #13272] Thu, 27 December 2007 21:01 Go to previous message
gertwin is currently offline  gertwin
Messages: 25
Registered: May 2007
Location: Netherlands
Promising Member
luzr wrote on Thu, 27 December 2007 18:14

QtCurve fixed.

Quick fix:

CtrlLib/ChGtk.cpp 826

	if(!popup) {
		gtk_widget_style_get(bar, "shadow_type", &shadowtype, NULL);
		GtkWidget *item = gtk_menu_item_new();
		gtk_menu_shell_append(GTK_MENU_SHELL(bar), item);
		gtk_widget_realize(item);
		popup = gtk_menu_new();
		gtk_menu_item_set_submenu(GTK_MENU_ITEM(item), popup);
		gtk_widget_realize(popup);
		GTK_MENU_SHELL(bar)->active = true;
	}


(Some day I will make those doubled scrollbar arrows work too Smile

Mirek


Yes, this looks good, thank you.

About the scrollbars, i modified the default QtCurve settings in config_file.c so that the appearance is round as with Clearlooks.
If that some day comes when you are implementing the double arrows also take a look at the shape of the arrows (upp draws them now the same as firefox).

Gertwin
  • Attachment: config_file.c
    (Size: 32.94KB, Downloaded 398 times)
Previous Topic: TheIDE i18n - export .tr file
Next Topic: Sql::
Goto Forum:
  


Current Time: Thu Mar 28 20:50:43 CET 2024

Total time taken to generate the page: 0.02073 seconds