QString url = resMgr->stringValue("GUI", "site_url");
if ( !url.isEmpty() ) {
QString title = tr ( "SALOME_SITE" );
- QAction* as = createAction( id, title,
+ QAction* as = createAction( WebSiteId, title,
resMgr->loadPixmap( "LightApp", tr( "ICON_WWW" ), false ),
title, title,
0, desk, false, this, SLOT( onHelpContentsModule() ) );
as->setData( url );
createMenu( as, helpMenu, -1, 0 );
- id++;
}
// b) Link to Forum
url = resMgr->stringValue("GUI", "forum_url");
if ( !url.isEmpty() ) {
QString title = tr ( "SALOME_FORUM" );
- QAction* af = createAction( helpMenu, title,
+ QAction* af = createAction( ForumId, title,
resMgr->loadPixmap( "LightApp", tr( "ICON_WWW" ), false ),
title, title,
0, desk, false, this, SLOT( onHelpContentsModule() ) );
af->setData( url );
createMenu( af, helpMenu, -1, 0 );
- id++;
}
// c) Link to YouTube channel
if ( !url.isEmpty() ) {
createMenu( separator(), helpMenu, -1, 0 );
QString title = tr ( "SALOME_VIDEO_TUTORIALS" );
- QAction* av = createAction( helpMenu, title,
+ QAction* av = createAction( VideosId, title,
resMgr->loadPixmap( "LightApp", tr( "ICON_LIFE_RIGN" ), false ),
- title, title,
+ title, tr( "PRP_SALOME_VIDEO_TUTORIALS" ),
0, desk, false, this, SLOT( onHelpContentsModule() ) );
av->setData( url );
createMenu( av, helpMenu, -1, 0 );
- id++;
}
- // d) Help for modules
+ // d) Link to Tutorials
+
+ url = resMgr->stringValue("GUI", "tutorials_url");
+ if ( !url.isEmpty() ) {
+ QString title = tr ( "SALOME_TUTORIALS" );
+ QAction* as = createAction( TutorialsId, title,
+ resMgr->loadPixmap( "LightApp", tr( "ICON_WWW" ), false ),
+ title, tr( "PRP_SALOME_TUTORIALS" ),
+ 0, desk, false, this, SLOT( onHelpContentsModule() ) );
+ as->setData( url );
+ createMenu( as, helpMenu, -1, 0 );
+ }
+
+ // e) Help for modules
// - First create top-level menus to preserve correct order
QString userGuide = "User's Guide";
loadDockWindowsState();
- if (!activeModule() && infoPanel() )
+ if ( !activeModule() && infoPanel() )
{
infoPanel()->clear();
+ infoPanel()->setTitle( tr( "INFO_WELCOME_TO_SALOME" ) );
+
+ int grp = infoPanel()->addGroup( tr( "INFO_GETTING_STARTED" ) );
+ infoPanel()->addAction( action( FileNewId ), grp );
+ infoPanel()->addLabel( action( FileNewId )->statusTip(), grp );
+ infoPanel()->addAction( action( FileOpenId ), grp );
+ infoPanel()->addLabel( action( FileOpenId )->statusTip(), grp );
+ infoPanel()->addAction( action( TutorialsId ), grp );
+ infoPanel()->addLabel( action( TutorialsId )->statusTip(), grp );
+ infoPanel()->addAction( action( VideosId ), grp );
+ infoPanel()->addLabel( action( VideosId )->statusTip(), grp );
+
LightApp_ModuleAction* ma = qobject_cast<LightApp_ModuleAction*>(action(ModulesListId));
if ( ma && ma->count() > 0 )
{
- int grp = infoPanel()->addGroup( tr( "INFO_AVAILABLE_MODULES" ) );
- foreach(QString mname, ma->modules())
+ grp = infoPanel()->addGroup( tr( "INFO_AVAILABLE_MODULES" ) );
+ foreach ( QString mname, ma->modules() )
{
infoPanel()->addAction( ma->moduleAction( mname ), grp );
if ( !moduleDescription( mname ).isEmpty() )
PreferencesId, MRUId, ModulesListId,
NewGLViewId, NewPlot2dId, NewOCCViewId, NewVTKViewId,
NewQxSceneViewId, NewGraphicsViewId, NewPVViewId, NewPyViewerId, StyleId, FullScreenId,
+ WebSiteId, ForumId, VideosId, TutorialsId,
UserID };
protected:
<section name="GUI" >
<parameter name="documentation" value="gui_help"/>
<parameter name="site_url" value="http://www.salome-platform.org"/>
+ <parameter name="tutorials_url" value="https://www.salome-platform.org/user-section/salome-tutorials"/>
<parameter name="forum_url" value="http://www.salome-platform.org/forum"/>
<parameter name="channel_url" value="https://www.youtube.com/playlist?list=PLgvBxFyGVRbZZz4wVvP36xXQL-S81RZsc&disable_polymer=true"/>
</section>
<parameter name="Developer resources" value="${DOCUMENTATION_ROOT_DIR}/index.html;;http://docs.salome-platform.org/latest/index.html" />
</section>
<section name="windows_geometry">
- <parameter name="nomodule" value="#00 #00 #00 #FF #00 #00 #00 #00 #FD #00 #00 #00 #02 #00 #00 #00 #00 #00 #00 #01 #00 #00 #00 #02 #8D #FC #02 #00 #00 #00 #01 #FB #00 #00 #00 #22 #00 #6F #00 #62 #00 #6A #00 #65 #00 #63 #00 #74 #00 #42 #00 #72 #00 #6F #00 #77 #00 #73 #00 #65 #00 #72 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #37 #00 #00 #02 #8D #00 #00 #00 #53 #00 #FF #FF #FF #00 #00 #00 #03 #00 #00 #05 #40 #00 #00 #00 #53 #FC #01 #00 #00 #00 #01 #FB #00 #00 #00 #22 #00 #70 #00 #79 #00 #74 #00 #68 #00 #6F #00 #6E #00 #43 #00 #6F #00 #6E #00 #73 #00 #6F #00 #6C #00 #65 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #00 #00 #00 #05 #40 #00 #00 #00 #46 #00 #FF #FF #FF #00 #00 #04 #38 #00 #00 #02 #8D #00 #00 #00 #04 #00 #00 #00 #04 #00 #00 #00 #08 #00 #00 #00 #08 #FC #00 #00 #00 #01 #00 #00 #00 #02 #00 #00 #00 #02 #00 #00 #00 #1C #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #53 #00 #74 #00 #61 #00 #6E #00 #64 #00 #61 #00 #72 #00 #64 #01 #00 #00 #00 #00 #FF #FF #FF #FF #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #1A #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #4D #00 #6F #00 #64 #00 #75 #00 #6C #00 #65 #00 #73 #01 #00 #00 #00 #CE #FF #FF #FF #FF #00 #00 #00 #00 #00 #00 #00 #00" />
- <parameter name="" value="#00 #00 #00 #FF #00 #00 #00 #00 #FD #00 #00 #00 #02 #00 #00 #00 #00 #00 #00 #01 #00 #00 #00 #02 #8D #FC #02 #00 #00 #00 #01 #FB #00 #00 #00 #22 #00 #6F #00 #62 #00 #6A #00 #65 #00 #63 #00 #74 #00 #42 #00 #72 #00 #6F #00 #77 #00 #73 #00 #65 #00 #72 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #37 #00 #00 #02 #8D #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #03 #00 #00 #05 #40 #00 #00 #00 #74 #FC #01 #00 #00 #00 #01 #FB #00 #00 #00 #22 #00 #70 #00 #79 #00 #74 #00 #68 #00 #6F #00 #6E #00 #43 #00 #6F #00 #6E #00 #73 #00 #6F #00 #6C #00 #65 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #00 #00 #00 #05 #40 #00 #00 #00 #46 #00 #FF #FF #FF #00 #00 #05 #40 #00 #00 #02 #6C #00 #00 #00 #04 #00 #00 #00 #04 #00 #00 #00 #08 #00 #00 #00 #08 #FC #00 #00 #00 #01 #00 #00 #00 #02 #00 #00 #00 #02 #00 #00 #00 #1C #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #53 #00 #74 #00 #61 #00 #6E #00 #64 #00 #61 #00 #72 #00 #64 #01 #00 #00 #00 #00 #FF #FF #FF #FF #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #1A #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #4D #00 #6F #00 #64 #00 #75 #00 #6C #00 #65 #00 #73 #01 #00 #00 #00 #CE #FF #FF #FF #FF #00 #00 #00 #00 #00 #00 #00 #00" />
+ <parameter name="nomodule" value="#00 #00 #00 #FF #00 #00 #00 #00 #FD #00 #00 #00 #03 #00 #00 #00 #00 #00 #00 #01 #00 #00 #00 #02 #62 #FC #02 #00 #00 #00 #01 #FB #00 #00 #00 #22 #00 #6F #00 #62 #00 #6A #00 #65 #00 #63 #00 #74 #00 #42 #00 #72 #00 #6F #00 #77 #00 #73 #00 #65 #00 #72 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #3B #00 #00 #02 #62 #00 #00 #00 #59 #00 #FF #FF #FF #00 #00 #00 #01 #00 #00 #00 #DC #00 #00 #02 #62 #FC #02 #00 #00 #00 #01 #FB #00 #00 #00 #1A #00 #69 #00 #6E #00 #66 #00 #6F #00 #50 #00 #61 #00 #6E #00 #65 #00 #6C #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #3B #00 #00 #02 #62 #00 #00 #02 #62 #00 #FF #FF #FF #00 #00 #00 #03 #00 #00 #04 #C3 #00 #00 #00 #59 #FC #01 #00 #00 #00 #01 #FB #00 #00 #00 #22 #00 #70 #00 #79 #00 #74 #00 #68 #00 #6F #00 #6E #00 #43 #00 #6F #00 #6E #00 #73 #00 #6F #00 #6C #00 #65 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #00 #00 #00 #04 #C3 #00 #00 #00 #46 #00 #FF #FF #FF #00 #00 #02 #DB #00 #00 #02 #62 #00 #00 #00 #04 #00 #00 #00 #04 #00 #00 #00 #08 #00 #00 #00 #08 #FC #00 #00 #00 #01 #00 #00 #00 #02 #00 #00 #00 #03 #00 #00 #00 #1C #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #53 #00 #74 #00 #61 #00 #6E #00 #64 #00 #61 #00 #72 #00 #64 #01 #00 #00 #00 #00 #FF #FF #FF #FF #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #1A #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #4D #00 #6F #00 #64 #00 #75 #00 #6C #00 #65 #00 #73 #01 #00 #00 #00 #BC #FF #FF #FF #FF #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #0E #00 #50 #00 #6C #00 #75 #00 #67 #00 #69 #00 #6E #00 #73 #00 #00 #00 #00 #22 #FF #FF #FF #FF #00 #00 #00 #00 #00 #00 #00 #00"/>
+ <parameter name="" value="#00 #00 #00 #FF #00 #00 #00 #00 #FD #00 #00 #00 #02 #00 #00 #00 #00 #00 #00 #01 #00 #00 #00 #02 #8D #FC #02 #00 #00 #00 #01 #FB #00 #00 #00 #22 #00 #6F #00 #62 #00 #6A #00 #65 #00 #63 #00 #74 #00 #42 #00 #72 #00 #6F #00 #77 #00 #73 #00 #65 #00 #72 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #37 #00 #00 #02 #8D #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #03 #00 #00 #04 #C3 #00 #00 #00 #74 #FC #01 #00 #00 #00 #01 #FB #00 #00 #00 #22 #00 #70 #00 #79 #00 #74 #00 #68 #00 #6F #00 #6E #00 #43 #00 #6F #00 #6E #00 #73 #00 #6F #00 #6C #00 #65 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #00 #00 #00 #04 #C3 #00 #00 #00 #46 #00 #FF #FF #FF #00 #00 #04 #C3 #00 #00 #02 #5E #00 #00 #00 #04 #00 #00 #00 #04 #00 #00 #00 #08 #00 #00 #00 #08 #FC #00 #00 #00 #01 #00 #00 #00 #02 #00 #00 #00 #03 #00 #00 #00 #1C #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #53 #00 #74 #00 #61 #00 #6E #00 #64 #00 #61 #00 #72 #00 #64 #01 #00 #00 #00 #00 #FF #FF #FF #FF #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #1A #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #4D #00 #6F #00 #64 #00 #75 #00 #6C #00 #65 #00 #73 #01 #00 #00 #00 #11 #FF #FF #FF #FF #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #00 #0E #00 #50 #00 #6C #00 #75 #00 #67 #00 #69 #00 #6E #00 #73 #01 #00 #00 #00 #22 #FF #FF #FF #FF #00 #00 #00 #00 #00 #00 #00 #00"/>
</section>
<section name="windows_visibility">
- <parameter name="nomodule" value="#00 #00 #00 #00 #04 #00 #00 #00 #0E #00 #4D #00 #6F #00 #64 #00 #75 #00 #6C #00 #65 #00 #73 #01 #00 #00 #00 #1A #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #4D #00 #6F #00 #64 #00 #75 #00 #6C #00 #65 #00 #73 #01 #00 #00 #00 #1C #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #53 #00 #74 #00 #61 #00 #6E #00 #64 #00 #61 #00 #72 #00 #64 #01 #00 #00 #00 #10 #00 #53 #00 #74 #00 #61 #00 #6E #00 #64 #00 #61 #00 #72 #00 #64 #01 #01 #00 #00 #00 #05 #00 #00 #00 #22 #00 #6F #00 #62 #00 #6A #00 #65 #00 #63 #00 #74 #00 #42 #00 #72 #00 #6F #00 #77 #00 #73 #00 #65 #00 #72 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #22 #00 #70 #00 #79 #00 #74 #00 #68 #00 #6F #00 #6E #00 #43 #00 #6F #00 #6E #00 #73 #00 #6F #00 #6C #00 #65 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #10 #00 #77 #00 #69 #00 #6E #00 #64 #00 #6F #00 #77 #00 #5F #00 #30 #01 #00 #00 #00 #10 #00 #77 #00 #69 #00 #6E #00 #64 #00 #6F #00 #77 #00 #5F #00 #31 #01 #00 #00 #00 #10 #00 #77 #00 #69 #00 #6E #00 #64 #00 #6F #00 #77 #00 #5F #00 #33 #01" />
- <parameter name="" value="#00 #00 #00 #00 #04 #00 #00 #00 #0E #00 #4D #00 #6F #00 #64 #00 #75 #00 #6C #00 #65 #00 #73 #01 #00 #00 #00 #1A #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #4D #00 #6F #00 #64 #00 #75 #00 #6C #00 #65 #00 #73 #01 #00 #00 #00 #1C #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #53 #00 #74 #00 #61 #00 #6E #00 #64 #00 #61 #00 #72 #00 #64 #01 #00 #00 #00 #10 #00 #53 #00 #74 #00 #61 #00 #6E #00 #64 #00 #61 #00 #72 #00 #64 #01 #01 #00 #00 #00 #05 #00 #00 #00 #22 #00 #6F #00 #62 #00 #6A #00 #65 #00 #63 #00 #74 #00 #42 #00 #72 #00 #6F #00 #77 #00 #73 #00 #65 #00 #72 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #22 #00 #70 #00 #79 #00 #74 #00 #68 #00 #6F #00 #6E #00 #43 #00 #6F #00 #6E #00 #73 #00 #6F #00 #6C #00 #65 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #10 #00 #77 #00 #69 #00 #6E #00 #64 #00 #6F #00 #77 #00 #5F #00 #30 #01 #00 #00 #00 #10 #00 #77 #00 #69 #00 #6E #00 #64 #00 #6F #00 #77 #00 #5F #00 #31 #01 #00 #00 #00 #10 #00 #77 #00 #69 #00 #6E #00 #64 #00 #6F #00 #77 #00 #5F #00 #33 #01" />
+ <parameter name="" value="#00 #00 #00 #00 #05 #00 #00 #00 #0E #00 #4D #00 #6F #00 #64 #00 #75 #00 #6C #00 #65 #00 #73 #01 #00 #00 #00 #0E #00 #50 #00 #6C #00 #75 #00 #67 #00 #69 #00 #6E #00 #73 #01 #00 #00 #00 #1A #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #4D #00 #6F #00 #64 #00 #75 #00 #6C #00 #65 #00 #73 #01 #00 #00 #00 #1C #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #53 #00 #74 #00 #61 #00 #6E #00 #64 #00 #61 #00 #72 #00 #64 #01 #00 #00 #00 #10 #00 #53 #00 #74 #00 #61 #00 #6E #00 #64 #00 #61 #00 #72 #00 #64 #01 #01 #00 #00 #00 #05 #00 #00 #00 #22 #00 #6F #00 #62 #00 #6A #00 #65 #00 #63 #00 #74 #00 #42 #00 #72 #00 #6F #00 #77 #00 #73 #00 #65 #00 #72 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #22 #00 #70 #00 #79 #00 #74 #00 #68 #00 #6F #00 #6E #00 #43 #00 #6F #00 #6E #00 #73 #00 #6F #00 #6C #00 #65 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #10 #00 #77 #00 #69 #00 #6E #00 #64 #00 #6F #00 #77 #00 #5F #00 #30 #01 #00 #00 #00 #10 #00 #77 #00 #69 #00 #6E #00 #64 #00 #6F #00 #77 #00 #5F #00 #31 #01 #00 #00 #00 #10 #00 #77 #00 #69 #00 #6E #00 #64 #00 #6F #00 #77 #00 #5F #00 #33 #01"/>
+ <parameter name="nomodule" value="#00 #00 #00 #00 #05 #00 #00 #00 #0E #00 #4D #00 #6F #00 #64 #00 #75 #00 #6C #00 #65 #00 #73 #01 #00 #00 #00 #0E #00 #50 #00 #6C #00 #75 #00 #67 #00 #69 #00 #6E #00 #73 #00 #00 #00 #00 #1A #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #4D #00 #6F #00 #64 #00 #75 #00 #6C #00 #65 #00 #73 #01 #00 #00 #00 #1C #00 #53 #00 #61 #00 #6C #00 #6F #00 #6D #00 #65 #00 #53 #00 #74 #00 #61 #00 #6E #00 #64 #00 #61 #00 #72 #00 #64 #01 #00 #00 #00 #10 #00 #53 #00 #74 #00 #61 #00 #6E #00 #64 #00 #61 #00 #72 #00 #64 #01 #01 #00 #00 #00 #06 #00 #00 #00 #1A #00 #69 #00 #6E #00 #66 #00 #6F #00 #50 #00 #61 #00 #6E #00 #65 #00 #6C #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #22 #00 #6F #00 #62 #00 #6A #00 #65 #00 #63 #00 #74 #00 #42 #00 #72 #00 #6F #00 #77 #00 #73 #00 #65 #00 #72 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #22 #00 #70 #00 #79 #00 #74 #00 #68 #00 #6F #00 #6E #00 #43 #00 #6F #00 #6E #00 #73 #00 #6F #00 #6C #00 #65 #00 #44 #00 #6F #00 #63 #00 #6B #01 #00 #00 #00 #10 #00 #77 #00 #69 #00 #6E #00 #64 #00 #6F #00 #77 #00 #5F #00 #30 #01 #00 #00 #00 #10 #00 #77 #00 #69 #00 #6E #00 #64 #00 #6F #00 #77 #00 #5F #00 #31 #01 #00 #00 #00 #10 #00 #77 #00 #69 #00 #6E #00 #64 #00 #6F #00 #77 #00 #5F #00 #33 #01"/>
</section>
</document>
<source>SALOME_VIDEO_TUTORIALS</source>
<translation>Video Tutorials</translation>
</message>
+ <message>
+ <source>PRP_SALOME_VIDEO_TUTORIALS</source>
+ <translation>Visit YouTube channel with some videos</translation>
+ </message>
+ <message>
+ <source>SALOME_TUTORIALS</source>
+ <translation>Tutorials</translation>
+ </message>
+ <message>
+ <source>PRP_SALOME_TUTORIALS</source>
+ <translation>Try tutorials from SALOME site</translation>
+ </message>
<message>
<source>ENTRY_COLUMN</source>
<translation>Entry</translation>
<source>PREF_PY_NUM_COLUMNS</source>
<translation>Number of columns:</translation>
</message>
+ <message>
+ <source>INFO_WELCOME_TO_SALOME</source>
+ <translation>Welcome to SALOME</translation>
+ </message>
<message>
<source>INFO_GETTING_STARTED</source>
<translation>Getting started</translation>
<source>SALOME_VIDEO_TUTORIALS</source>
<translation type="unfinished">Video Tutorials</translation>
</message>
+ <message>
+ <source>PRP_SALOME_VIDEO_TUTORIALS</source>
+ <translation type="unfinished">Visit YouTube channel with some videos</translation>
+ </message>
+ <message>
+ <source>SALOME_TUTORIALS</source>
+ <translation type="unfinished">Tutorials</translation>
+ </message>
+ <message>
+ <source>PRP_SALOME_TUTORIALS</source>
+ <translation type="unfinished">Try tutorials from SALOME site</translation>
+ </message>
<message>
<source>ENTRY_COLUMN</source>
<translation>Entrée</translation>
<source>PREF_PY_NUM_COLUMNS</source>
<translation>Nombre de colonnes:</translation>
</message>
+ <message>
+ <source>INFO_WELCOME_TO_SALOME</source>
+ <translation type="unfinished">Welcome to SALOME</translation>
+ </message>
<message>
<source>INFO_GETTING_STARTED</source>
<translation type="unfinished">Getting started</translation>
<source>SALOME_VIDEO_TUTORIALS</source>
<translation type="unfinished">Video Tutorials</translation>
</message>
+ <message>
+ <source>PRP_SALOME_VIDEO_TUTORIALS</source>
+ <translation type="unfinished">Visit YouTube channel with some videos</translation>
+ </message>
+ <message>
+ <source>SALOME_TUTORIALS</source>
+ <translation type="unfinished">Tutorials</translation>
+ </message>
+ <message>
+ <source>PRP_SALOME_TUTORIALS</source>
+ <translation type="unfinished">Try tutorials from SALOME site</translation>
+ </message>
<message>
<source>ENTRY_COLUMN</source>
<translation>エントリ</translation>
<source>PREF_PY_NUM_COLUMNS</source>
<translation>列数</translation>
</message>
+ <message>
+ <source>INFO_WELCOME_TO_SALOME</source>
+ <translation type="unfinished">Welcome to SALOME</translation>
+ </message>
<message>
<source>INFO_GETTING_STARTED</source>
<translation type="unfinished">Getting started</translation>
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-// File : InfoPanel.cxx
-// Author : Viktor UZLOV, Open CASCADE S.A.S. (viktor.uzlov@opencascade.com)
-//
-
#include "QtxInfoPanel.h"
#include <QAction>
+#include <QFont>
#include <QGroupBox>
#include <QLabel>
#include <QMap>
-#include <QSizePolicy>
#include <QPalette>
-#include <QFont>
+#include <QSizePolicy>
#include <QToolButton>
#include <QVBoxLayout>
-
+/*!
+ \class QtxInfoPanel::Container
+ \short Container to store widgets within info panel
+ \internal
+*/
class QtxInfoPanel::Container: public QWidget
{
public:
QGroupBox* group;
};
-class QtxInfoPanel::TitleLabel: public QLabel
-{
-public:
- TitleLabel(const QString &text, QWidget *parent = Q_NULLPTR, Qt::WindowFlags f = Qt::WindowFlags()) :
- QLabel(text, parent, f){
- this->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
- QString color_bg = this->palette().color(QPalette::Highlight).darker().name();
- QString color_fg = this->palette().color(QPalette::HighlightedText).name();
- this->setStyleSheet(QString("QLabel {{background:%1; color:%2;}}").arg(color_bg).arg(color_fg));
- this->setTextFormat(Qt::PlainText);
- QFont font= QFont();
- font.setBold(true);
- this->setFont(font);
- this->setContentsMargins(2, 5, 2, 5);
- }
-};
-
QtxInfoPanel::Container::Container( QWidget* parent )
: QWidget( parent ), group( 0 )
{
void QtxInfoPanel::Container::addLabel( const QString& text, Qt::Alignment alignment, const int id )
{
QLabel* label = new QLabel( text );
+ QFont f = label->font();
+ f.setItalic( true );
+ label->setFont( f );
label->setAlignment( alignment );
label->setWordWrap( true );
put( label );
void QtxInfoPanel::Container::addAction( QAction* action, const int id )
{
QToolButton* button = new QToolButton( this );
+ button->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
button->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
button->setAutoRaise( true );
button->setDefaultAction( action );
}
+/*!
+ \class QtxInfoPanel::Title
+ \short Info panel's title widget
+ \internal
+*/
+class QtxInfoPanel::Title: public QLabel
+{
+public:
+ Title( QWidget* parent = 0 );
+};
+
+QtxInfoPanel::Title::Title( QWidget* parent )
+ : QLabel( parent )
+{
+ setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+ QString bg = palette().color( QPalette::Highlight ).name();
+ QString fg = palette().color( QPalette::HighlightedText ).name();
+ setStyleSheet( QString( "QLabel { background:%1; color:%2; }" ).arg( bg ).arg( fg ) );
+ setTextFormat( Qt::PlainText );
+ QFont f = font();
+ f.setBold( true );
+ setFont( f );
+ setContentsMargins( 2, 5, 2, 5 );
+}
+
+
+/*!
+ \class QtxInfoPanel
+ \short Info panel.
+*/
QtxInfoPanel::QtxInfoPanel( QWidget* parent )
: QWidget( parent )
{
+ title = new Title( this );
container = new Container( this );
- QVBoxLayout* layout = new QVBoxLayout(this);
- title = new TitleLabel("");
+ QVBoxLayout* layout = new QVBoxLayout( this );
layout->setMargin( 0 );
layout->addWidget( title );
layout->addWidget( container );
layout->addStretch();
- title->setVisible(!title->text().isEmpty());
+ setTitle( "" );
}
QtxInfoPanel::~QtxInfoPanel()
void QtxInfoPanel::setTitle( const QString& text )
{
- title->setText(text);
- title->setVisible(!title->text().isEmpty());
+ title->setText( text );
+ title->setVisible( !title->text().isEmpty() );
}
void QtxInfoPanel::remove( const int id )
{
Container* group = dynamic_cast<Container*>( widget->parentWidget() );
if ( !group )
- {
group = dynamic_cast<Container*>( widget->parentWidget()->parentWidget() );
- group->remove( id );
- }
- else
+ if ( group )
group->remove( id );
}
}
Q_OBJECT
class Container;
- class TitleLabel;
+ class Title;
public:
QtxInfoPanel( QWidget* = 0 );
~QtxInfoPanel();
+ void setTitle( const QString& );
int addLabel( const QString&, const int = -1 );
int addLabel( const QString&, Qt::Alignment, const int = -1 );
int addAction( QAction*, const int = -1 );
int addGroup( const QString&, const int = -1 );
- void setTitle( const QString& );
void remove( const int );
void clear( const int = -1 );
QWidget* find( const int ) const;
private:
+ Title* title;
Container* container;
- TitleLabel* title;
};
#ifdef WIN32
</message>
<message>
<source>PRP_DESK_FILE_NEW</source>
- <translation>Creates a new document</translation>
+ <translation>Create a new document</translation>
</message>
<message>
<source>PRP_DESK_FILE_MRU</source>
- <translation>Opens a document</translation>
+ <translation>Open a document</translation>
</message>
<message>
<source>MEN_DESK_FILE_NEW</source>
</message>
<message>
<source>PRP_DESK_FILE_OPEN</source>
- <translation>Opens an existing document</translation>
+ <translation>Open an existing document</translation>
</message>
<message>
<source>PRP_DESK_FILE_REOPEN</source>
</message>
<message>
<source>PRP_DESK_FILE_SAVE</source>
- <translation>Saves the active document</translation>
+ <translation>Save the active document</translation>
</message>
<message>
<source>PRP_DESK_WINDOW_HTILE</source>