Re: [pgadmin-hackers] [pgAdmin4][Patch]: Added the shortcut (CTRL + 0) to reset the zoom level in runtime

2017-06-13 Thread Khushboo Vashi
On Tue, Jun 13, 2017 at 2:52 PM, Dave Page  wrote:

> Nice work! Committed (along with an update to the docs).
>
> Congratulations on your first C++ patch :-)
>
> Thanks Dave. :)

> On Tue, Jun 13, 2017 at 7:07 AM, Khushboo Vashi
>  wrote:
> > Hi,
> >
> > On Mon, Jun 12, 2017 at 5:27 PM, Dave Page  wrote:
> >>
> >> Hi
> >>
> >> On Mon, Jun 12, 2017 at 5:33 AM, Khushboo Vashi
> >>  wrote:
> >> > Hi,
> >> >
> >> > Please find the attached patch to reset the zoom level in the desktop
> >> > runtime.
> >> >
> >> > Added the new shortcut CTRL + 0 to reset the zoom level.
> >>
> >> The code looks good, however I don't think resetting to the startup
> >> value is really what we want. Shouldn't it reset it to 1.0?
> >>
> > I have changed the code.
> > Also, introduced a single slot for Zoom In/Out/Reset rather than 3
> > different.
> >>
> >> --
> >> Dave Page
> >> Blog: http://pgsnake.blogspot.com
> >> Twitter: @pgsnake
> >>
> >> EnterpriseDB UK: http://www.enterprisedb.com
> >> The Enterprise PostgreSQL Company
> >
> >
>
>
>
> --
> Dave Page
> Blog: http://pgsnake.blogspot.com
> Twitter: @pgsnake
>
> EnterpriseDB UK: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>


Re: [pgadmin-hackers] [pgAdmin4][Patch]: Added the shortcut (CTRL + 0) to reset the zoom level in runtime

2017-06-13 Thread Dave Page
Nice work! Committed (along with an update to the docs).

Congratulations on your first C++ patch :-)

On Tue, Jun 13, 2017 at 7:07 AM, Khushboo Vashi
 wrote:
> Hi,
>
> On Mon, Jun 12, 2017 at 5:27 PM, Dave Page  wrote:
>>
>> Hi
>>
>> On Mon, Jun 12, 2017 at 5:33 AM, Khushboo Vashi
>>  wrote:
>> > Hi,
>> >
>> > Please find the attached patch to reset the zoom level in the desktop
>> > runtime.
>> >
>> > Added the new shortcut CTRL + 0 to reset the zoom level.
>>
>> The code looks good, however I don't think resetting to the startup
>> value is really what we want. Shouldn't it reset it to 1.0?
>>
> I have changed the code.
> Also, introduced a single slot for Zoom In/Out/Reset rather than 3
> different.
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>
>



-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


-- 
Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers


Re: [pgadmin-hackers] [pgAdmin4][Patch]: Added the shortcut (CTRL + 0) to reset the zoom level in runtime

2017-06-13 Thread Khushboo Vashi
Hi,

On Mon, Jun 12, 2017 at 5:27 PM, Dave Page  wrote:

> Hi
>
> On Mon, Jun 12, 2017 at 5:33 AM, Khushboo Vashi
>  wrote:
> > Hi,
> >
> > Please find the attached patch to reset the zoom level in the desktop
> > runtime.
> >
> > Added the new shortcut CTRL + 0 to reset the zoom level.
>
> The code looks good, however I don't think resetting to the startup
> value is really what we want. Shouldn't it reset it to 1.0?
>
> I have changed the code.
Also, introduced a single slot for Zoom In/Out/Reset rather than 3
different.

> --
> Dave Page
> Blog: http://pgsnake.blogspot.com
> Twitter: @pgsnake
>
> EnterpriseDB UK: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>
diff --git a/runtime/BrowserWindow.cpp b/runtime/BrowserWindow.cpp
index 516b868..b04396d 100644
--- a/runtime/BrowserWindow.cpp
+++ b/runtime/BrowserWindow.cpp
@@ -197,6 +197,8 @@ void BrowserWindow::createActions()
 exitShortcut->setContext(Qt::ApplicationShortcut);
 connect(exitShortcut, SIGNAL(activated()), this, SLOT(close()));
 
+signalMapper = new QSignalMapper(this);
+
 // About box
 aboutShortcut = new QShortcut(QKeySequence(Qt::ALT + Qt::SHIFT + Qt::Key_A), this);
 aboutShortcut->setContext(Qt::ApplicationShortcut);
@@ -205,12 +207,23 @@ void BrowserWindow::createActions()
 // Zoom in
 zoomInShortcut = new QShortcut(QKeySequence(QKeySequence::ZoomIn), this);
 zoomInShortcut->setContext(Qt::ApplicationShortcut);
-connect(zoomInShortcut, SIGNAL(activated()), this, SLOT(zoomIn()));
+signalMapper->setMapping(zoomInShortcut, 1);
+connect(zoomInShortcut, SIGNAL(activated()), signalMapper, SLOT(map()));
 
 // Zoom out
 zoomOutShortcut = new QShortcut(QKeySequence(QKeySequence::ZoomOut), this);
 zoomOutShortcut->setContext(Qt::ApplicationShortcut);
-connect(zoomOutShortcut, SIGNAL(activated()), this, SLOT(zoomOut()));
+signalMapper->setMapping(zoomOutShortcut, -1);
+connect(zoomOutShortcut, SIGNAL(activated()), signalMapper,  SLOT(map()));
+
+// Reset Zoom
+zoomResetShortcut = new QShortcut(QKeySequence(Qt::CTRL + Qt::Key_0), this);
+zoomResetShortcut->setContext(Qt::ApplicationShortcut);
+signalMapper->setMapping(zoomResetShortcut,  0);
+connect(zoomResetShortcut, SIGNAL(activated()), signalMapper,  SLOT(map()));
+
+connect(signalMapper, SIGNAL(mapped(int)), this, SLOT(setZoomLevel(int)));
+
 
 #ifdef __APPLE__
   #ifdef PGADMIN4_USE_WEBENGINE
@@ -1186,8 +1199,8 @@ void BrowserWindow::about()
 }
 
 
-// Zoom in
-void BrowserWindow::zoomIn()
+// Set Zoom Level
+void BrowserWindow::setZoomLevel(int zoomFlag)
 {
 int tabCount = 0;
 WebViewWindow *webviewPtr = NULL;
@@ -1209,55 +1222,27 @@ void BrowserWindow::zoomIn()
 
 if (webviewPtr != NULL)
 {
-webviewPtr->setZoomFactor(m_mainWebView->zoomFactor() + 0.1);
+if (zoomFlag == 1) {
+ webviewPtr->setZoomFactor(m_mainWebView->zoomFactor() + 0.1);
+}
+else if (zoomFlag == -1) {
+webviewPtr->setZoomFactor(m_mainWebView->zoomFactor() - 0.1);
+}
+else if(zoomFlag == 0) {
+webviewPtr->setZoomFactor(1.0);
+}
 }
 }
 }
 }
 }
 
-// Save the zoom factor for next time
+// Set the zoom value for the next time
 QSettings settings;
 settings.setValue("Browser/Zoom", m_mainWebView->zoomFactor());
-}
-
-
-// Zoom out
-void BrowserWindow::zoomOut()
-{
-int tabCount = 0;
-WebViewWindow *webviewPtr = NULL;
-
-// Loop through all the tabs
-for (tabCount = 0; tabCount < m_tabWidget->count(); tabCount++)
-{
-QWidget *tab = m_tabWidget->widget(tabCount);
-if (tab != NULL)
-{
-// Find and loop through any child controls
-QList widgetList = tab->findChildren();
-foreach( QWidget* widgetPtr, widgetList )
-{
-if (widgetPtr != NULL)
-{
-// If it's a web view control, set the zoom level based on the main view
-webviewPtr = dynamic_cast(widgetPtr);
-
-if (webviewPtr != NULL)
-{
-webviewPtr->setZoomFactor(m_mainWebView->zoomFactor() - 0.1);
-}
-}
-}
-}
-}
 
-// Save the zoom factor for next time
-QSettings settings;
-settings.setValue("Browser/Zoom", m_mainWebView->zoomFactor());
 }
 
-
 // Open an arbitrary URL
 void BrowserWindow::openUrl()
 {
diff --git a/runtime/BrowserWindow.h b/runtime/BrowserWindow.h
index 1465a48..9d2febd 100644
--- a/runtime/BrowserWindow.h
+++ 

Re: [pgadmin-hackers] [pgAdmin4][Patch]: Added the shortcut (CTRL + 0) to reset the zoom level in runtime

2017-06-12 Thread Dave Page
Hi

On Mon, Jun 12, 2017 at 5:33 AM, Khushboo Vashi
 wrote:
> Hi,
>
> Please find the attached patch to reset the zoom level in the desktop
> runtime.
>
> Added the new shortcut CTRL + 0 to reset the zoom level.

The code looks good, however I don't think resetting to the startup
value is really what we want. Shouldn't it reset it to 1.0?

-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


-- 
Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers