Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
O
OpenBoard
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lifo
Nicolas Ollinger
OpenBoard
Commits
d822dc73
Commit
d822dc73
authored
May 23, 2012
by
Anatoly Mihalchenko
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'Sankore-1.40' of github.com:Sankore/Sankore-3.1 into Sankore-1.40
parents
0180df1b
51467d47
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
477 additions
and
476 deletions
+477
-476
UBSettings.cpp
src/core/UBSettings.cpp
+2
-0
UBSettings.h
src/core/UBSettings.h
+2
-0
UBDockPalette.cpp
src/gui/UBDockPalette.cpp
+456
-468
UBLeftPalette.cpp
src/gui/UBLeftPalette.cpp
+8
-2
UBNavigatorPalette.cpp
src/gui/UBNavigatorPalette.cpp
+0
-2
UBRightPalette.cpp
src/gui/UBRightPalette.cpp
+9
-4
No files found.
src/core/UBSettings.cpp
View file @
d822dc73
...
...
@@ -206,7 +206,9 @@ void UBSettings::init()
appToolBarOrientationVertical
=
new
UBSetting
(
this
,
"App"
,
"ToolBarOrientationVertical"
,
false
);
navigPaletteWidth
=
new
UBSetting
(
this
,
"Board"
,
"NavigPaletteWidth"
,
270
);
rightLibPaletteWidth
=
new
UBSetting
(
this
,
"Board"
,
"RightLibPaletteWidth"
,
270
);
rightLibPaletteIsCollapsed
=
new
UBSetting
(
this
,
"Board"
,
"RightLibPaletteIsCollapsed"
,
false
);
leftLibPaletteWidth
=
new
UBSetting
(
this
,
"Board"
,
"LeftLibPaletteWidth"
,
270
);
leftLibPaletteIsCollapsed
=
new
UBSetting
(
this
,
"Board"
,
"LeftLibPaletteIsCollapsed"
,
false
);
appIsInSoftwareUpdateProcess
=
new
UBSetting
(
this
,
"App"
,
"IsInSoftwareUpdateProcess"
,
false
);
appLastSessionDocumentUUID
=
new
UBSetting
(
this
,
"App"
,
"LastSessionDocumentUUID"
,
""
);
...
...
src/core/UBSettings.h
View file @
d822dc73
...
...
@@ -316,7 +316,9 @@ class UBSettings : public QObject
UBSetting
*
navigPaletteWidth
;
UBSetting
*
rightLibPaletteWidth
;
UBSetting
*
rightLibPaletteIsCollapsed
;
UBSetting
*
leftLibPaletteWidth
;
UBSetting
*
leftLibPaletteIsCollapsed
;
UBSetting
*
communityUser
;
UBSetting
*
communityPsw
;
...
...
src/gui/UBDockPalette.cpp
View file @
d822dc73
...
...
@@ -29,55 +29,55 @@
* \brief The constructor
*/
UBDockPalette
::
UBDockPalette
(
eUBDockPaletteType
paletteType
,
QWidget
*
parent
,
const
char
*
name
)
:
QWidget
(
parent
,
Qt
::
FramelessWindowHint
|
Qt
::
X11BypassWindowManagerHint
)
,
mOrientation
(
eUBDockOrientation_Left
)
,
mPreferredWidth
(
100
)
,
mPreferredHeight
(
100
)
,
mCanResize
(
false
)
,
mResized
(
false
)
,
mCollapseWidth
(
150
)
,
mLastWidth
(
-
1
)
,
mHTab
(
0
)
,
mpStackWidget
(
NULL
)
,
mpLayout
(
NULL
)
,
mCurrentTab
(
0
)
,
mPaletteType
(
paletteType
)
,
mTabPalette
(
new
UBTabDockPalette
(
this
,
parent
))
{
setObjectName
(
name
);
mpLayout
=
new
QVBoxLayout
();
setLayout
(
mpLayout
);
mpStackWidget
=
new
QStackedWidget
(
this
);
mpLayout
->
addWidget
(
mpStackWidget
);
// clear the tab widgets
mTabWidgets
.
clear
();
// We let 2 pixels in order to keep a small border for the resizing
setMinimumWidth
(
0
);
if
(
parent
)
{
setAttribute
(
Qt
::
WA_NoMousePropagation
);
setAttribute
(
Qt
::
WA_TranslucentBackground
);
}
else
{
// standalone window
setAttribute
(
Qt
::
WA_TranslucentBackground
);
}
mBackgroundBrush
=
QBrush
(
UBSettings
::
paletteColor
);
// This is the only way to set the background as transparent!
setStyleSheet
(
"QWidget {background-color: transparent}"
);
// Set the position of the tab
onToolbarPosUpdated
();
connect
(
UBSettings
::
settings
()
->
appToolBarPositionedAtTop
,
SIGNAL
(
changed
(
QVariant
)),
this
,
SLOT
(
onToolbarPosUpdated
()));
connect
(
UBDownloadManager
::
downloadManager
(),
SIGNAL
(
allDownloadsFinished
()),
this
,
SLOT
(
onAllDownloadsFinished
()));
:
QWidget
(
parent
,
Qt
::
FramelessWindowHint
|
Qt
::
X11BypassWindowManagerHint
)
,
mOrientation
(
eUBDockOrientation_Left
)
,
mPreferredWidth
(
100
)
,
mPreferredHeight
(
100
)
,
mCanResize
(
false
)
,
mResized
(
false
)
,
mCollapseWidth
(
150
)
,
mLastWidth
(
-
1
)
,
mHTab
(
0
)
,
mpStackWidget
(
NULL
)
,
mpLayout
(
NULL
)
,
mCurrentTab
(
0
)
,
mPaletteType
(
paletteType
)
,
mTabPalette
(
new
UBTabDockPalette
(
this
,
parent
))
{
setObjectName
(
name
);
mpLayout
=
new
QVBoxLayout
();
setLayout
(
mpLayout
);
mpStackWidget
=
new
QStackedWidget
(
this
);
mpLayout
->
addWidget
(
mpStackWidget
);
// clear the tab widgets
mTabWidgets
.
clear
();
// We let 2 pixels in order to keep a small border for the resizing
setMinimumWidth
(
0
);
if
(
parent
)
{
setAttribute
(
Qt
::
WA_NoMousePropagation
);
setAttribute
(
Qt
::
WA_TranslucentBackground
);
}
else
{
// standalone window
setAttribute
(
Qt
::
WA_TranslucentBackground
);
}
mBackgroundBrush
=
QBrush
(
UBSettings
::
paletteColor
);
// This is the only way to set the background as transparent!
setStyleSheet
(
"QWidget {background-color: transparent}"
);
// Set the position of the tab
onToolbarPosUpdated
();
connect
(
UBSettings
::
settings
()
->
appToolBarPositionedAtTop
,
SIGNAL
(
changed
(
QVariant
)),
this
,
SLOT
(
onToolbarPosUpdated
()));
connect
(
UBDownloadManager
::
downloadManager
(),
SIGNAL
(
allDownloadsFinished
()),
this
,
SLOT
(
onAllDownloadsFinished
()));
}
/**
...
...
@@ -85,20 +85,20 @@ UBDockPalette::UBDockPalette(eUBDockPaletteType paletteType, QWidget *parent, co
*/
UBDockPalette
::~
UBDockPalette
()
{
if
(
NULL
!=
mpStackWidget
)
{
delete
mpStackWidget
;
mpStackWidget
=
NULL
;
}
if
(
NULL
!=
mpLayout
)
{
delete
mpLayout
;
mpLayout
=
NULL
;
}
if
(
NULL
!=
mTabPalette
)
{
delete
mTabPalette
;
mTabPalette
=
NULL
;
}
if
(
NULL
!=
mpStackWidget
)
{
delete
mpStackWidget
;
mpStackWidget
=
NULL
;
}
if
(
NULL
!=
mpLayout
)
{
delete
mpLayout
;
mpLayout
=
NULL
;
}
if
(
NULL
!=
mTabPalette
)
{
delete
mTabPalette
;
mTabPalette
=
NULL
;
}
}
/**
...
...
@@ -107,7 +107,7 @@ UBDockPalette::~UBDockPalette()
*/
eUBDockOrientation
UBDockPalette
::
orientation
()
{
return
mOrientation
;
return
mOrientation
;
}
/**
...
...
@@ -116,19 +116,19 @@ eUBDockOrientation UBDockPalette::orientation()
*/
void
UBDockPalette
::
setOrientation
(
eUBDockOrientation
orientation
)
{
// Set the size
mOrientation
=
orientation
;
// Set the size
mOrientation
=
orientation
;
if
(
orientation
==
eUBDockOrientation_Left
||
orientation
==
eUBDockOrientation_Right
)
{
setMaximumHeight
(
parentWidget
()
->
height
());
setMinimumHeight
(
maximumHeight
());
}
else
if
(
orientation
==
eUBDockOrientation_Top
||
orientation
==
eUBDockOrientation_Bottom
)
{
setMaximumWidth
(
parentWidget
()
->
width
());
setMinimumWidth
(
maximumWidth
());
}
if
(
orientation
==
eUBDockOrientation_Left
||
orientation
==
eUBDockOrientation_Right
)
{
setMaximumHeight
(
parentWidget
()
->
height
());
setMinimumHeight
(
maximumHeight
());
}
else
if
(
orientation
==
eUBDockOrientation_Top
||
orientation
==
eUBDockOrientation_Bottom
)
{
setMaximumWidth
(
parentWidget
()
->
width
());
setMinimumWidth
(
maximumWidth
());
}
}
/**
...
...
@@ -137,32 +137,32 @@ void UBDockPalette::setOrientation(eUBDockOrientation orientation)
*/
void
UBDockPalette
::
resizeEvent
(
QResizeEvent
*
event
)
{
Q_UNUSED
(
event
);
updateMaxWidth
();
if
(
parentWidget
())
{
setMinimumHeight
(
parentWidget
()
->
height
());
}
Q_UNUSED
(
event
);
updateMaxWidth
();
if
(
parentWidget
())
{
setMinimumHeight
(
parentWidget
()
->
height
());
}
// Set the position
QPoint
origin
;
switch
(
mOrientation
)
{
case
eUBDockOrientation_Right
:
QPoint
origin
;
switch
(
mOrientation
)
{
case
eUBDockOrientation_Right
:
origin
.
setX
(
parentWidget
()
->
width
()
-
this
->
width
());
origin
.
setY
(
0
);
break
;
case
eUBDockOrientation_Bottom
:
// Not supported yet
case
eUBDockOrientation_Top
:
// Not supported yet
case
eUBDockOrientation_Left
:
default
:
origin
.
setX
(
0
);
origin
.
setY
(
0
);
break
;
}
move
(
origin
.
x
(),
origin
.
y
());
moveTabs
();
break
;
case
eUBDockOrientation_Bottom
:
// Not supported yet
case
eUBDockOrientation_Top
:
// Not supported yet
case
eUBDockOrientation_Left
:
default
:
origin
.
setX
(
0
);
origin
.
setY
(
0
);
break
;
}
move
(
origin
.
x
(),
origin
.
y
());
moveTabs
();
}
/**
...
...
@@ -171,9 +171,9 @@ void UBDockPalette::resizeEvent(QResizeEvent *event)
*/
void
UBDockPalette
::
enterEvent
(
QEvent
*
event
)
{
Q_UNUSED
(
event
);
// We want to set the cursor as an arrow everytime it enters the palette
setCursor
(
Qt
::
ArrowCursor
);
Q_UNUSED
(
event
);
// We want to set the cursor as an arrow everytime it enters the palette
setCursor
(
Qt
::
ArrowCursor
);
}
/**
...
...
@@ -182,9 +182,9 @@ void UBDockPalette::enterEvent(QEvent *event)
*/
void
UBDockPalette
::
leaveEvent
(
QEvent
*
event
)
{
Q_UNUSED
(
event
);
// Restore the cursor to its previous shape
unsetCursor
();
Q_UNUSED
(
event
);
// Restore the cursor to its previous shape
unsetCursor
();
}
/**
...
...
@@ -193,38 +193,38 @@ void UBDockPalette::leaveEvent(QEvent *event)
*/
void
UBDockPalette
::
paintEvent
(
QPaintEvent
*
event
)
{
Q_UNUSED
(
event
);
QPainter
painter
(
this
);
painter
.
setRenderHint
(
QPainter
::
Antialiasing
);
painter
.
setPen
(
Qt
::
NoPen
);
painter
.
setBrush
(
mBackgroundBrush
);
QPainterPath
path
;
path
.
setFillRule
(
Qt
::
WindingFill
);
int
nbTabs
=
mTabWidgets
.
size
();
if
(
0
<
nbTabs
)
{
// First draw the BIG RECTANGLE (I write it big because the rectangle is big...)
if
(
mOrientation
==
eUBDockOrientation_Left
)
{
path
.
addRect
(
0.0
,
0.0
,
width
(),
height
());
}
else
if
(
mOrientation
==
eUBDockOrientation_Right
)
{
path
.
addRect
(
0.0
,
0.0
,
width
(),
height
());
}
// THEN DRAW THE small tabs (yes, the tabs are small...)
if
(
eUBDockTabOrientation_Up
==
mTabsOrientation
)
{
mHTab
=
border
();
}
else
{
mHTab
=
height
()
-
border
()
-
nbTabs
*
TABSIZE
-
(
nbTabs
-
1
)
*
tabSpacing
();
}
painter
.
drawPath
(
path
);
}
Q_UNUSED
(
event
);
QPainter
painter
(
this
);
painter
.
setRenderHint
(
QPainter
::
Antialiasing
);
painter
.
setPen
(
Qt
::
NoPen
);
painter
.
setBrush
(
mBackgroundBrush
);
QPainterPath
path
;
path
.
setFillRule
(
Qt
::
WindingFill
);
int
nbTabs
=
mTabWidgets
.
size
();
if
(
0
<
nbTabs
)
{
// First draw the BIG RECTANGLE (I write it big because the rectangle is big...)
if
(
mOrientation
==
eUBDockOrientation_Left
)
{
path
.
addRect
(
0.0
,
0.0
,
width
(),
height
());
}
else
if
(
mOrientation
==
eUBDockOrientation_Right
)
{
path
.
addRect
(
0.0
,
0.0
,
width
(),
height
());
}
// THEN DRAW THE small tabs (yes, the tabs are small...)
if
(
eUBDockTabOrientation_Up
==
mTabsOrientation
)
{
mHTab
=
border
();
}
else
{
mHTab
=
height
()
-
border
()
-
nbTabs
*
TABSIZE
-
(
nbTabs
-
1
)
*
tabSpacing
();
}
painter
.
drawPath
(
path
);
}
}
/**
...
...
@@ -233,11 +233,11 @@ void UBDockPalette::paintEvent(QPaintEvent *event)
*/
void
UBDockPalette
::
setBackgroundBrush
(
const
QBrush
&
brush
)
{
if
(
mBackgroundBrush
!=
brush
)
{
mBackgroundBrush
=
brush
;
update
();
}
if
(
mBackgroundBrush
!=
brush
)
{
mBackgroundBrush
=
brush
;
update
();
}
}
/**
...
...
@@ -246,7 +246,7 @@ void UBDockPalette::setBackgroundBrush(const QBrush &brush)
*/
int
UBDockPalette
::
border
()
{
return
15
;
return
15
;
}
/**
...
...
@@ -255,7 +255,7 @@ int UBDockPalette::border()
*/
int
UBDockPalette
::
radius
()
{
return
5
;
return
5
;
}
/**
...
...
@@ -263,7 +263,7 @@ int UBDockPalette::radius()
*/
void
UBDockPalette
::
updateMaxWidth
()
{
// Only the inherited class will overload this method
// Only the inherited class will overload this method
}
/**
...
...
@@ -272,7 +272,7 @@ void UBDockPalette::updateMaxWidth()
*/
int
UBDockPalette
::
collapseWidth
()
{
return
mCollapseWidth
;
return
mCollapseWidth
;
}
/**
...
...
@@ -280,17 +280,17 @@ int UBDockPalette::collapseWidth()
*/
void
UBDockPalette
::
tabClicked
(
int
tabIndex
)
{
// If the current tab is not the clicked one, show its content
if
(
mCurrentTab
!=
tabIndex
)
{
showTabWidget
(
tabIndex
);
}
// else collapse the palette
else
{
toggleCollapseExpand
();
}
mTabPalette
->
update
();
// If the current tab is not the clicked one, show its content
if
(
mCurrentTab
!=
tabIndex
)
{
showTabWidget
(
tabIndex
);
}
// else collapse the palette
else
{
toggleCollapseExpand
();
}
mTabPalette
->
update
();
}
/**
...
...
@@ -299,19 +299,13 @@ void UBDockPalette::tabClicked(int tabIndex)
*/
void
UBDockPalette
::
showTabWidget
(
int
tabIndex
)
{
mpStackWidget
->
setCurrentIndex
(
tabIndex
);
mCurrentTab
=
tabIndex
;
mpStackWidget
->
setCurrentIndex
(
tabIndex
);
mCurrentTab
=
tabIndex
;
// Expand it if collapsed
if
(
mLastWidth
!=
-
1
)
{
toggleCollapseExpand
();
}
// Update the current tab index
if
(
NULL
!=
(
dynamic_cast
<
UBDockPaletteWidget
*>
(
mpStackWidget
->
widget
(
tabIndex
)))){
mCrntTabWidget
=
dynamic_cast
<
UBDockPaletteWidget
*>
(
mpStackWidget
->
widget
(
tabIndex
))
->
name
();
}
// Update the current tab index
if
(
NULL
!=
(
dynamic_cast
<
UBDockPaletteWidget
*>
(
mpStackWidget
->
widget
(
tabIndex
)))){
mCrntTabWidget
=
dynamic_cast
<
UBDockPaletteWidget
*>
(
mpStackWidget
->
widget
(
tabIndex
))
->
name
();
}
}
...
...
@@ -320,18 +314,12 @@ void UBDockPalette::showTabWidget(int tabIndex)
*/
void
UBDockPalette
::
toggleCollapseExpand
()
{
if
(
mLastWidth
==
-
1
)
{
// The palette must be collapsed
mLastWidth
=
width
();
resize
(
0
,
height
());
}
else
{
// The palette will be expanded
resize
(
mLastWidth
,
height
());
mLastWidth
=
-
1
;
}
if
(
width
()
<
mCollapseWidth
)
resize
(
mLastWidth
,
height
());
else
{
mLastWidth
=
width
();
resize
(
0
,
height
());
}
}
/**
...
...
@@ -340,7 +328,7 @@ void UBDockPalette::toggleCollapseExpand()
*/
void
UBDockPalette
::
setTabsOrientation
(
eUBDockTabOrientation
orientation
)
{
mTabsOrientation
=
orientation
;
mTabsOrientation
=
orientation
;
}
/**
...
...
@@ -348,17 +336,17 @@ void UBDockPalette::setTabsOrientation(eUBDockTabOrientation orientation)
*/
void
UBDockPalette
::
onToolbarPosUpdated
()
{
// Get the position of the tab
if
(
UBSettings
::
settings
()
->
appToolBarPositionedAtTop
->
get
().
toBool
())
{
setTabsOrientation
(
eUBDockTabOrientation_Up
);
}
else
{
setTabsOrientation
(
eUBDockTabOrientation_Down
);
}
moveTabs
();
update
();
// Get the position of the tab
if
(
UBSettings
::
settings
()
->
appToolBarPositionedAtTop
->
get
().
toBool
())
{
setTabsOrientation
(
eUBDockTabOrientation_Up
);
}
else
{
setTabsOrientation
(
eUBDockTabOrientation_Down
);
}
moveTabs
();
update
();
}
/**
...
...
@@ -367,7 +355,7 @@ void UBDockPalette::onToolbarPosUpdated()
*/
int
UBDockPalette
::
customMargin
()
{
return
5
;
return
5
;
}
/**
...
...
@@ -376,15 +364,15 @@ int UBDockPalette::customMargin()
*/
void
UBDockPalette
::
addTab
(
UBDockPaletteWidget
*
widget
)
{
if
(
!
mTabWidgets
.
contains
(
widget
)
&&
widget
->
visibleState
())
{
widget
->
setVisible
(
true
);
mTabWidgets
.
append
(
widget
);
mpStackWidget
->
addWidget
(
widget
);
mpStackWidget
->
setCurrentWidget
(
widget
);
resizeTabs
();
update
();
}
if
(
!
mTabWidgets
.
contains
(
widget
)
&&
widget
->
visibleState
())
{
widget
->
setVisible
(
true
);
mTabWidgets
.
append
(
widget
);
mpStackWidget
->
addWidget
(
widget
);
mpStackWidget
->
setCurrentWidget
(
widget
);
resizeTabs
();
update
();
}
}
/**
* \brief Remove the given tab
...
...
@@ -392,16 +380,16 @@ void UBDockPalette::addTab(UBDockPaletteWidget *widget)
*/
void
UBDockPalette
::
removeTab
(
UBDockPaletteWidget
*
widget
)
{
int
nWidget
=
mTabWidgets
.
indexOf
(
widget
);
if
(
nWidget
>=
0
)
{
mpStackWidget
->
removeWidget
(
widget
);
mTabWidgets
.
remove
(
nWidget
);
widget
->
hide
();
update
();
}
resizeTabs
();
mCurrentTab
=
qMax
(
mCurrentTab
-
1
,
0
);
int
nWidget
=
mTabWidgets
.
indexOf
(
widget
);
if
(
nWidget
>=
0
)
{
mpStackWidget
->
removeWidget
(
widget
);
mTabWidgets
.
remove
(
nWidget
);
widget
->
hide
();
update
();
}
resizeTabs
();
mCurrentTab
=
qMax
(
mCurrentTab
-
1
,
0
);
}
/**
...
...
@@ -410,7 +398,7 @@ void UBDockPalette::removeTab(UBDockPaletteWidget* widget)
*/
void
UBDockPalette
::
onResizeRequest
(
QResizeEvent
*
event
)
{
resizeEvent
(
event
);
resizeEvent
(
event
);
}
/**
...
...
@@ -419,7 +407,7 @@ void UBDockPalette::onResizeRequest(QResizeEvent *event)
*/
int
UBDockPalette
::
tabSpacing
()
{
return
2
;
return
2
;
}
/**
...
...
@@ -428,11 +416,11 @@ int UBDockPalette::tabSpacing()
*/
void
UBDockPalette
::
onShowTabWidget
(
UBDockPaletteWidget
*
widget
)
{
if
(
mRegisteredWidgets
.
contains
(
widget
))
{
widget
->
setVisibleState
(
true
);
addTab
(
widget
);
}
if
(
mRegisteredWidgets
.
contains
(
widget
))
{
widget
->
setVisibleState
(
true
);
addTab
(
widget
);
}
}
/**
...
...
@@ -441,11 +429,11 @@ void UBDockPalette::onShowTabWidget(UBDockPaletteWidget* widget)
*/
void
UBDockPalette
::
onHideTabWidget
(
UBDockPaletteWidget
*
widget
)
{
if
(
mRegisteredWidgets
.
contains
(
widget
))
{
widget
->
setVisibleState
(
false
);
removeTab
(
widget
);
}
if
(
mRegisteredWidgets
.
contains
(
widget
))
{
widget
->
setVisibleState
(
false
);
removeTab
(
widget
);
}
}
/**
...
...
@@ -453,11 +441,11 @@ void UBDockPalette::onHideTabWidget(UBDockPaletteWidget* widget)
*/
void
UBDockPalette
::
connectSignals
()
{
for
(
int
i
=
0
;
i
<
mRegisteredWidgets
.
size
();
i
++
)
{
connect
(
mRegisteredWidgets
.
at
(
i
),
SIGNAL
(
showTab
(
UBDockPaletteWidget
*
)),
this
,
SLOT
(
onShowTabWidget
(
UBDockPaletteWidget
*
)));
connect
(
mRegisteredWidgets
.
at
(
i
),
SIGNAL
(
hideTab
(
UBDockPaletteWidget
*
)),
this
,
SLOT
(
onHideTabWidget
(
UBDockPaletteWidget
*
)));
}
for
(
int
i
=
0
;
i
<
mRegisteredWidgets
.
size
();
i
++
)
{
connect
(
mRegisteredWidgets
.
at
(
i
),
SIGNAL
(
showTab
(
UBDockPaletteWidget
*
)),
this
,
SLOT
(
onShowTabWidget
(
UBDockPaletteWidget
*
)));
connect
(
mRegisteredWidgets
.
at
(
i
),
SIGNAL
(
hideTab
(
UBDockPaletteWidget
*
)),
this
,
SLOT
(
onHideTabWidget
(
UBDockPaletteWidget
*
)));
}
}
/**
...
...
@@ -466,194 +454,194 @@ void UBDockPalette::connectSignals()
*/
void
UBDockPalette
::
registerWidget
(
UBDockPaletteWidget
*
widget
)
{
if
(
!
mRegisteredWidgets
.
contains
(
widget
))
{
// Update the parent of this widget
widget
->
setParent
(
this
);
mRegisteredWidgets
.
append
(
widget
);
if
(
!
mRegisteredWidgets
.
contains
(
widget
))
{
// Update the parent of this widget
widget
->
setParent
(
this
);
mRegisteredWidgets
.
append
(
widget
);
// By default, the widget is hidden
widget
->
hide
();
}
// By default, the widget is hidden
widget
->
hide
();
}
}
/**
* \brief Handles the 'all download finished' notification
*/
* \brief Handles the 'all download finished' notification
*/
void
UBDockPalette
::
onAllDownloadsFinished
()
{
for
(
int
i
=
0
;
i
<
mTabWidgets
.
size
();
i
++
){
UBDockPaletteWidget
*
pW
=
mTabWidgets
.
at
(
i
);
if
(
NULL
!=
pW
&&
mCrntTabWidget
==
pW
->
name
()){
mpStackWidget
->
setCurrentWidget
(
pW
);
}
}
for
(
int
i
=
0
;
i
<
mTabWidgets
.
size
();
i
++
){
UBDockPaletteWidget
*
pW
=
mTabWidgets
.
at
(
i
);
if
(
NULL
!=
pW
&&
mCrntTabWidget
==
pW
->
name
()){
mpStackWidget
->
setCurrentWidget
(
pW
);
}
}
}
void
UBDockPalette
::
moveTabs
()
{
// if (!mHTab) {
if
(
eUBDockTabOrientation_Up
==
mTabsOrientation
)
{
mHTab
=
border
();
}
else
{
mHTab
=
height
()
-
border
()
-
mTabWidgets
.
size
()
*
TABSIZE
-
(
mTabWidgets
.
size
()
-
1
)
*
tabSpacing
();
}
// }
QPoint
origin
(
width
(),
mHTab
+
mTabPalette
->
mVerticalOffset
);
switch
(
mOrientation
)
{
case
eUBDockOrientation_Left
:
origin
.
setX
(
width
());
break
;
case
eUBDockOrientation_Right
:
if
(
parentWidget
())
{
origin
.
setX
(
parentWidget
()
->
width
()
-
width
()
-
border
()
*
2
);
}
break
;
case
eUBDockOrientation_Top
:
;
case
eUBDockOrientation_Bottom
:
;
}
mTabPalette
->
move
(
origin
.
x
(),
origin
.
y
());
// if (!mHTab) {
if
(
eUBDockTabOrientation_Up
==
mTabsOrientation
)
{
mHTab
=
border
();
}
else
{
mHTab
=
height
()
-
border
()
-
mTabWidgets
.
size
()
*
TABSIZE
-
(
mTabWidgets
.
size
()
-
1
)
*
tabSpacing
();
}
// }
QPoint
origin
(
width
(),
mHTab
+
mTabPalette
->
mVerticalOffset
);
switch
(
mOrientation
)
{
case
eUBDockOrientation_Left
:
origin
.
setX
(
width
());
break
;
case
eUBDockOrientation_Right
:
if
(
parentWidget
())
{
origin
.
setX
(
parentWidget
()
->
width
()
-
width
()
-
border
()
*
2
);
}
break
;
case
eUBDockOrientation_Top
:
;
case
eUBDockOrientation_Bottom
:
;
}
mTabPalette
->
move
(
origin
.
x
(),
origin
.
y
());
}
void
UBDockPalette
::
resizeTabs
()
{
int
numTabs
=
mTabWidgets
.
size
();
mTabPalette
->
setFixedSize
(
2
*
border
(),
(
numTabs
*
TABSIZE
)
+
qMax
(
numTabs
-
1
,
0
)
*
tabSpacing
());
int
numTabs
=
mTabWidgets
.
size
();
mTabPalette
->
setFixedSize
(
2
*
border
(),
(
numTabs
*
TABSIZE
)
+
qMax
(
numTabs
-
1
,
0
)
*
tabSpacing
());
}
QRect
UBDockPalette
::
getTabPaletteRect
()
{
QRect
tabsRect
=
mTabPalette
->
rect
();
QPoint
topLeft
=
mTabPalette
->
mapToParent
(
tabsRect
.
topLeft
());
QPoint
bottomRight
=
mTabPalette
->
mapToParent
(
tabsRect
.
bottomRight
());
QRect
tabsRect
=
mTabPalette
->
rect
();
QPoint
topLeft
=
mTabPalette
->
mapToParent
(
tabsRect
.
topLeft
());
QPoint
bottomRight
=
mTabPalette
->
mapToParent
(
tabsRect
.
bottomRight
());
return
QRect
(
topLeft
,
bottomRight
);
return
QRect
(
topLeft
,
bottomRight
);
}
void
UBDockPalette
::
assignParent
(
QWidget
*
widget
)
{
setParent
(
widget
);
mTabPalette
->
setParent
(
widget
);
setParent
(
widget
);
mTabPalette
->
setParent
(
widget
);
}
void
UBDockPalette
::
setVisible
(
bool
visible
)
{
QWidget
::
setVisible
(
visible
);
mTabPalette
->
setVisible
(
visible
);
QWidget
::
setVisible
(
visible
);
mTabPalette
->
setVisible
(
visible
);
}
bool
UBDockPalette
::
switchMode
(
eUBDockPaletteWidgetMode
mode
)
{
bool
hasVisibleElements
=
false
;
//-------------------------------//
// get full right palette widgets list, parse it, show all widgets for BOARD mode, and hide all other
for
(
int
i
=
0
;
i
<
mRegisteredWidgets
.
size
();
i
++
)
{
UBDockPaletteWidget
*
pNextWidget
=
mRegisteredWidgets
.
at
(
i
);
if
(
pNextWidget
!=
NULL
)
{
if
(
pNextWidget
->
visibleInMode
(
mode
)
)
{
addTab
(
pNextWidget
);
hasVisibleElements
=
true
;
}
else
{
removeTab
(
pNextWidget
);
}
}
}
//-------------------------------//
if
(
mRegisteredWidgets
.
size
()
>
0
)
showTabWidget
(
0
);
update
();
return
hasVisibleElements
;
bool
hasVisibleElements
=
false
;
//-------------------------------//
// get full right palette widgets list, parse it, show all widgets for BOARD mode, and hide all other
for
(
int
i
=
0
;
i
<
mRegisteredWidgets
.
size
();
i
++
)
{
UBDockPaletteWidget
*
pNextWidget
=
mRegisteredWidgets
.
at
(
i
);
if
(
pNextWidget
!=
NULL
)
{
if
(
pNextWidget
->
visibleInMode
(
mode
)
)
{
addTab
(
pNextWidget
);
hasVisibleElements
=
true
;
}
else
{
removeTab
(
pNextWidget
);
}
}
}
//-------------------------------//
if
(
mRegisteredWidgets
.
size
()
>
0
)
showTabWidget
(
0
);
update
();
return
hasVisibleElements
;
}
UBTabDockPalette
::
UBTabDockPalette
(
UBDockPalette
*
dockPalette
,
QWidget
*
parent
)
:
QWidget
(
parent
)
,
dock
(
dockPalette
)
,
mVerticalOffset
(
0
)
,
mFlotable
(
false
)
QWidget
(
parent
)
,
dock
(
dockPalette
)
,
mVerticalOffset
(
0
)
,
mFlotable
(
false
)
{
int
numTabs
=
dock
->
mTabWidgets
.
size
();
resize
(
2
*
dock
->
border
(),
(
numTabs
*
TABSIZE
)
+
qMax
(
numTabs
-
1
,
0
)
*
dock
->
tabSpacing
());
int
numTabs
=
dock
->
mTabWidgets
.
size
();
resize
(
2
*
dock
->
border
(),
(
numTabs
*
TABSIZE
)
+
qMax
(
numTabs
-
1
,
0
)
*
dock
->
tabSpacing
());
setAttribute
(
Qt
::
WA_TranslucentBackground
);
setAttribute
(
Qt
::
WA_TranslucentBackground
);
}
void
UBTabDockPalette
::
paintEvent
(
QPaintEvent
*
)
{
int
nTabs
=
dock
->
mTabWidgets
.
size
();
if
(
nTabs
<=
0
)
{
qDebug
()
<<
"not enough tabs"
;
return
;
}
QPainter
painter
(
this
);
painter
.
setRenderHint
(
QPainter
::
Antialiasing
);
painter
.
setPen
(
Qt
::
NoPen
);
painter
.
setBrush
(
dock
->
mBackgroundBrush
);
int
yFrom
=
0
;
for
(
int
i
=
0
;
i
<
nTabs
;
i
++
)
{
UBDockPaletteWidget
*
pCrntWidget
=
dock
->
mTabWidgets
.
at
(
i
);
QPainterPath
path
;
path
.
setFillRule
(
Qt
::
WindingFill
);
QPixmap
iconPixmap
;
switch
(
dock
->
mOrientation
)
{
case
eUBDockOrientation_Left
:
path
.
addRect
(
0
,
yFrom
,
width
()
/
2
,
TABSIZE
);
path
.
addRoundedRect
(
0
,
yFrom
,
width
(),
TABSIZE
,
dock
->
radius
(),
dock
->
radius
());
if
(
pCrntWidget
)
{
if
(
dock
->
mCollapseWidth
>=
dock
->
width
())
{
// Get the collapsed icon
iconPixmap
=
pCrntWidget
->
iconToRight
();
}
else
{
// Get the expanded icon
iconPixmap
=
pCrntWidget
->
iconToLeft
();
}
}
break
;
case
eUBDockOrientation_Right
:
path
.
addRect
(
width
()
/
2
,
yFrom
,
width
()
/
2
,
TABSIZE
);
path
.
addRoundedRect
(
0
,
yFrom
,
width
(),
TABSIZE
,
dock
->
radius
(),
dock
->
radius
());
if
(
pCrntWidget
)
{
if
(
dock
->
mCollapseWidth
>=
dock
->
width
())
{
// Get the collapsed icon
iconPixmap
=
pCrntWidget
->
iconToLeft
();
}
else
{
// Get the expanded icon
iconPixmap
=
pCrntWidget
->
iconToRight
();
}
}
break
;
case
eUBDockOrientation_Top
:
;
case
eUBDockOrientation_Bottom
:
;
default
:
break
;
}
painter
.
save
();
QPixmap
transparencyPix
(
":/images/tab_mask.png"
);
if
(
dock
->
mCurrentTab
!=
i
)
{
iconPixmap
.
setAlphaChannel
(
transparencyPix
);
QColor
color
(
0x7F
,
0x7F
,
0x7F
,
0x3F
);
painter
.
setBrush
(
QBrush
(
color
));
}
painter
.
drawPath
(
path
);
painter
.
drawPixmap
(
2
,
yFrom
+
2
,
width
()
-
4
,
TABSIZE
-
4
,
iconPixmap
);
yFrom
+=
(
TABSIZE
+
dock
->
tabSpacing
());
painter
.
restore
();
}
int
nTabs
=
dock
->
mTabWidgets
.
size
();
if
(
nTabs
<=
0
)
{
qDebug
()
<<
"not enough tabs"
;
return
;
}
QPainter
painter
(
this
);
painter
.
setRenderHint
(
QPainter
::
Antialiasing
);
painter
.
setPen
(
Qt
::
NoPen
);
painter
.
setBrush
(
dock
->
mBackgroundBrush
);
int
yFrom
=
0
;
for
(
int
i
=
0
;
i
<
nTabs
;
i
++
)
{
UBDockPaletteWidget
*
pCrntWidget
=
dock
->
mTabWidgets
.
at
(
i
);
QPainterPath
path
;
path
.
setFillRule
(
Qt
::
WindingFill
);
QPixmap
iconPixmap
;
switch
(
dock
->
mOrientation
)
{
case
eUBDockOrientation_Left
:
path
.
addRect
(
0
,
yFrom
,
width
()
/
2
,
TABSIZE
);
path
.
addRoundedRect
(
0
,
yFrom
,
width
(),
TABSIZE
,
dock
->
radius
(),
dock
->
radius
());
if
(
pCrntWidget
)
{
if
(
dock
->
mCollapseWidth
>=
dock
->
width
())
{
// Get the collapsed icon
iconPixmap
=
pCrntWidget
->
iconToRight
();
}
else
{
// Get the expanded icon
iconPixmap
=
pCrntWidget
->
iconToLeft
();
}
}
break
;
case
eUBDockOrientation_Right
:
path
.
addRect
(
width
()
/
2
,
yFrom
,
width
()
/
2
,
TABSIZE
);
path
.
addRoundedRect
(
0
,
yFrom
,
width
(),
TABSIZE
,
dock
->
radius
(),
dock
->
radius
());
if
(
pCrntWidget
)
{
if
(
dock
->
mCollapseWidth
>=
dock
->
width
())
{
// Get the collapsed icon
iconPixmap
=
pCrntWidget
->
iconToLeft
();
}
else
{
// Get the expanded icon
iconPixmap
=
pCrntWidget
->
iconToRight
();
}
}
break
;
case
eUBDockOrientation_Top
:
;
case
eUBDockOrientation_Bottom
:
;
default
:
break
;
}
painter
.
save
();
QPixmap
transparencyPix
(
":/images/tab_mask.png"
);
if
(
dock
->
mCurrentTab
!=
i
)
{
iconPixmap
.
setAlphaChannel
(
transparencyPix
);
QColor
color
(
0x7F
,
0x7F
,
0x7F
,
0x3F
);
painter
.
setBrush
(
QBrush
(
color
));
}
painter
.
drawPath
(
path
);
painter
.
drawPixmap
(
2
,
yFrom
+
2
,
width
()
-
4
,
TABSIZE
-
4
,
iconPixmap
);
yFrom
+=
(
TABSIZE
+
dock
->
tabSpacing
());
painter
.
restore
();
}
}
UBTabDockPalette
::~
UBTabDockPalette
()
{
...
...
@@ -661,97 +649,97 @@ UBTabDockPalette::~UBTabDockPalette()
void
UBTabDockPalette
::
mousePressEvent
(
QMouseEvent
*
event
)
{
dock
->
mClickTime
=
QTime
::
currentTime
();
// The goal here is to verify if the user can resize the widget.
// It is only possible to resize it if the border is selected
QPoint
p
=
event
->
pos
();
dock
->
mMousePressPos
=
p
;
dock
->
mResized
=
false
;
switch
(
dock
->
mOrientation
)
{
case
eUBDockOrientation_Left
:
dock
->
mCanResize
=
true
;
break
;
case
eUBDockOrientation_Right
:
dock
->
mCanResize
=
true
;
break
;
case
eUBDockOrientation_Top
:
// Not supported yet
break
;
case
eUBDockOrientation_Bottom
:
// Not supported yet
break
;
default
:
break
;
}
dock
->
mClickTime
=
QTime
::
currentTime
();
// The goal here is to verify if the user can resize the widget.
// It is only possible to resize it if the border is selected
QPoint
p
=
event
->
pos
();
dock
->
mMousePressPos
=
p
;
dock
->
mResized
=
false
;
switch
(
dock
->
mOrientation
)
{
case
eUBDockOrientation_Left
:
dock
->
mCanResize
=
true
;
break
;
case
eUBDockOrientation_Right
:
dock
->
mCanResize
=
true
;
break
;
case
eUBDockOrientation_Top
:
// Not supported yet
break
;
case
eUBDockOrientation_Bottom
:
// Not supported yet
break
;
default
:
break
;
}
}
void
UBTabDockPalette
::
mouseMoveEvent
(
QMouseEvent
*
event
)
{
QPoint
p
=
event
->
pos
();
if
(
dock
->
mCanResize
&&
((
dock
->
mMousePressPos
-
p
).
manhattanLength
()
>
QApplication
::
startDragDistance
()))
{
if
(
qAbs
(
dock
->
mMousePressPos
.
y
()
-
p
.
y
())
>
10
&&
mFlotable
)
{
qDebug
()
<<
"y differences"
<<
dock
->
mMousePressPos
.
y
()
<<
p
.
y
();
mVerticalOffset
+=
p
.
y
()
-
dock
->
mMousePressPos
.
y
();
move
(
this
->
pos
().
x
(),
p
.
y
());
}
switch
(
dock
->
mOrientation
)
{
case
eUBDockOrientation_Left
:
p
.
setX
(
p
.
x
()
+
dock
->
width
());
if
(
p
.
x
()
<
dock
->
collapseWidth
()
&&
p
.
x
()
>=
dock
->
minimumWidth
())
{
dock
->
resize
(
0
,
dock
->
height
());
dock
->
mLastWidth
=
dock
->
collapseWidth
()
+
1
;
dock
->
mResized
=
true
;
}
else
if
(
p
.
x
()
<=
dock
->
maximumWidth
()
&&
p
.
x
()
>=
dock
->
minimumWidth
())
{
dock
->
resize
(
p
.
x
(),
dock
->
height
());
dock
->
mResized
=
true
;
}
break
;
case
eUBDockOrientation_Right
:
p
.
setX
(
p
.
x
()
-
2
*
dock
->
border
());
if
((
dock
->
x
()
+
p
.
x
()
>
dock
->
parentWidget
()
->
width
()
-
dock
->
collapseWidth
())
&&
(
dock
->
x
()
+
p
.
x
()
<
dock
->
parentWidget
()
->
width
()))
{
dock
->
resize
(
0
,
dock
->
height
());
dock
->
mLastWidth
=
dock
->
collapseWidth
()
+
1
;
dock
->
mResized
=
true
;
}
else
if
((
dock
->
x
()
+
p
.
x
()
>=
dock
->
parentWidget
()
->
width
()
-
dock
->
maximumWidth
())
&&
(
dock
->
x
()
+
p
.
x
()
<=
dock
->
parentWidget
()
->
width
()
-
dock
->
minimumWidth
()))
{
dock
->
resize
(
dock
->
parentWidget
()
->
width
()
-
(
dock
->
x
()
+
p
.
x
()),
dock
->
height
());
dock
->
mResized
=
true
;
}
break
;
case
eUBDockOrientation_Top
:
case
eUBDockOrientation_Bottom
:
if
(
p
.
y
()
<=
dock
->
maximumHeight
())
{
dock
->
resize
(
width
(),
p
.
y
());
dock
->
mResized
=
true
;
}
break
;
default
:
break
;
}
}
QPoint
p
=
event
->
pos
();
if
(
dock
->
mCanResize
&&
((
dock
->
mMousePressPos
-
p
).
manhattanLength
()
>
QApplication
::
startDragDistance
()))
{
if
(
qAbs
(
dock
->
mMousePressPos
.
y
()
-
p
.
y
())
>
10
&&
mFlotable
)
{
qDebug
()
<<
"y differences"
<<
dock
->
mMousePressPos
.
y
()
<<
p
.
y
();
mVerticalOffset
+=
p
.
y
()
-
dock
->
mMousePressPos
.
y
();
move
(
this
->
pos
().
x
(),
p
.
y
());
}
switch
(
dock
->
mOrientation
)
{
case
eUBDockOrientation_Left
:
p
.
setX
(
p
.
x
()
+
dock
->
width
());
if
(
p
.
x
()
<
dock
->
collapseWidth
()
&&
p
.
x
()
>=
dock
->
minimumWidth
())
{
dock
->
resize
(
0
,
dock
->
height
());
//
dock->mLastWidth = dock->collapseWidth() + 1;
dock
->
mResized
=
true
;
}
else
if
(
p
.
x
()
<=
dock
->
maximumWidth
()
&&
p
.
x
()
>=
dock
->
minimumWidth
())
{
dock
->
resize
(
p
.
x
(),
dock
->
height
());
dock
->
mResized
=
true
;
}
break
;
case
eUBDockOrientation_Right
:
p
.
setX
(
p
.
x
()
-
2
*
dock
->
border
());
if
((
dock
->
x
()
+
p
.
x
()
>
dock
->
parentWidget
()
->
width
()
-
dock
->
collapseWidth
())
&&
(
dock
->
x
()
+
p
.
x
()
<
dock
->
parentWidget
()
->
width
()))
{
dock
->
resize
(
0
,
dock
->
height
());
//
dock->mLastWidth = dock->collapseWidth() + 1;
dock
->
mResized
=
true
;
}
else
if
((
dock
->
x
()
+
p
.
x
()
>=
dock
->
parentWidget
()
->
width
()
-
dock
->
maximumWidth
())
&&
(
dock
->
x
()
+
p
.
x
()
<=
dock
->
parentWidget
()
->
width
()
-
dock
->
minimumWidth
()))
{
dock
->
resize
(
dock
->
parentWidget
()
->
width
()
-
(
dock
->
x
()
+
p
.
x
()),
dock
->
height
());
dock
->
mResized
=
true
;
}
break
;
case
eUBDockOrientation_Top
:
case
eUBDockOrientation_Bottom
:
if
(
p
.
y
()
<=
dock
->
maximumHeight
())
{
dock
->
resize
(
width
(),
p
.
y
());
dock
->
mResized
=
true
;
}
break
;
default
:
break
;
}
}
}
void
UBTabDockPalette
::
mouseReleaseEvent
(
QMouseEvent
*
event
)
{
Q_UNUSED
(
event
);
if
(
!
dock
->
mResized
&&
dock
->
mClickTime
.
elapsed
()
<
CLICKTIME
)
{
int
nbTabs
=
dock
->
mTabWidgets
.
size
();
int
clickedTab
=
0
;
// If the clicked position is in the tab, perform the related action
if
(
dock
->
mMousePressPos
.
x
()
>=
0
&&
dock
->
mMousePressPos
.
x
()
<=
width
()
&&
dock
->
mMousePressPos
.
y
()
>=
0
&&
dock
->
mMousePressPos
.
y
()
<=
nbTabs
*
TABSIZE
+
(
nbTabs
-
1
)
*
dock
->
tabSpacing
())
{
clickedTab
=
(
dock
->
mMousePressPos
.
y
())
/
(
TABSIZE
+
dock
->
tabSpacing
());
dock
->
tabClicked
(
clickedTab
);
}
}
dock
->
mCanResize
=
false
;
Q_UNUSED
(
event
);
if
(
!
dock
->
mResized
&&
dock
->
mClickTime
.
elapsed
()
<
CLICKTIME
)
{
int
nbTabs
=
dock
->
mTabWidgets
.
size
();
int
clickedTab
=
0
;
// If the clicked position is in the tab, perform the related action
if
(
dock
->
mMousePressPos
.
x
()
>=
0
&&
dock
->
mMousePressPos
.
x
()
<=
width
()
&&
dock
->
mMousePressPos
.
y
()
>=
0
&&
dock
->
mMousePressPos
.
y
()
<=
nbTabs
*
TABSIZE
+
(
nbTabs
-
1
)
*
dock
->
tabSpacing
())
{
clickedTab
=
(
dock
->
mMousePressPos
.
y
())
/
(
TABSIZE
+
dock
->
tabSpacing
());
dock
->
tabClicked
(
clickedTab
);
}
}
dock
->
mCanResize
=
false
;
}
src/gui/UBLeftPalette.cpp
View file @
d822dc73
...
...
@@ -29,7 +29,10 @@ UBLeftPalette::UBLeftPalette(QWidget *parent, const char *name):
mLastWidth
=
UBSettings
::
settings
()
->
leftLibPaletteWidth
->
get
().
toInt
();
mCollapseWidth
=
150
;
resize
(
mLastWidth
,
parentWidget
()
->
height
());
if
(
UBSettings
::
settings
()
->
leftLibPaletteIsCollapsed
->
get
().
toBool
())
resize
(
0
,
parentWidget
()
->
height
());
else
resize
(
mLastWidth
,
parentWidget
()
->
height
());
}
/**
...
...
@@ -54,6 +57,9 @@ void UBLeftPalette::updateMaxWidth()
*/
void
UBLeftPalette
::
resizeEvent
(
QResizeEvent
*
event
)
{
UBSettings
::
settings
()
->
leftLibPaletteWidth
->
set
(
width
());
int
newWidth
=
width
();
if
(
newWidth
>
mCollapseWidth
)
UBSettings
::
settings
()
->
leftLibPaletteWidth
->
set
(
newWidth
);
UBSettings
::
settings
()
->
leftLibPaletteIsCollapsed
->
set
(
newWidth
==
0
);
UBDockPalette
::
resizeEvent
(
event
);
}
src/gui/UBNavigatorPalette.cpp
View file @
d822dc73
...
...
@@ -33,8 +33,6 @@ UBNavigatorPalette::UBNavigatorPalette(QWidget *parent, const char *name):
{
setOrientation
(
eUBDockOrientation_Left
);
setMaximumWidth
(
300
);
//mCollapsedIcon = QPixmap(":images/pages_open.png");
//mIcon = QPixmap(":images/pages_close.png");
resize
(
UBSettings
::
settings
()
->
navigPaletteWidth
->
get
().
toInt
(),
height
());
mLastWidth
=
300
;
...
...
src/gui/UBRightPalette.cpp
View file @
d822dc73
...
...
@@ -27,11 +27,13 @@ UBRightPalette::UBRightPalette(QWidget *parent, const char *name):
{
setObjectName
(
name
);
setOrientation
(
eUBDockOrientation_Right
);
mLastWidth
=
UBSettings
::
settings
()
->
rightLibPaletteWidth
->
get
().
toInt
();
mCollapseWidth
=
150
;
resize
(
mLastWidth
,
parentWidget
()
->
height
());
mLastWidth
=
UBSettings
::
settings
()
->
rightLibPaletteWidth
->
get
().
toInt
();
if
(
UBSettings
::
settings
()
->
rightLibPaletteIsCollapsed
->
get
().
toBool
())
resize
(
0
,
parentWidget
()
->
height
());
else
resize
(
mLastWidth
,
parentWidget
()
->
height
());
}
/**
...
...
@@ -59,8 +61,11 @@ void UBRightPalette::mouseMoveEvent(QMouseEvent *event)
*/
void
UBRightPalette
::
resizeEvent
(
QResizeEvent
*
event
)
{
int
newWidth
=
width
();
if
(
newWidth
>
mCollapseWidth
)
UBSettings
::
settings
()
->
rightLibPaletteWidth
->
set
(
newWidth
);
UBSettings
::
settings
()
->
rightLibPaletteIsCollapsed
->
set
(
newWidth
==
0
);
UBDockPalette
::
resizeEvent
(
event
);
UBSettings
::
settings
()
->
rightLibPaletteWidth
->
set
(
width
());
emit
resized
();
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment