~onli/simdock/master

« back to all changes in this revision

Viewing changes to src/myFrame.cc

  • Committer: onli
  • Date: 2014-09-17 16:27:15 UTC
  • Revision ID: git-v1:fcd9cc0b95d05fc01903ee9ad71b3b8999399c99
minor: use getClickkedIcon more, update about dlg

Show diffs side-by-side

added added

removed removed

Lines of Context:
172
172
    appBackground = NULL;
173
173
    src_dc = NULL;
174
174
    backImage = NULL;
175
 
    /*
176
 
   * ------------ Initializing About menu ----------------- 
177
 
   */
178
 
    info = new wxAboutDialogInfo ();
179
 
    info->SetVersion (_T (SIMDOCK_VERSION));
180
 
    info->SetCopyright (_T
181
 
                  (" (C) 2007 Simone Della Longa <simonedll@yahoo.it>\n"
182
 
               "This program is free software; you can redistribute it and/or modify\n"
183
 
               "it under the terms of the GNU General Public License as published by\n"
184
 
               "the Free Software Foundation; either version 2 of the License, or\n"
185
 
               "any later version.\n"));
186
 
    info->AddDeveloper (_T ("Author: Simone Della Longa\n"
187
 
                          "Contributor: Marco Garzola\n"));
188
 
 
189
 
    info->SetName (_T ("SimDock"));
190
 
    info->SetWebSite (_T (SIMDOCK_WEBSITE));
191
 
    /*
192
 
    * ------------ Initializing About menu -----------------
193
 
    */
194
175
 
195
176
    blurTimer = new wxTimer (this, ID_blur_Timer);
196
177
    blurTimer->Start (settings.BLUR_TIMEOUT);
330
311
        Refresh (false);
331
312
    }
332
313
    
333
 
    for (unsigned int i = 0; i < ImagesList->GetCount (); i++)
334
 
        {
335
 
        simImage *img = (*ImagesList)[i];
336
 
        if (img->isIn (event.m_x, event.m_y))
337
 
        {
338
 
            if (hoveringIcon != img) {
339
 
                OnMouseEnterIcon(event, img);
340
 
                break;
341
 
            }
342
 
        }
 
314
    simImage *img = this->getClickedIcon(event);
 
315
    if (hoveringIcon != img) {
 
316
        OnMouseEnterIcon(event, img);
343
317
    }
344
318
 
345
319
    if (hoveringIcon != None) {
429
403
void
430
404
MyFrame::OnAbout (wxCommandEvent & WXUNUSED (event))
431
405
{
432
 
  wxGenericAboutBox (*info);
 
406
    info = new wxAboutDialogInfo ();
 
407
    info->SetVersion (_T (SIMDOCK_VERSION));
 
408
    info->SetCopyright (_T
 
409
                  (" (C) 2007 Simone Della Longa <simonedll@yahoo.it>\n"
 
410
                   " (C) 2011 Malte Paskuda <malte@paskuda.biz>\n"
 
411
               "This program is free software; you can redistribute it and/or modify\n"
 
412
               "it under the terms of the GNU General Public License as published by\n"
 
413
               "the Free Software Foundation; either version 2 of the License, or\n"
 
414
               "any later version.\n"));
 
415
    info->AddDeveloper (_T("Simone Della Longa (Original Developer)"));
 
416
    info->AddDeveloper (_T("Malte Paskuda (Developer)"));
 
417
    info->AddDeveloper (_T("Marco Garzola (Contributor)"));
 
418
 
 
419
    info->SetName (_T ("SimDock"));
 
420
    info->SetWebSite (_T (SIMDOCK_WEBSITE));
 
421
    wxGenericAboutBox (*info);
433
422
}
434
423
 
435
424
void
568
557
MyFrame::OnMouseEnter (wxMouseEvent & event)
569
558
{
570
559
#ifdef SIMDOCK_DEBUG
571
 
  cout << "OnmouseEnter" << endl;
 
560
    cout << "OnmouseEnter" << endl;
572
561
#endif
573
562
 
574
 
  // Raise ();
575
 
  /*
576
 
   * int style = this->GetWindowStyle(); style = style | wxSTAY_ON_TOP;
577
 
   * this->SetWindowStyle(style); 
578
 
   */
579
 
  // MakeModal(true);
580
 
  if (!wxGetApp ().onTop)
581
 
    {
582
 
      // SetWindowStyleFlag(frameOptions |wxSTAY_ON_TOP);
583
 
      Refresh (false);
 
563
    if (!wxGetApp ().onTop) {
 
564
        Refresh (false);
584
565
    }
585
566
}
586
567
 
654
635
    dragging = false;
655
636
    moving = false;
656
637
    Refresh (false);
657
 
    for (unsigned int i = 0; i < ImagesList->GetCount (); i++) {
658
 
        simImage *img = (*ImagesList)[i];
659
 
        if (img->isIn (event.m_x, event.m_y)) {
660
 
            if (img->windowCount() > 0) {
661
 
                if (settings.ENABLE_MINIMIZE && img->active) {
662
 
                    if (img->allNotMinimized()) {
663
 
                        img->cycleMinimize = true;
664
 
                    }
665
 
                    if (img->allMinimized()) {
666
 
                        img->cycleMinimize = false;
667
 
                    }
668
 
                    
669
 
                    if (img->cycleMinimize) {
670
 
                        tasks_minimize(img->getWindow());
671
 
                    } else {
672
 
                        tasks_raise(img->getWindow());
673
 
                    }
 
638
    simImage* img = this->getClickedIcon(event);
 
639
    if (img != None) {
 
640
        if (img->windowCount() > 0) {
 
641
            if (settings.ENABLE_MINIMIZE && img->active) {
 
642
                if (img->allNotMinimized()) {
 
643
                    img->cycleMinimize = true;
 
644
                }
 
645
                if (img->allMinimized()) {
 
646
                    img->cycleMinimize = false;
 
647
                }
 
648
                
 
649
                if (img->cycleMinimize) {
 
650
                    tasks_minimize(img->getWindow());
674
651
                } else {
675
652
                    tasks_raise(img->getWindow());
676
653
                }
677
 
                return;
678
 
            }
679
 
 
680
 
            /* process identifier */
681
 
            int pid;            
682
 
 
683
 
            pid = fork ();
684
 
            if (pid < 0) {
685
 
                wxDialog dlg (this, -1, wxT ("Damn, could not fork...."));
686
 
                dlg.ShowModal ();
687
 
            }
688
 
 
689
 
            if (pid == 0) {
690
 
                exit (system(wx2std(img->link).c_str()));
691
 
            }
692
 
            
693
 
            img->blurStatus = STATUS_INCREASING;
694
 
 
695
 
            if (! blurTimer->IsRunning()) {
696
 
                blurTimer->Start (settings.BLUR_TIMEOUT);
 
654
            } else {
 
655
                tasks_raise(img->getWindow());
697
656
            }
698
657
            return;
699
 
 
 
658
        }
 
659
 
 
660
        /* process identifier */
 
661
        int pid;                
 
662
 
 
663
        pid = fork ();
 
664
        if (pid < 0) {
 
665
            wxDialog dlg (this, -1, wxT ("Damn, could not fork...."));
 
666
            dlg.ShowModal ();
 
667
        }
 
668
 
 
669
        if (pid == 0) {
 
670
            exit (system(wx2std(img->link).c_str()));
 
671
        }
 
672
        
 
673
        img->blurStatus = STATUS_INCREASING;
 
674
 
 
675
        if (! blurTimer->IsRunning()) {
 
676
            blurTimer->Start (settings.BLUR_TIMEOUT);
700
677
        }
701
678
    }
702
679
}