Search Results

Search found 17567 results on 703 pages for 'muon package manager'.

Page 326/703 | < Previous Page | 322 323 324 325 326 327 328 329 330 331 332 333  | Next Page >

  • Oracle Developer Day: Provisioning und Patching mit Cloud Control

    - by A&C Redaktion
    Mit Oracle Enterprise Manager 12c Cloud Control und dem Lifecycle Management Pack können Sie Ihren Aufwand in den Bereichen Erstellung und Wartung von Oracle Datenbanken erheblich senken und so Ihre wertvolle Zeit wieder anderen Aufgaben widmen. Dieser Oracle Developer Day zeigt in einer halbtägigen Veranstaltung, wie Sie die Provisionierungs- und Patchinglösungen in Cloud Control für sich nutzen und so viel Zeit einsparen können. Dabei wird die Nutzung anhand von praktischen Beispielen erläutert. Themen dieser Veranstaltung sind: Grundlagen des Provisionings in Cloud Control Datenbank Provisioning Patching und Migration von Datenbanken Sicherheitsmodell rund um Deployment Prozeduren Provisionierung sonstiger Software Weitere Nutzungsmöglichkeiten von Deployment Prozeduren Veranstaltungszeit: 12:00 Uhr Networking Lunch13:00 Uhr Beginn der Präsentationen17:00 Uhr Ende der Veranstaltung Veranstaltungen: 08.10.2012  München10.10.2012  Frankfurt25.10.2012  Hamburg Die Teilnahme zu dieser Veranstaltung ist kostenlos und Oracle Partner sind herzlich eingeladen. Anmelden können Sie sich mit einem Klick auf den Veranstaltungsort.

    Read the article

  • Can I have a .desktop Launcher for both Python2 and Python3 depending on version installed?

    - by Takkat
    After very few issues only I moved my application from Python2 to Python3 making sure it will still run with Python 2.7, and hence has python = 2.7 as dependency only. This was mainly done because Python3, and some dependencies are not installed in a default 12.04 LTS, and I do not want my users to have to install all Python3 only to run my script. When I create an appname.desktop launcher I now need to decide if it starts my application using Python2, or Python3 like EXEC=python /path/app.py EXEC=python3 /path/app.py But what I would like it to do is to Launch the application with the Python3 interpreter if Python3 is installed. Otherwise use Python2 if Python3 is not installed. How can this be done? Do I need to tell it in my package installation script, or can I have a launcher which can handle both (in case people install Python3 after they had installed my script)?

    Read the article

  • Trying to implement fling events on an object

    - by Adam Short
    I have a game object, well a bitmap, which I'd like to "fling". I'm struggling to get it to fling ontouchlistener due to it being a bitmap and not sure how to proceed and I'm struggling to find the resources to help. Here's my code so far: https://github.com/addrum/Shapes GameActivity class: package com.main.shapes; import android.app.Activity; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.os.Bundle; import android.view.GestureDetector; import android.view.MotionEvent; import android.view.SurfaceHolder; import android.view.SurfaceView; import android.view.View.OnTouchListener; import android.view.Window; public class GameActivity extends Activity { private GestureDetector gestureDetector; View view; Bitmap ball; float x, y; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //Remove title bar this.requestWindowFeature(Window.FEATURE_NO_TITLE); view = new View(this); ball = BitmapFactory.decodeResource(getResources(), R.drawable.ball); gestureDetector = new GestureDetector(this, new GestureListener()); x = 0; y = 0; setContentView(view); ball.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(android.view.View v, MotionEvent event) { // TODO Auto-generated method stub return false; } }); } @Override protected void onPause() { super.onPause(); view.pause(); } @Override protected void onResume() { super.onResume(); view.resume(); } public class View extends SurfaceView implements Runnable { Thread thread = null; SurfaceHolder holder; boolean canRun = false; public View(Context context) { super(context); holder = getHolder(); } public void run() { while (canRun) { if (!holder.getSurface().isValid()) { continue; } Canvas c = holder.lockCanvas(); c.drawARGB(255, 255, 255, 255); c.drawBitmap(ball, x - (ball.getWidth() / 2), y - (ball.getHeight() / 2), null); holder.unlockCanvasAndPost(c); } } public void pause() { canRun = false; while (true) { try { thread.join(); } catch (InterruptedException e) { e.printStackTrace(); } break; } thread = null; } public void resume() { canRun = true; thread = new Thread(this); thread.start(); } } } GestureListener class: package com.main.shapes; import android.view.GestureDetector.SimpleOnGestureListener; import android.view.MotionEvent; public class GestureListener extends SimpleOnGestureListener { private static final int SWIPE_MIN_DISTANCE = 120; private static final int SWIPE_THRESHOLD_VELOCITY = 200; @Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { if (e1.getX() - e2.getX() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) { //From Right to Left return true; } else if (e2.getX() - e1.getX() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) { //From Left to Right return true; } if (e1.getY() - e2.getY() > SWIPE_MIN_DISTANCE && Math.abs(velocityY) > SWIPE_THRESHOLD_VELOCITY) { //From Bottom to Top return true; } else if (e2.getY() - e1.getY() > SWIPE_MIN_DISTANCE && Math.abs(velocityY) > SWIPE_THRESHOLD_VELOCITY) { //From Top to Bottom return true; } return false; } @Override public boolean onDown(MotionEvent e) { //always return true since all gestures always begin with onDown and<br> //if this returns false, the framework won't try to pick up onFling for example. return true; } }

    Read the article

  • Craftsmanship Tour Day 0: New York

    - by Liam McLennan
    Arriving at JFK, at dawn, is beautiful. From above 1,000ft I can see no crime, poverty or ugliness – just the dark orange sunrise-through-smog. The Atlantic appears calm, and I take that as a good sign. Today is the first day of my software craftsmanship tour. I will be visiting three of the shining lights of the software industry over five days, exchanging ideas and learning. Arriving on the red eye from Seattle I feel like hell. My lips, not used to the dry air, are cracked and bleeding. I get changed in the JFK restroom and make my way from the airport. Following Rik’s directions I take the airtrain to Jamaica. Rik is an engineering manager at Didit in Long Island, the first stop on my tour. From Jamaica I take the Long Island Rail Road train to Rockville Centre, home of Didit.

    Read the article

  • Buck Woody in Adelaide via LiveMeeting

    - by Rob Farley
    The URL for attendees is https://www.livemeeting.com/cc/usergroups/join?id=ADL1005&role=attend . This meeting is with Buck Woody . If you don’t know who he is, then you ought to find out! He’s a Program Manager at Microsoft on the SQL Server team, and anything else I try to say about him will not do him justice. So it’s great to have him present to the Adelaide SQL Server User Group this week. The talk is on the topic of Data-Tier Applications (new in SQL 2008 R2), and I’m sure it will be a great...(read more)

    Read the article

  • PIN request at each login after update to Maverick

    - by Giacomo Verticale
    I have a netbook with included 3G mobile broadband card (Huawei E620). I have configured the broadband network connection in the Network Manager and it works perfectly. However since Maverick upgrade, a window appears just after login I asking for the SIMcard PIN. This happens every time I log in and did not happen with Lucid. Note that the PIN is stored in the configuration of the mobile broadband connection and Lucid was satisfied with that. Is there a way to prevent this request or, at least, to have the system rember the PIN and stop ansking for it? If it may be useful, the broadband network connection is configured as not being available for other users. Also, I would like to keep the SIMcard asking for the PIN; only I do not want to insert it manually at login.

    Read the article

  • No bass from the speakers

    - by Bhavesh Jogadia
    In Ubuntu 11.10 no bass sound at all when try to play mp3 or 2channels audio. I have 5.1/6 channels speakers. When I test speakers from the sound preference it works perfectly fine and then I try to play any MP3 there is no bass only the speakers work, I play 5.1 movies it plays fine bass sounds good. Also tried to to some changes as instructed with deamon.conf file but no go... When I turn my speakers on play speakers only mode it plays the bass but sound quality is not good compared to normal playing. I have a Creative 5.1 vx ca0160 sound card. In Windows also had the same problem unless I do bass redirection crossover frequency so is there any kinda software package or any kinda changes i can make in system file so that my speaker bass works fine or any thing who can let me change the bass redirection crossover frequency?

    Read the article

  • Change font programmatically for GTK3 TextView (quickly-widgets TextEditor)

    - by monotasker
    In an app using PyGI and GTK3, I'm trying to let the user set the font family and size in a TextView through my app's settings dialog. In PyGI the TextView object has "set" methods for several properties, but not for font properties. I can set the font family via CSS using a CSS style provider. But I can't change that CSS dynamically to respect the font selected by a user. So how can I do this? (Note that the widget in question is actually the TextEditor from the quickly-widgets package and I'm using Quickly to build the app.) Thanks, Ian

    Read the article

  • How to configure permanent autologin?

    - by DanielGibbs
    I'm trying to set up an Ubuntu 12.04 machine as a kiosk and I would like it, on boot, to automatically log in as my kiosk user "kiosk", and start the appropriate display manager, in this case blackbox. I have configured /etc/lightdm/lightdm.conf as in this question and have an appropriate /usr/share/xsessions/blackbox.desktop to launch blackbox. I managed to get initial autologin by using the dbus-send method in this question, however if I right-click and select "Exit" from blackbox, then I am taken back to the login screen. How can I configure lightdm/ubuntu to always autologin as "kiosk" instead of displaying the login screen? Or, failing that, how can I configure blackbox to not display a menu when I right-click?

    Read the article

  • Configuring the SOA Human Task Hostname by Antonis Antoniou

    - by JuergenKress
    When a human task is opened in BPM Workspace, it will try by default to connect to either localhost or the server's alias. So if you try to access the BPM Workspace remotely (from a computer other than where Oracle SOA is running) you will get an http error (unable to connect). You can fix this issue at run-time using the Enterprise Manager (EM). Login to EM and from the farm navigator select your composite by expanding the "SOA", "soa-infra" and your partition node. Read the complete article here. SOA & BPM Partner Community For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center. Blog Twitter LinkedIn Facebook Wiki Technorati Tags: Human task,Antonis Antoniou,SOA Community,Oracle SOA,Oracle BPM,Community,OPN,Jürgen Kress

    Read the article

  • Cloud Control 12c: Verteilen von beliebiger Software mit Deployment Prozeduren

    - by Ralf Durben (DBA Community)
    Mit dem Lifecycle Management Pack von Oracle Enterprise Manager Cloud Control 12c können Sie Software aus der grafischen Konsole heraus auf Zielsysteme verteilen und installieren, also provisionieren. Dieses funktioniert für viele Oracle Produkte in einer vorgefertigen Form unter Verwendung von Deployment Prozeduren, die als eine Art Spezialformat für Provisionierungsskripte angesehen werden können. Dabei können die vorgefertigten Deployment Prozeduren direkt oder für die eigenen Bedürfnisse modifiziert verwendet werden. Sie können diese Technik jedoch auch für die Provisionierung beliebiger Software nutzen, indem Sie eigene Deployment Prozeduren erstellen. Als einfaches Beispiel einer solchen Provisionierung soll in diesem Tipp das Verteilen einer ZIP-Datei mit anschliessendem Auspacken betrachtet werden. Bewusst wird in diesem Tipp versucht, das Beispiel einfach zu halten, um einen leichten Einstieg zu ermöglichen. Dieser Tipp zeigt Ihnen, wie Sie eine ZIP-Datei mit einer selbstgeschriebenen Deployment Prozedur provisionieren können.

    Read the article

  • It is not quiet....

    - by Anthony Shorten
    You may of noticed that the blog entries have been not so frequent lately. I have been extremely busy with putting the final touches on the release of the next generation of our products. It is an exciting time for me to see the release of new functionality from start to finish for the first time becoming a Product Manager (good to see one's designs actually implemented). Once the next generation of the products have been released there will be a flood of entries outlining all the new and exciting features. Watch the skies....

    Read the article

  • Need Help Unable to Mount Location

    - by Don't ASk Ubun
    I am not able to start Windows and am using a DVD copy of Ubuntu to start up. I see my 750 GB Hard Disk, but if I click it i get this error: Error mounting: mount exited with exit code 13: ntfs_attr_pread_i: ntfs_pread failed: Input/output error Failed to read NTFS $Bitmap: Input/output error NTFS is either inconsistent, or there is a hardware fault, or it's a SoftRAID/FakeRAID hardware. In the first case run chkdsk /f on Windows then reboot into Windows twice. The usage of the /f parameter is very important! If the device is a SoftRAID/FakeRAID then first activate it and mount a different device under the /dev/mapper/ directory, (e.g. /dev/mapper/nvidia_eahaabcc1). Please see the 'dmraid' documentation for more details. After googling for a while I think I need to do sudo apt-get install ntfsprogs but when I try that: E: Package 'ntfsprogs' has no installation candidate My problem is a lot like this thread

    Read the article

  • SharePoint Office365 and Azure &ndash; an Overview of what you can use today

    - by Sahil Malik
    SharePoint 2010 Training: more information I will be speaking on cloud related topics – an overview at one of my favorite user groups, CMAPonline on January 24th. Here are the details, When – Tuesday, January 24, 2012      7:00 PMWhere - UMBC Building 21 About - "SharePoint Office365 and Azure – an Overview of what you can use today!"Everyone is talking about the cloud. Everyone is moving to the cloud. Microsoft's cloud offering is probably the most expansive of all. But how does it really compare with other offerings? What is the featureset of Google? Or Amazon? And in the jungle of Beta, what is currently proven and production ready in the Microsoft spectrum? Most of all, how do you move from your current setup to a cloud based setup? In this session, Sahil provides a manager and architect level overview demystifying all these topics and more. Read full article ....

    Read the article

  • Kinetic Scroll in Maverick

    - by Shoaib
    I have Sony VAIO FW 230J laptop. I was using Lucid and upgraded my system to Maverick beta in September 2010. Although there were few issues with beta release on my system although I did not felt myself in any deadlock. The most notable experience on my ubuntu was the smooth and kinetic scrolling and very sensitive touch pad experience with finer control that was oddly normal in previous releases and even on windows 7 currently. Definitely this release of ubuntu is improved for touch UI experience. I believe that this is magic of 10.10. For my official system I waited until the final release was out. After installing (upgrading) official system to Maverick I am not feeling the same smooth and kinetic scroll experience. My laptop has Graphics: Intel DMA-X4500MHD while my official desktop has Graphics: Intel DMA-X4500HD Do I need to install or update some software package to have similar kinetic scroll experience?

    Read the article

  • kubuntu wallpaper settings disappear

    - by Jess H. Brewer
    To render my system useable after upgrading to 11.10, I had to abandon gnome and install the KDE window manager. This is mostly fine, but the desktop wallpaper slideshow works for a few minutes and then gets reset to the default (fixed kubuntu splash background). I can start up the slideshow again by right-clicking on the background and re-entering all the Desktop Settings, but then it just disappears again after a while. What could be causing this? Oops!   What I failed to realize was that KDE apparently uses an independent wallpaper setting for each desktop. I have 12, so some were set to the slideshow but others were still set to the default. Being accustomed to one common wallpaper setting for all desktops, I misinterpreted this as a global reset. Sorry!

    Read the article

  • Firefox 4 : pas de 13ème beta, le problème lié à Hotmail est résolu

    Firefox 4 : pas de 13ème beta Le problème lié à Hotmail est résolu Mise à jour du 25/02/11 Contrairement à ce que l'équipe de développement de Firefox avait laissé entendre, il n'y aura pas de 13ème beta pour Firefox 4. Christian Legnitto (Release Manager de Firefox), vient de publier une précision importante : « La beta 12 de Firefox 4 est la dernière prévue. Le fait que les nightly builds (NDR : versions de développement les plus récentes compiléee chaque soir) après la 12ème beta soit nommées 2.0b13 peut être source de confusion. Mais le nom des versions est automatisé. Cela ne signifie PAS que nous sortirons une 13ème bêta ». ...

    Read the article

  • Is there an algorithm for a pool game?

    - by Dmitri
    Hello! I am looking for algorithm to calculate direction and speed of balls in a pool game. I am sure there has to be some type of open source code for this since pool games are some of the oldest computer games I can remember. I mean, when one ball hits another, I need a algorithm to calculate direction of both of them. It will depend of exact angle of where they hit each other and on speed. I want to practice Java coding, so I am looking for java code or package that has this type of code.

    Read the article

  • A rather long question about installation/uninstall

    - by user2364312
    Ok so here's the deal guys, last week I decided I want to install Ubunutu again because I really missed it. (Last time I had an ubunutu was 7.somehting) I downloaded 12.04 and isntalled it via bootable usb device. Knowing how dual boots works I cleared up some space on my hard disc before hand using the windows 7 built in disc manager. During Ubunutu's installation I thought that by choosing "Install Ubuntu alongside Windows 7" will automatically just use the space I cleared before, but apperentaly it did not since that partition is still 100% free space. On what partition is Ubunutu installed when using that method? And how can I uninstall it to re-install it back on the space I cleared up for it? Thank you very your time reading and helping!

    Read the article

  • Why can't I use Unity 3D on a ATI Mobility Radeon HD 4200 Series with FGLRX drivers?

    - by user88257
    With a brand new install of 12.04 on my Dell Inspiron M5030, Unity 3D appears to load everything but the icons in the top left, and I am unable to click on anything. Unity 2D seems to works fine however. I have done nothing except install Synaptic Package manager and follow this guide to install FGLRX Drivers under Settings ? Additional Drivers, the driver shows as installed and functioning. Also after running: /usr/lib/nux/unity_support_test -p, I get this: OpenGL vendor string: ATI Technologies Inc. OpenGL renderer string: ATI Mobility Radeon HD 4200 Series OpenGL version string: 3.3.11653 Compatibility Profile Context Not software rendered: yes Not blacklisted: yes GLX fbconfig: yes GLX texture from pixmap: yes GL npot or rect textures: yes GL vertex program: yes GL fragment program: yes GL vertex buffer object: yes GL framebuffer object: yes GL version is 1.4+: yes Unity 3D supported: yes I am unsure as to what the problem is. I have tried the non-proprietary drivers, I could not get them to work either, but I would be willing to try again.

    Read the article

  • Permanent redirect domain to www subdomain without web.config

    - by Lord Simpson
    I've just set up a site via 1and1 and have run into an issue, I want to accomplish the simple task of redirecting the root domain to the www sub domain however due to complications I cant seam to find a way to get it to work. I'm on a Microsoft (asp.net) package so can't use .htaccess, also the IIS server they have doesn't have the URL redirect module installed (so can't use <rewrite> in web.config). They have built in HTTP forwarding options however if I set the root domain to redirect to the www sub domain it just infinitely redirects. Hopefully there is some obvious option/method I've missed during the past two days of searching!

    Read the article

  • How to apply a changelog file to packages in a PPA when building from recipe?

    - by rafalcieslak
    When my package gets build by launchpad using a recipe, it ignores the ./debian/changelog file I provide, and it generates a useless one, like following: harmonyseq (0.14~natty1) maverick; urgency=low * Auto build. -- Rafal Cieslak <[email protected]> Tue, 25 Jan 2011 16:56:57 +0000 It would be much better if launchpad stored the list of changes I prepared in the changelog file, rather than just putting there "Auto build". How do I force launchpad to use the list of changes from my changelog file, when building packages from a recipe?

    Read the article

  • Upgrade from 11.10 to 12:04 failed

    - by Sandeep Adi
    I upgraded from Ubuntu 11.10 to 12.04 using the update manager. At the end of the upgrade the console said the upgrade had failed and it forced me to restart. After a restart I am not able to do anything other than logging in. I just see a blue screen with the ubuntu one icon, I can open applications, but nothing beyond that. I opened the terminal but after that the keyboard is not being recognized. Basically the laptop is now rendered useless. Any pointers on how to recover? This is on a Dell Inspiron 1501 laptop with a 64 bit AMD Sempron Processor. Any help would be appreciated. Thanks, Sandeep

    Read the article

  • To Bit or Not To Bit

    - by Johnm
    'Twas a long day of troubleshooting and firefighting and now, with most of the office vacant, you face a blank scripting window to create a new table in his database. Many questions circle your mind like dirty water gurgling down the bathtub drain: "How normalized should this table be?", "Should I use an identity column?", "NVarchar or Varchar?", "Should this column be NULLABLE?", "I wonder what apple blue cheese bacon cheesecake tastes like?" Well, there are times when the mind goes it's own direction. A Bit About Bit At some point during your table creation efforts you will encounter the decision of whether to use the bit data type for a column. The bit data type is an integer data type that recognizes only the values of 1, 0 and NULL as valid. This data type is often utilized to store yes/no or true/false values. An example of its use would be a column called [IsGasoline] which would be intended to contain the value of 1 if the row's subject (a car) had a gasoline engine and a 0 if the subject did not have a gasoline engine. The bit data type can even be found in some of the system tables of SQL Server. For example, the sysssispackages table in the msdb database which contains SQL Server Integration Services Package information for the packages stored in SQL Server. This table contains a column called [IsEncrypted]. A value of 1 indicates that the package has been encrypted while the value of 0 indicates that it is not. I have learned that the most effective way to disperse the crowd that surrounds the office coffee machine is to engage into SQL Server debates. The bit data type has been one of the most reoccurring, as well as the most enjoyable, of these topics. It contains a practical side and a philosophical side. Practical Consideration This data type certainly has its place and is a valuable option for database design; but it is often used in situations where the answer is really not a pure true/false response. In addition, true/false values are not very informative or scalable. Let's use the previously noted [IsGasoline] column for illustration. While on the surface it appears to be a rather simple question when evaluating a car: "Does the car have a gasoline engine?" If the person entering data is entering a row for a Jeep Liberty, the response would be a 1 since it has a gasoline engine. If the person is entering data is entering a row for a Chevrolet Volt, the response would be a 0 since it is an electric engine. What happens when a person is entering a row for the gasoline/electric hybrid Toyota Prius? Would one person's conclusion be consistent with another person's conclusion? The argument could be made that the current intent for the database is to be used only for pure gasoline and pure electric engines; but this is where the scalability issue comes into play. With the use of a bit data type a database modification and data conversion would be required if the business decided to take on hybrid engines. Whereas, alternatively, if the int data type were used as a foreign key to a reference table containing the engine type options, the change to include the hybrid option would only require an entry into the reference table. Philosophical Consideration Since the bit data type is often used for true/false or yes/no data (also called Boolean) it presents a philosophical conundrum of what to do about the allowance of the NULL value. The inclusion of NULL in a true/false or yes/no response simply violates the logical principle of bivalence which states that "every proposition is either true or false". If NULL is not true, then it must be false. The mathematical laws of Boolean logic support this concept by stating that the only valid values of this scenario are 1 and 0. There is another way to look at this conundrum: NULL is also considered to be the absence of a response. In other words, it is the equivalent to "undecided". Anyone who watches the news can tell you that polls always include an "undecided" option. This could be considered a valid option in the world of yes/no/dunno. Through out all of these considerations I have discovered one absolute certainty: When you have found a person, or group of persons, who are willing to entertain a philosophical debate of the bit data type, you have found some true friends.

    Read the article

  • For Programmers familiar with ACM API? Drawing Initials [closed]

    - by user71992
    Possible Duplicate: For Programmers familiar with ACM API? Drawing Initials I came across an exercise (in the book "The Art and Science of Java" by Eric Roberts) that requires using only GArc and GLine classes to create a lettering library which draws your initials on the canvas. This should be made independent of the GLabel class. I'd like to know the correct approach to use in solving this problem. I'm not sure what I have so far is good enough (I'm thinking it's too long). The questions requires that I use a good Top-Down approach. Here's my code so far: //Passes letters to GLetter objects and draws them on the canvas package artScienceJavaExercises.chapter8; import acm.program.*; //import acm.graphics.*; public class DrawInitials extends GraphicsProgram{ public void init(){ resize(400,400); } public void run(){ //String let = readLine("Letter?: "); letter = new GLetter("l"); add(letter, (getWidth()-letter.getWidth()*2)/2, (getHeight()-letter.getHeight())/2); add(new GLetter("o"), (letter.getX()+letter.getWidth()), letter.getY()); } private GLetter letter; } //GLetter Class package artScienceJavaExercises.chapter8; import acm.graphics.*; import java.awt.*; public class GLetter extends GCompound{ private static final int ONE_THIRD = 30; private static final int ROW_2_HEIGHT = 40; private GArc[] arc = new GArc[4]; private GLine[] line = new GLine[24]; public GLetter(String s){ line[0] = new GLine(0,0, ONE_THIRD, 0); line[1] = new GLine(ONE_THIRD,0, ONE_THIRD*2, 0); line[2] = new GLine(ONE_THIRD*2,0, ONE_THIRD*3, 0); line[3] = new GLine(0,0, 0,ONE_THIRD); line[4] = new GLine(ONE_THIRD,0, ONE_THIRD, ONE_THIRD); line[5] = new GLine(ONE_THIRD*2,0, ONE_THIRD*2, ONE_THIRD); line[6] = new GLine(ONE_THIRD*3,0, ONE_THIRD*3, ONE_THIRD); line[7] = new GLine(0,ONE_THIRD, ONE_THIRD*2, ONE_THIRD); line[8] = new GLine(ONE_THIRD,ONE_THIRD, ONE_THIRD*2, ONE_THIRD); line[9] = new GLine(ONE_THIRD*2,ONE_THIRD, ONE_THIRD*3, ONE_THIRD); line[10] = new GLine(0,ONE_THIRD, 0, ONE_THIRD+ROW_2_HEIGHT); line[11] = new GLine(ONE_THIRD, ONE_THIRD, ONE_THIRD, ONE_THIRD+ROW_2_HEIGHT); line[12] = new GLine(ONE_THIRD*2,ONE_THIRD, ONE_THIRD*2, ONE_THIRD+ROW_2_HEIGHT); line[13] = new GLine(ONE_THIRD*3,ONE_THIRD, ONE_THIRD*3, ONE_THIRD+ROW_2_HEIGHT); line[14] = new GLine(0, ONE_THIRD+ROW_2_HEIGHT, ONE_THIRD, ONE_THIRD+ROW_2_HEIGHT); line[15] = new GLine(ONE_THIRD, ONE_THIRD+ROW_2_HEIGHT, ONE_THIRD*2, ONE_THIRD+ROW_2_HEIGHT); line[16] = new GLine(ONE_THIRD*2, ONE_THIRD+ROW_2_HEIGHT, ONE_THIRD*3, ONE_THIRD+ROW_2_HEIGHT); line[17] = new GLine(0, ONE_THIRD+ROW_2_HEIGHT, 0, ONE_THIRD*2+ROW_2_HEIGHT); line[18] = new GLine(ONE_THIRD, ONE_THIRD+ROW_2_HEIGHT, ONE_THIRD, ONE_THIRD*2+ROW_2_HEIGHT); line[19] = new GLine(ONE_THIRD*2, ONE_THIRD+ROW_2_HEIGHT, ONE_THIRD*2, ONE_THIRD*2+ROW_2_HEIGHT); line[20] = new GLine(ONE_THIRD*3, ONE_THIRD+ROW_2_HEIGHT, ONE_THIRD*3, ONE_THIRD*2+ROW_2_HEIGHT); line[21] = new GLine(0,ONE_THIRD*2+ROW_2_HEIGHT, ONE_THIRD, ONE_THIRD*2+ROW_2_HEIGHT); line[22] = new GLine(ONE_THIRD, ONE_THIRD*2+ROW_2_HEIGHT, ONE_THIRD*2, ONE_THIRD*2+ROW_2_HEIGHT); line[23] = new GLine(ONE_THIRD*2,ONE_THIRD*2+ROW_2_HEIGHT, ONE_THIRD*3, ONE_THIRD*2+ROW_2_HEIGHT); for(int i = 0; i<line.length; i++){ add(line[i]); line[i].setColor(Color.BLACK); line[i].setVisible(false); } arc[0] = new GArc(getWidth(), getHeight(), 106.699, 49.341); arc[1] = new GArc(getWidth(), getHeight(), 23.96, 49.341); arc[2] = new GArc(getWidth(), getHeight(), -23.96, -49.341); arc[3] = new GArc(0,0,getWidth(), getHeight(), -106.699, -49.341); for(int i = 0; i<arc.length; i++){ add(arc[i],0,0); arc[i].setColor(Color.BLACK); arc[i].setVisible(false); } paintLetter(s); } private void paintLetter(String s){ if (s.equalsIgnoreCase("l")){ turnOn(line[3]); turnOn(line[10]); turnOn(line[17]); turnOn(line[21]); turnOn(line[22]); turnOn(line[23]); } else if(s.equalsIgnoreCase("o")){ for(int i = 0; i<4; ++i){ turnOn(arc[i]); } turnOn(line[1]); turnOn(line[10]); turnOn(line[13]); turnOn(line[22]); } } private void turnOn(GObject g){ g.setVisible(true); } } I created a class (GLetter.java) with arrays for GArc and GLine objects. They are positioned in certain ways thereby turning certain Glines and/or GArcs on or off (changing visiblity) would create a pattern for a letter. This Gletter uses the if/else statements to determine which pattern to create - this makes me feel my code is too long. There is another class (DrawInitials.java) that simulates a GraphicsProgram and allows the user to pass certain letters as arguments to the GLetter object. I've used 'L' and 'O' as examples. However, I posted this because I'm not sure I'm using the right approach. That's why I need your help. I feel MY CODE IS TOO LONG! The code above is not the complete project...it only draws letters 'L' and 'O' for now.

    Read the article

< Previous Page | 322 323 324 325 326 327 328 329 330 331 332 333  | Next Page >