Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision

Target

Select target project
  • xmonader/gambas
  • gambas/gambas
  • gbWilly/gambas
  • dtardon/gambas
  • Davidmue/gambas
  • mmu_man/gambas
  • jguardon/gambas
  • tstueker/gambas
  • timsoft/gambas
  • yann64/gambas
  • Matthew-Collins/gambas
  • microhobby/gambas
  • ercoupeflyer/gambas
  • pebauer68/gambas
  • ptmarstech/gambas
  • christhal/gambas
  • tboege/gambas
  • christopherwoo/gambas
  • yusronarif/gambas
  • gen.braga/gambas
  • MelvinG24/gambas
  • Krischel/gambas
  • liang-wei/gambas
  • brucebruen/gambas
  • LibreDWG/gambas
  • SkyN9ne/gambas
  • zxMarce/gambas
  • lordheavy/gambas
  • ddabrahams76/gambas
  • GianluigiOr/gambas
  • rfc1394/gambas
  • wekan/gambas
  • bsteers4/gambas
  • fweimer-rh/gambas
  • CDCDCDCDCDCD/gambas
  • geekdu42/gambas
  • belmotek/gambas
  • jfrank1500/gambas
  • mfischerq/gambas
  • shiny0110/gambas
  • kk667788/gambas
  • bandali/gambas
  • 64sys/gambas
  • justlostintime/gambas
  • aleasto/gambas
  • bgermann/gambas
  • linusky/gambas
47 results
Select Git revision
Show changes
Commits on Source (3)
......@@ -526,11 +526,11 @@ Public Sub DrawingArea_KeyPress()
If Key.Code = Key.Space Then
$bPressed = True
$hDrawingArea.Refresh
Else If Key.Code = Key.Tab Then
If $hButton Then
Try Me.Next.SetFocus
Stop Event
Endif
' Else If Key.Code = Key.Tab Then
' If $hButton Then
' Try Me.Next.SetFocus
' Stop Event
' Endif
Endif
End
......
......@@ -41,7 +41,7 @@ End
Public Sub Form_Open()
MaskBox1.Text = " 30.35"
MaskBox1.Text = 30
End
......
......@@ -2882,6 +2882,7 @@ GtkIMContext *gControl::getInputMethod()
gControl *gControl::nextFocus()
{
gControl *ctrl;
gControl *next_ctrl;
//fprintf(stderr, "next: %s\n", name());
......@@ -2897,21 +2898,18 @@ gControl *gControl::nextFocus()
ctrl = this;
while (!ctrl->next())
for(;;)
{
next_ctrl = ctrl->next();
if (next_ctrl)
return next_ctrl;
ctrl = ctrl->parent();
//fprintf(stderr, "... %s\n", ctrl->name());
if (ctrl->isTopLevel())
{
ctrl = ctrl->nextFocus();
//fprintf(stderr, "==> %s\n", ctrl->name());
return ctrl;
}
if (!ctrl)
return NULL;
/*if (!ctrl->parent())
return ctrl->nextFocus();*/
}
ctrl = ctrl->next();
//fprintf(stderr, "==> %s\n", ctrl->name());
return ctrl;
}
gControl *gControl::previousFocus()
......
......@@ -909,6 +909,8 @@ void gMainWindow::setVisible(bool vl)
for(;;)
{
ctrl = ctrl->nextFocus();
if (!ctrl)
break;
if (ctrl->isReallyVisible() && ctrl->isEnabled() && ctrl->canFocus())
{
......
......@@ -93,13 +93,14 @@ gboolean gcb_focus(GtkWidget *widget, GtkDirectionType direction, gControl *data
for(;;)
{
//fprintf(stderr, "cb_focus: %s / %d %d\n", ctrl->name(), ctrl->isEnabled(), ctrl->canFocus());
if (direction == GTK_DIR_TAB_FORWARD)
ctrl = ctrl->nextFocus();
else
ctrl = ctrl->previousFocus();
if (!ctrl)
break;
if (ctrl->isReallyVisible() && ctrl->isEnabled() && ctrl->canFocus() && !ctrl->isNoTabFocus())
{
//fprintf(stderr, "cb_focus: --> %s\n", ctrl->name());
......
......@@ -25,24 +25,24 @@
#include "gambas.h"
#include "watcher.h"
//#define DEBUG_ME 1
static WATCH **watch = NULL;
static gboolean watch_adaptor(GIOChannel *source, GIOCondition condition, gpointer param)
{
WATCH *data = (WATCH *)param;
//fprintf(stderr, "watch_adaptor: %p: condition = %d, data = %p\n", source, (int)condition, (void *)param);
#if DEBUG_ME
fprintf(stderr, "watch_adaptor: %p: condition = %d, data = %p\n", source, (int)condition, (void *)param);
#endif
if (!data) return true;
switch (condition)
{
case G_IO_IN:
(*data->callback_read)(data->fd, GB_WATCH_READ, data->param_read); break;
case G_IO_OUT:
(*data->callback_write)(data->fd, GB_WATCH_WRITE, data->param_write); break;
default: break;
}
if (condition & G_IO_IN)
(*data->callback_read)(data->fd, GB_WATCH_READ, data->param_read);
else if (condition & G_IO_OUT)
(*data->callback_write)(data->fd, GB_WATCH_WRITE, data->param_write);
return true;
}
......@@ -102,7 +102,9 @@ void CWatcher::Add(int fd, int type, void *callback, intptr_t param)
if (data->callback_read && (type == GB_WATCH_NONE || type == GB_WATCH_READ))
{
//fprintf(stderr, "remove watch on fd %d for read (%p)\n", data->fd, data->channel_read);
#if DEBUG_ME
fprintf(stderr, "remove watch on fd %d for read (%p)\n", data->fd, data->channel_read);
#endif
g_source_remove(data->id_read);
g_io_channel_unref(data->channel_read);
data->callback_read = 0;
......@@ -111,7 +113,9 @@ void CWatcher::Add(int fd, int type, void *callback, intptr_t param)
if (data->callback_write && (type == GB_WATCH_NONE || type == GB_WATCH_WRITE))
{
//fprintf(stderr, "remove watch on fd %d for read (%p)\n", data->fd, data->channel_write);
#if DEBUG_ME
fprintf(stderr, "remove watch on fd %d for read (%p)\n", data->fd, data->channel_write);
#endif
g_source_remove(data->id_write);
g_io_channel_unref(data->channel_write);
data->callback_write = 0;
......@@ -126,8 +130,11 @@ void CWatcher::Add(int fd, int type, void *callback, intptr_t param)
data->param_read = param;
data->channel_read = g_io_channel_unix_new(fd);
g_io_channel_set_encoding(data->channel_read, NULL, NULL);
data->id_read = g_io_add_watch_full(data->channel_read, G_PRIORITY_LOW, G_IO_IN, watch_adaptor, (void*)data, NULL);
//fprintf(stderr, "add watch on fd %d for read (%p)\n", fd, data->channel_read);
g_io_channel_set_buffered(data->channel_read, FALSE);
data->id_read = g_io_add_watch_full(data->channel_read, G_PRIORITY_DEFAULT, G_IO_IN, watch_adaptor, (void*)data, NULL);
#if DEBUG_ME
fprintf(stderr, "add watch on fd %d for read (%p)\n", fd, data->channel_read);
#endif
}
else if (type == GB_WATCH_WRITE)
{
......@@ -135,8 +142,11 @@ void CWatcher::Add(int fd, int type, void *callback, intptr_t param)
data->param_write = param;
data->channel_write = g_io_channel_unix_new(fd);
g_io_channel_set_encoding(data->channel_write, NULL, NULL);
data->id_write = g_io_add_watch_full(data->channel_write, G_PRIORITY_LOW, G_IO_OUT, watch_adaptor, (void*)data, NULL);
//fprintf(stderr, "add watch on fd %d for write (%p)\n", fd, data->channel_write);
g_io_channel_set_buffered(data->channel_write, FALSE);
data->id_write = g_io_add_watch_full(data->channel_write, G_PRIORITY_DEFAULT, G_IO_OUT, watch_adaptor, (void*)data, NULL);
#if DEBUG_ME
fprintf(stderr, "add watch on fd %d for write (%p)\n", fd, data->channel_write);
#endif
}
}
......
......@@ -525,8 +525,6 @@ static void run_process(CPROCESS *process, int mode, void *cmd, CARRAY *env)
// for virtual terminal
int fd_master = -1;
char *slave = NULL;
//struct termios termios_stdin;
//struct termios termios_check;
struct termios termios_master;
const char *exec;
......@@ -610,17 +608,14 @@ static void run_process(CPROCESS *process, int mode, void *cmd, CARRAY *env)
fprintf(stderr, "run_process: slave = %s\n", slave);
#endif
if (mode & PM_TERM)
{
if (tcgetattr(fd_master, &termios_master))
goto __ABORT_ERRNO;
if (tcgetattr(fd_master, &termios_master))
goto __ABORT_ERRNO;
cfmakeraw(&termios_master);
//termios_master.c_lflag &= ~ECHO;
cfmakeraw(&termios_master);
//termios_master.c_lflag &= ~ECHO;
if (tcsetattr(fd_master, TCSANOW, &termios_master))
goto __ABORT_ERRNO;
}
if (tcsetattr(fd_master, TCSANOW, &termios_master))
goto __ABORT_ERRNO;
}
else
{
......@@ -724,13 +719,8 @@ static void run_process(CPROCESS *process, int mode, void *cmd, CARRAY *env)
bool pwd;
int ch_i, ch_n;
//bool stdin_isatty = isatty(STDIN_FILENO);
sigprocmask(SIG_SETMASK, &old, NULL);
if (mode & PM_SHELL)
setpgid(0, 0);
if (mode & PM_TERM)
{
close(fd_master);
......@@ -797,6 +787,9 @@ static void run_process(CPROCESS *process, int mode, void *cmd, CARRAY *env)
}
}
if (mode & PM_SHELL)
setpgid(0, 0);
pwd = FALSE;
if (env)
......